Публикации по теме 'generic-programming'


Понимание программирования шаблонов на C++: часть 2
В этом руководстве мы применим наши знания о шаблонах из части 1 и создадим универсальный класс, который может принимать любой допустимый тип данных. Шаблон функции: Сначала мы увидим функцию сложения, которая принимает в качестве аргумента два числа. int add(int firstNum, int secondNum) { return firstNum + secondNum; } Теперь, если мы хотим, чтобы одна и та же функция принимала разные типы данных в качестве аргументов, нам потребуется реплицировать одно и то же определение..

Символическая регрессия и генетическое программирование
Символическая регрессия и генетическое программирование далеки от того, чтобы стать основными методами машинного обучения. Однако они определенно заслуживают пристального внимания. Этот пост служит мягким и неформальным введением. Мотивация Представьте, что кто-то попросил вас записать прямой проход одиночной выходной нейронной сети без использования матрицы или обозначения суммы. Хм? Чтобы упростить задачу, вы, вероятно, подумаете о самой ванильной нейронной сети: многослойном..

Последовательность_индекса RIP, 2014–2017 гг.
Это было хорошо, пока длилось ... std::tuple был одним из замечательных дополнений к C ++ 11. Хотя ленивые программисты иногда злоупотребляют им (которым действительно следует использовать структуру или класс), его истинная ценность - это контейнер произвольных значений в вариативных шаблонах. К сожалению, статическая типизация значительно усложняет работу с кортежами в C ++, чем в большинстве языков. Простая операция, такая как распечатка каждого члена, требует немного сумасшедшего..

Отчет об опыте использования Go: универсальные шаблоны для функциональных шаблонов
В середине 2017 года я выступал на GopherCon с докладом Функциональное программирование в Go . Я представил некоторые концепции функционального программирования (FP), которые Gophers могут сразу использовать для более быстрого написания кода или очистки своего кода. Примерно половина разговора была посвящена теории, другая половина была посвящена концепциям шаблонов, которые люди могли бы использовать. Примерно 1/4 из них были паттернами, которые, как я думал, действительно помогут,..

Лучший код: обобщения в машинописном тексте - Monkey Work, Baboon Chop
В моей стране используется фраза «Обезьянья работа, котлета из павиана», и я расскажу, что она означает в конце этой статьи. Между тем, прежде чем мы углубимся в Generic, давайте сделаем шаг назад, чтобы увидеть головную боль, которой мы избегаем, используя строго типизированный язык. Что такое строго и слабо типизированный язык? Согласно Википедии : Как правило, строго типизированный язык имеет более строгие правила типизации во время компиляции, что означает, что ошибки и исключения..

Знание дженериков — Типографика
Обязательно к прочтению: за знание возможностей Generics в создании повторно используемого программного обеспечения. Для создания приложения требуется много навыков и усилий, включая мозговой штурм идей, выбор правильного стека технологий, создание полного плана проекта, начало фазы регрессивной разработки и, наконец, развертывание. Инженер-программист играет решающую роль, размещая нужный блок в нужном месте, чтобы создать прочную основу для этого приложения. После определенного..

Универсальная функция в Python с Singledispatch
Представьте, что вы можете написать разные реализации функции с одним и тем же именем в одной и той же области, в зависимости от типов аргументов. Разве это не было бы здорово? Конечно, было бы. Для этого есть термин. Это называется Общая функция . Python недавно добавил поддержку общих функций в Python 3.4 ( PEP 443 ). Они сделали это с модулем functools , добавив @singledispatch декоратор. Что такое Singledispatch? На этом этапе вам может быть интересно, что такое..