LINUX.ORG.RU

Третий номер журнала «Практика функционального программирования»

 , ,


0

0

Вышел третий номер журнала «Практика функционального программирования». В новом номере опубликованы следующие статьи:

  1. Рекурсия + мемоизация = динамическое программирование. Дмитрий Астапов.
  2. Проектирование Erlang-клиента к memcached. Лев Валкин.
  3. Как построить Google Wave из Erlang и Tcl при помощи OCaml. Дмитрий Астапов, Алексей Щепин.
  4. Полиморфизм в языке Haskell. Роман Душкин.
  5. Элементы функциональных языков. Евгений Кирпичёв.

Кроме того, журнал организует конкурс на лучшие решения нескольких задач, с денежными (и не только) призами. Язык реализации — любой.

>>> Анонс нового номера журнала

★★★★★

Проверено: maxcom ()
Последнее исправление: maxcom (всего исправлений: 2)
Ответ на: комментарий от shty

Спасибо, ссылки сохраню, когда-нибудь посмотрю :)

yoghurt ★★★★★
()
Ответ на: комментарий от ott

о! спс за наводку... посмотрю в магазинах если есть, и для ебука версию не забуду :)

а автор у неё тоже Армстронг или уже другой кто?

shty ★★★★★
()
Ответ на: комментарий от yoghurt

Таки знайте.

Пример из педивикии

StdoutStream nextPutLine: 'Hello, world'

работать не будет.

------

Поэтому надо альтернативные викидедии юзать

http://absurdopedia.wikia.com/wiki/%D0%9B%D0%B8%D1%81%D0%BF

http://lurkmore.ru/LISP

----

1) слабая формализация связей между этапами цикла жизни,

2) внесение изменений в проект

3) повторное использование результатов разработок.

Вот почему функцианальщина сливает.

Пруфлинк: http://www.math.rsu.ru/smalltalk/article91.ru.html

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

> Вот почему функцианальщина сливает.

Пруфлинк: http://www.math.rsu.ru/smalltalk/article91.ru.html

Даже за троллинг не катит. Тогда «функциональным подходом» называли процедурное программирование. Ты хоть посмотрел, что ссылка на «функциональный подход» ведет на книгу Фокса (1982г)?

tailgunner ★★★★★
()
Ответ на: комментарий от shild

Пролог имеет самое прямое отношение к синтаксису эрланга

Кого имеет синтаксис?

Miguel ★★★★★
()
Ответ на: комментарий от shty

Вы же не станете отрицать что это не одно и то же? концептуально в смысле

Поскольку слово «объект» означает вообще всё, что угодно, я не могу ни отрицать, ни соглашаться.

Miguel ★★★★★
()
Ответ на: комментарий от tailgunner

Даже за троллинг не катит. Тогда «функциональным подходом» называли процедурное программирование. Ты хоть посмотрел, что ссылка на «функциональный подход» ведет на книгу Фокса (1982г)?

эммм... а Вы не задумывались над истоками слова «функциональный»? тогда смотрим сюда

shty ★★★★★
()
Ответ на: комментарий от shty

ну неужели совсем не видно идиоматического сходства?

Различий явно больше. Функция в Эрланге, бинарное отношение в Прологе.

Miguel ★★★★★
()
Ответ на: комментарий от yoghurt

Объект ведь может на получение сообщения вернуть что-нибудь. Как это «что-нибудь» поймать на ерланге в случае асинхронной обработки?

Достаточно стандартным трюком в Эрланге является передача другому процессу (в числе прочего) собственного PID, чтобы другой процесс мог ответить на сообщение.

Miguel ★★★★★
()
Ответ на: комментарий от tailgunner

> Тогда «функциональным подходом» называли процедурное программирование.

А как же «тогда» называли «функциональный подход»? XAML что ли?

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

>> Тогда «функциональным подходом» называли процедурное программирование.

А как же «тогда» называли «функциональный подход»?

А никак. ФП тогда еще из лабораторий не вышло. Сабжевая статья, кстати, относится скорее к методике программирования (каскадная модель vs итеративная), чем к технологии (ФП vs ООП vs ПП).

Статья Вадлера, кстати, тоже сильно устарела.

tailgunner ★★★★★
()
Ответ на: комментарий от shty

> а Вы не задумывались над истоками слова «функциональный»?

Давай и Си назовем «функциональным» - в нем процедур вообще нет, только функции.

тогда смотрим сюда

И видим такое милое: «Наиболее известными языками функционального программирования являются:[источник не указан 214 дней]».

