В частности,
1. что такое memoization, почему так называется?
2. Почему Dynamic Programming, откуда такое название?
1: Memo pad, внесение заметок в memo pad -- memoization.
2: Ученый работал на вояк и не мог сказать, что занимается "исследованиями", поэтому придумал загадочный термин, чтобы генералы не доебались.
original posthttp://vasnake.blogspot.com/2016/07/dynamic-programming.html
На парковку пляжную, за шлагбаумом, пустили за 250 рублей. Деньги пошли вратарю на карман -- ни чека, ни карточки я не видел. Несмотря на это, подъехать поближе к воде не разрешили, даже на 5 минут для разгрузки/погрузки. Не положено.
Пришлось матчасть на горбу тащить метров 150.
Пляж хороший, но грязновато.
Прогноз был: юго-западный ветер 8-12 м/с. На самом деле было что-то вроде 5-10 м/с с редкими порывами до 12. Что хуже -- ветер на редкость рваный, порывы по нескольку секунд, тольком разогнаться не успеешь. Все руки себе оборвал.
Хреновая каталка получилась.
original posthttp://vasnake.blogspot.com/2016/07/1.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Идея очень
проста и отвечает на запрос: как нам
облегчить ad-hoc polymorphism в системах со
строгой типизацией? Нужно абстрагировать
некий алгоритм, повысить степень DRY.
Ну как, делаем
интерфейс, реализуем алгоритм в терминах
этого интерфейса. Реализацию интерфейса
подмешиваем в нужный класс – опля, этот
класс можно пихать в упомянутый алгоритм.
Проверка типов
в Scala делается через implicit переменные.
Повторюсь: как
же люди без дактайпинга мучаются. Зато
всё под контролем.
original posthttp://vasnake.blogspot.com/2016/07/scala-type-classes.html