2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Функциональное программирование
Сообщение18.05.2014, 18:22 
Заблокирован


18/03/14

44
Сейчас очень модная тема, чуть ли не серебряная пуля, да.
Давайте рассмотрим код
Код:
1 + 2

Допустим, хотим немножко подурачиться. Запишем по-другому:
Код:
(let x=1 (function() ( x + 2))) или  x + 2, where x=1

Круто? А то... А если градус идиотизма еще прибавить?
Код:
(let x=1 y=2 (function() (x + y))) или x + y, where x=1, y=2


Зачем это нужно, спросите Вы? Затем, что так достигается ссылочная прозрачность.
А зачем нужна чистота?
Предположим, есть функция,
Код:
(let x=getSomeValue() (function() ( x + 2))) или  x + 2, where x= getSomeValue()

Как конпелятор этого петушиного языка подставит в компилтайме значение x, если ф-ция содержит муттабельную переменную? Вот это и есть суть.

Только вот нормальному программисту достаточно написать
Код:
1 + 2
, или, в крайнем случае,
Код:
1 + getSomeValue()
. Сказать, что эта строка является "программированием" можно с натяжкой. Секретарша тоже может в калькуляторе напечатать
Код:
1 + 2
, это не значит, что она написала программу. А программу она напишет, толко если сделает ЭТО (не минет, нет, всего лишь вычисление) в фапэ-стиле, да.

UPD Ну да, забыл сказать, что если математика головного мозга, поциенту этот код перестает казаться странным. Это диагноз.

 Профиль  
                  
 
 Re: Функциональное программирование
Сообщение18.05.2014, 18:36 
Заслуженный участник


09/05/12
25179
Что Вы хотели всем этим сказать?

 Профиль  
                  
 
 Re: Функциональное программирование
Сообщение18.05.2014, 18:42 
Заблокирован


18/03/14

44
Pphantom в сообщении #864900 писал(а):
Что Вы хотели всем этим сказать?

Что программирование скатилось в [censored]. Нет бога кроме фапэ, и пророка его конпелятора.

 Профиль  
                  
 
 Re: Функциональное программирование
Сообщение18.05.2014, 18:48 
Заслуженный участник


02/08/11
7003
new_1 в сообщении #864902 писал(а):
Нет бога кроме фапэ, и пророка его конпелятора.
А как надо? На ассемблере писать? Или на C? Или JavaScript? PHP? ООП в виде C#? Что вы скажете насчёт C++ с активным использованием шаблонов? Или всё что угодно, кроме Haskell?

 Профиль  
                  
 
 Re: Функциональное программирование
Сообщение18.05.2014, 18:56 
Заблокирован


18/03/14

44
warlock66613 в сообщении #864908 писал(а):
Или JavaScript? PHP

Вот это еще ничего. Си тоже хреновый язык, но он простой, поэтому, ок. Все остальное, что Вы перечислили, от сабжа недалеко ушло.

 Профиль  
                  
 
 Re: Функциональное программирование
Сообщение18.05.2014, 18:59 
Заслуженный участник


02/08/11
7003
new_1 в сообщении #864914 писал(а):
Вот это еще ничего.
Ну что ж. Мне всё ясно.
Изображение

 Профиль  
                  
 
 Re: Функциональное программирование
Сообщение18.05.2014, 19:01 
Заблокирован


18/03/14

44
warlock66613 в сообщении #864916 писал(а):
всё ясно.

Я на тайптеори ложил большую кучу. А миллион хомяков ошибаться не могут, я в курсе. Поэтому мне тоже все ясно.

-- 18.05.2014, 20:10 --

warlock66613 в сообщении #864916 писал(а):
Ну что ж. Мне всё ясно.

Да, и кстати, Вы немного попутали тут, вместе с автором картинки. Динамическая типизация от статической, в этом смысле ничем не отличается. Ошибки просто вылезут в рантайме. Это вы слышали звон, как-говориться, тут-то как раз, теория типов, с точки зрения пользователя ЯП не причем.

 Профиль  
                  
 
 Re: Функциональное программирование
Сообщение18.05.2014, 19:26 
Заслуженный участник


09/05/12
25179
new_1 в сообщении #864902 писал(а):
Что программирование скатилось в [censored]. Нет бога кроме фапэ, и пророка его конпелятора.
По-видимому, в программировании Вы разбираетесь примерно так же, как и в русском языке, т.е. плохо.

 Профиль  
                  
 
 Re: Функциональное программирование
Сообщение18.05.2014, 19:55 
Заслуженный участник


02/08/11
7003
new_1 в сообщении #864919 писал(а):
Да, и кстати, Вы немного попутали тут, вместе с автором картинки.
Неважно. В джаваскрипте типизация не только динамическая, но и слабая. Как в пхп не знаю (не пишу для веб), но спрашивал знакомых веб-программистов - сказали если есть возможность писать не на PHP, а на чём-нибудь другом, то лучше писать на чём-нибудь другом.

 Профиль  
                  
 
 Re: Функциональное программирование
Сообщение18.05.2014, 21:42 
Админ форума
Аватара пользователя


19/03/10
8952
new_1 в сообщении #864893 писал(а):
не минет, нет, всего лишь вычисление
new_1 в сообщении #864893 писал(а):
если математика головного мозга, поциенту этот код перестает казаться странным
new_1 в сообщении #864919 писал(а):
Я на тайптеори ложил большую кучу.
 !  new_1, Вы ошиблись форумом. У нас подобный стиль дискуссии недопустим. Принимая во внимание многочисленные предыдущие нарушения - две недели отдыха.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group