Русская Википедия не является нормальным источником информации по CS и SE.

tailgunner ★★★★★
()
Ответ на: комментарий от yoghurt

Что Вы говорите? На Pharo для яМобилко нет такого класса - видать надо Erlang мне на телефон ставить.

Мы Вас тоже запишем в редакторы википедии.

Bioreactor ★★★★★
()
Ответ на: комментарий от Miguel

Поскольку слово «объект» означает вообще всё, что угодно, я не могу ни отрицать, ни соглашаться.

эммм, не скажите....

Объект — сущность в адресном пространстве вычислительной системы, появляющаяся при создании экземпляра класса (например, после запуска результатов компиляции (и линковки) исходного кода на выполнение).

Класс — это тип, описывающий устройство объектов. Понятие «класс» подразумевает некоторое поведение и способ представления. Понятие «объект» подразумевает нечто, что обладает определённым поведением и способом представления. Говорят, что объект — это экземпляр класса. Класс можно сравнить с чертежом, согласно которому создаются объекты. Обычно классы разрабатывают таким образом, чтобы их объекты соответствовали объектам предметной области.

Класс является описываемой на языке терминологии (пространства имён) исходного кода моделью ещё не существующей сущности, т.н. объекта.

ссылка

посему со всей очевидностью можно утверждать что объект отнюдь не «что угодно»

shty ★★★★★
()
Ответ на: комментарий от Bioreactor

> http://en.wikipedia.org/wiki/Lisp_programming_language

multi-paradigm: functional, procedural, reflective, meta

Таки да. Как и Симула67 (хотя вот Симулу английская вики относит именно к object-oriented :)).

Так что если считать начало ФП от Лиспа (а не от хотя бы Схемы), то начало ООП надо считать от Симулы (а не от Смолтока).

tailgunner ★★★★★
()
Ответ на: комментарий от shty

> ну какой же Вы тролль, порой... :)

Обычно не я это начниаю :)

[link]

Я знаю, что такое ФП :) И я сказал, что здесь: http://www.math.rsu.ru/smalltalk/article91.ru.html под ФП имеется в виду нечто совсем другое. В чем может убедиться любой, кто пройдет по ссылке.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Давай и Си назовем «функциональным» - в нем процедур вообще нет, только функции.

если бы Вы уважаемый вместо тролления задумались бы и прочитали таки статью то Вы бы поняли почему несете ахинею :)

так что пока вердикт такой: Вам либо не хватает фундаментальности образования для столь фундаментальных выводов либо Вы троллите банально... мне почему-то кажется что второе, но я не могу утверждать этого на 100% :)

shty ★★★★★
()
Ответ на: комментарий от tailgunner

Любите англоязычную википедию?

Smalltalk creators were influenced by the ideas introduced in Simula 67, but Smalltalk was designed to be a fully dynamic system in which classes could be created and modified dynamically rather than statically as in Simula 67.

(c)

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

> Любите англоязычную википедию?

Уважаю больше, чем русскую :)

Smalltalk creators were influenced by the ideas introduced in Simula 67, but Smalltalk was designed to be a fully dynamic system

И что? Ну, сделали динамическую систему. Вроде они не претендовали на первую _ООП_ систему.

tailgunner ★★★★★
()
Ответ на: комментарий от shty

> если бы Вы уважаемый вместо тролления задумались бы и прочитали таки статью то Вы бы поняли почему несете ахинею :)

Еслибы Вы, уважаемый, вместо лекции о происхождении ФП прочли статью, линк на которую привел Bioreactor, вам бы не пришлось читать лекцию :)

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>> Любите англоязычную википедию?

Уважаю больше, чем русскую :)

Расист? ;)

anonymous
()
Ответ на: комментарий от shty

Объект — сущность в адресном пространстве вычислительной системы, появляющаяся при создании экземпляра класса

Уже неверно, для, скажем, объектов JavaScript - там классов нет.

Miguel ★★★★★
()
Ответ на: комментарий от tailgunner

И я сказал, что здесь: http://www.math.rsu.ru/smalltalk/article91.ru.html под ФП имеется в виду нечто совсем другое.

ога, читаем:

ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ ПОДХОД К ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ

уже неплохо, нет правда, хорошее название для статьи в которой рассматривается что такое функциональное программирование :)))

авторы: А.Г.Иванов, А.А.Пятницкий, Ю.Е.Филинов

и это человек мне бухтел про русские ресурсы :))))

