Functional Programming in Scala
Oct. 13th, 2023 02:30 pmЧитаю Functional Programming in Scala. Книга отличная. Ну это давно всем известно.
Возникает вопрос. Откуда у всей этой "красоты" ноги растут?
Например в главе "Purely functional state" главная идея: создание нового состояния из старого, вместо модификации старого. Идея хорошо понятна.
Но вот, как на основе этой идеи прийти к результатам последнего упражнения в этой главе?
"implement a finite state automaton that models a simple candy dispenser."
Я бы без посторонней помощи сам не додоумался. Да и что бы понять как это решено в книге мне пришлось хорошо поломать голову.
Возникает вопрос. Как до этого додумался автор книги? Возможно это применение каких то стандартных "шаблонов" из теории категорий или теории типов....
И как следствие главный вопрос. А где об этом можно почитать? Только статьи в различных журналах? Или есть хорошая книжечка, где "красота" разобрана подробно и с хорошими примерами?
Всем заранее большое спасибо за любую информацию.
Хорошего дня!
Возникает вопрос. Откуда у всей этой "красоты" ноги растут?
Например в главе "Purely functional state" главная идея: создание нового состояния из старого, вместо модификации старого. Идея хорошо понятна.
Но вот, как на основе этой идеи прийти к результатам последнего упражнения в этой главе?
"implement a finite state automaton that models a simple candy dispenser."
Я бы без посторонней помощи сам не додоумался. Да и что бы понять как это решено в книге мне пришлось хорошо поломать голову.
Возникает вопрос. Как до этого додумался автор книги? Возможно это применение каких то стандартных "шаблонов" из теории категорий или теории типов....
И как следствие главный вопрос. А где об этом можно почитать? Только статьи в различных журналах? Или есть хорошая книжечка, где "красота" разобрана подробно и с хорошими примерами?
Всем заранее большое спасибо за любую информацию.
Хорошего дня!
no subject
Date: 2023-10-13 02:50 pm (UTC)Обработка сигналов
Date: 2023-10-14 07:48 am (UTC)Вы как то писали, что функциональное программирование, может применятся для обработки сигналов. Подскажите пожалуйста где можно об этом почитать. Спасибо!
Re: Обработка сигналов
Date: 2023-10-14 09:02 am (UTC)А про теорию категорий для программистов
no subject
Date: 2023-10-13 03:04 pm (UTC)Да, поэтому там смешная ситуация бывает, что человек который отучился по вот этим стандартным задачкам думает что может всё, а в реальной жизни шаг влево-вправо сделать не может.
Пример, я недавно изучал CFD, на лекционных задачках всё прекрасно работает. Захожу на форумы, в том числе на SO, а там валом примеров, люди попытались какой-то из реальной жизни пример рассчитать, а фигвам, не сходится решение.
Частично оно решается методом грубой силы, что сетка рассчетная делается вдесятеро точнее и требуется конечно суперкомпьютер, а частично потом люди садятся и итеративно, через много промежуточных шагов, переходят от студенческой задачки к реальности.