Есть два принципиально отличающихся подхода к технологии программирования: инженерно-конструкторский и математический. Первый основан на том, что изготовление программного продукта по заданным требованиям суть итеративный процесс последовательной реализации алгоритма решения задачи. Второй подход основан на математическом доказательстве правильности программы и автоматическом (или полуавтоматическом) получении готовой программы по заданным спецификациям.

В 1991 году может и нормально было, но сейчас, мягко говоря, кагбэ, устарело выглядит.

Смотрю, система разморозки у Вас дала сбой. Вывод: покупайте качественные криокамеры, если уж покупаете. ВАЖНО: криокамера - продукт не на один день, ей вы будете пользоваться продолжительное время. Не экономьте на качестве. :))))

Я знаю, что такое ФП :)

возможно, но всё время почему-то сбиваетесь на «потроллить», накуа? :)

shty ★★★★★
()
Ответ на: комментарий от tailgunner

В чем разница между 100% объектно-ориентированным и гибридным языками программирования?

В чем определение 100% ООП по Алану Кею? (6 пунктов)

Bioreactor ★★★★★
()
Ответ на: комментарий от shty

уже неплохо, нет правда, хорошее название для статьи в которой рассматривается что такое функциональное программирование :)))

Во второй фразе там: «по сравнению с традиционным функциональным подходом».

и это человек мне бухтел про русские ресурсы

Вы невменяемый по жизни или просто сегодня не выспались? tailgunner корректно разъяснил, что статья, приведённая Bioreactor'ом, откровенно не по теме. Вы считаете, что она по теме, или просто понаезжать хочется?

Miguel ★★★★★
()
Ответ на: комментарий от tailgunner

Вы молодец!

* Languages called «pure» OO languages, because everything in them is treated consistently as an object, from primitives such as characters and punctuation, all the way up to whole classes, prototypes, blocks, modules, etc. They were designed specifically to facilitate, even enforce, OO methods. Examples: Smalltalk, Eiffel, Ruby, JADE * Languages designed mainly for OO programming, but with some procedural elements. Examples: C++, Java, Python. * Languages that are historically procedural languages, but have been extended with some OO features. Examples: Fortran 2003, Perl, COBOL 2002, PHP, ABAP. * Languages with most of the features of objects (classes, methods, inheritance, reusability), but in a distinctly original form. Examples: Oberon (Oberon-1 or Oberon-2). * Languages with abstract data type support, but not all features of object-orientation, sometimes called object-based languages. Examples: Modula-2 (with excellent encapsulation and information hiding), Pliant, CLU.

Bioreactor ★★★★★
()
Ответ на: комментарий от shty

>> авторы: А.Г.Иванов, А.А.Пятницкий, Ю.Е.Филинов

и это человек мне бухтел про русские ресурсы :))))

Про материалы русской Википедии на темы CS и SE, а не про какие-то «русские ресурсы».

В 1991 году может и нормально было, но сейчас, мягко говоря, кагбэ, устарело выглядит.

Я сказал это десяток постов назад. Походу, ты это пропустил :D

Смотрю, система разморозки у Вас дала сбой

У _меня_? %) Это не я привел линк на эту статью. Я как раз обратил внимание на то, что ее терминология устарела настолько, что стала просто неверной.

возможно, но всё время почему-то сбиваетесь на «потроллить», накуа? :)

Потому что я тролль // К.О.

tailgunner ★★★★★
()
Ответ на: комментарий от Miguel

Вы-таки не троллите?

А как же

function MyClass (id) {
this.id = id;
this.name = 'Раз';
this.getInfo = getMyClassData;
}

function getMyClassData() {
return this.id + ' ' + this.name;
}

Точно не троллите???

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

> В чем разница между 100% объектно-ориентированным и гибридным языками программирования?

А причем тут это? Речь шла о временах зарождения ФП и ООП. Ты привел Лисп как первый язык ФП (при том, что он не был чисто функциональным). Я привел Симулу67 как первый язык ООП (при том, что он не чистый ООП-язык). Еще раз - в чем претензия?

В чем определение 100% ООП по Алану Кею? (6 пунктов)

Не знаю. Как это влияет на изложенное в предыдущем абзаце?

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

> В 1991 году может и нормально было, но сейчас, мягко говоря, кагбэ, устарело выглядит.

Я сказал это десяток постов назад. Походу, ты это пропустил :D

Смотрю, система разморозки у Вас дала сбой

У _меня_? %) Это не я привел линк на эту статью. Я как раз обратил внимание на то, что ее терминология устарела настолько, что стала просто неверной.

перечитал внимательно, приношу извинения, вклинился на своей волне :) таки работа отвлекает от лора :)

shty ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.