Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2013.07.21;
Скачать: [xml.tar.bz2];

Вниз

LISPообразное нечто   Найти похожие ветки 

 
Kerk ©   (2013-03-02 17:51) [0]

Гляжу, модно стало :)
Попинайте чтоли статью http://roman.yankovsky.me/?p=467


 
Ega23 ©   (2013-03-02 18:11) [1]

А нужен ли отдельный IHasValue? Мне кажется более логичным функцию HasValue: Boolean в IExpression добавить.
Читаю дальше


 
RWolf ©   (2013-03-02 18:17) [2]

я всё ждал, когда же появится эта тема, неделя уже на исходе )
это же один-в один гроссмановский MUPL.


 
Ega23 ©   (2013-03-02 18:19) [3]

Удалено модератором


 
Ega23 ©   (2013-03-02 18:21) [4]


> может быть только один аргумент


Я имел ввиду, что это у тебя так семантика языка построена? Или просто тупо реализовал только один, как только с типом int?


 
Kerk ©   (2013-03-02 18:30) [5]

Да, один аргумент. Семантика такая. Много аргументов можно поддержать с помощью синтаксического сахара. В Standard ML так и делают, там тоже один аргумент. Про сахар может быть будет в следующей серии, если вдруг будет кому интересно.

По HasValue по-моему вопрос стиля, лично мне без разницы :)


 
RWolf ©   (2013-03-02 18:35) [6]

в дельфях ведь уже есть замыкания?
что, если перевести поближе к оригиналу — должно поизящнее получиться.

а вообще, MUPL"овский синтаксис такой потому, что программа на нём записывается прямо в лисповом коде. Если уж пишем DSL на дельфи, то проще было бы парсить собственно лисповый синтаксис, на выходе получаем интерпретатор некоего подмножества лиспа.


 
Kerk ©   (2013-03-02 18:36) [7]

А, ну еще замечу сразу, что это не попытка точно реализовать Лисп, это скорее вольная интерпретация. В настоящем Лиспе параметров можно делать много :)


 
Kerk ©   (2013-03-02 18:39) [8]

RWolf, не ставил перед собой такую задачу. В целом, разница между замыканиями и объектами в данном случае трудноуловима :) Обьекты Делфи как раз роднее.


 
Kerk ©   (2013-03-02 19:54) [9]

Лажанул слегка в поддержке рекурсии, поправил.


 
Ega23 ©   (2013-03-02 21:26) [10]

Ну и, собственно, главный вопрос: а нафига?
Если просто в целях саморазвития и ради интереса, то вопрос снят.


 
TUser ©   (2013-03-02 22:18) [11]

Я могу ошибаться, но по-моему, ФП - это такое направление в искусстве, а не способ писать программы. Это хорошо иллюстрируется нахождением факториала - ну кто в реальности будет его делать рекурсией? Красиво, но неэффективно.


 
Kerk ©   (2013-03-02 22:24) [12]


>  Ega23 ©   (02.03.13 21:26) [10]
>
> Ну и, собственно, главный вопрос: а нафига?

А просто так. Данный эксперимент для интереса и саморазвития, а вообще бывают задачи, когда нужен встроенный язык.

> TUser ©   (02.03.13 22:18) [11]

Я бы не делал акцент на ФП, ветка с холивором про ФП у нас уже есть :)

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


 
Игорь Шевченко ©   (2013-03-02 23:57) [13]

"Все это очень приятно, но практически бесполезно"


 
Игорь Шевченко ©   (2013-03-03 00:00) [14]

Интерпретатор TRAC не хочешь попробовать написать ? :)
http://en.wikipedia.org/wiki/TRAC_(programming_language)


 
Игорь Шевченко ©   (2013-03-03 00:01) [15]

туда же:
http://vak.ru/doku.php/proj/trac/trac


 
Ega23 ©   (2013-03-03 00:26) [16]


> А просто так. Данный эксперимент для интереса и саморазвития,

Тогда понятно.

>  а вообще бывают задачи, когда нужен встроенный язык.

Ну просто их уже такой вагон с тележкой, что нужность "ещё одного", да в коммерческом проекте, вызывает некоторое недоумение.
А вот ежели для души, то тут всё в порядке. :)


 
Ega23 ©   (2013-03-03 00:35) [17]


> Я могу ошибаться, но по-моему, ФП - это такое направление
> в искусстве, а не способ писать программы.

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


 
TUser ©   (2013-03-03 00:42) [18]


> Ну оттуда вылезли всякие полезные штуки, те же методы анонимные.

Это да.


 
Kerk ©   (2013-03-03 15:44) [19]


> Ega23 ©   (03.03.13 00:26) [16]

> Ну просто их уже такой вагон с тележкой, что нужность "ещё
> одного", да в коммерческом проекте, вызывает некоторое недоумение.

А, ну да. Я что-то забыл, что я на форуме про Delphi. Здесь принято компоненты искать :)


 
Ega23 ©   (2013-03-03 15:48) [20]


> Здесь принято компоненты искать

Да при чём тут компоненты? Ну назови хоть один коммерчески-успешный проект, написанный на LISP.
Пусть на лиспе - модно, а на Си - оптимально. Один фиг ПХП возьмут, потому что дёшево, сердито и быдлокодеров полно.


 
Kerk ©   (2013-03-03 15:54) [21]


> Ega23 ©   (03.03.13 15:48) [20]

А причем здесь LISP?

Весь код у меня на Delphi, а синтаксис и фичи в этом PseudoDSL можно сделать любыми. Там вся статья про реализацию и работу с синтаксическим деревом, а не про LISP. Я даже в конце показал два совершенно разных синтаксиса, которые в итоге представляют одно и то же дерево. С синтаксисом все вопросы к парсеру, которого на данном этапе тупо нет.


 
Ega23 ©   (2013-03-03 16:05) [22]


> Весь код у меня на Delphi, а синтаксис и фичи в этом PseudoDSL
> можно сделать любыми. Там вся статья про реализацию и работу
> с синтаксическим деревом, а не про LISP. Я даже в конце
> показал два совершенно разных синтаксиса, которые в итоге
> представляют одно и то же дерево. С синтаксисом все вопросы
> к парсеру, которого на данном этапе тупо нет.
>


Блин, да я не про твой код. Я про ФЯ вообще.


 
Inovet ©   (2013-03-03 16:05) [23]

> [20] Ega23 ©   (03.03.13 15:48)
> Ну назови хоть один коммерчески-успешный проект, написанный на LISP.

Не знаю как сейчас, а раньше в Автокаде был Лисп, не сам он на нём написан, а пользователь на Лиспе мог писать.


 
Kerk ©   (2013-03-03 16:08) [24]


> Ega23 ©   (03.03.13 16:05) [22]
> Блин, да я не про твой код. Я про ФЯ вообще.

А причем тут ФЯ вообще?


 
Inovet ©   (2013-03-03 16:08) [25]

> [23] Inovet ©   (03.03.13 16:05)
> Не знаю как сейчас

Ага, сейчас, говорят в Вики, - Вижуал Лисп
http://ru.wikipedia.org/wiki/AutoCAD#.D0.9C.D0.B0.D0.BA.D1.80.D0.BE.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B


 
Ega23 ©   (2013-03-03 16:11) [26]


> Не знаю как сейчас, а раньше в Автокаде был Лисп, не сам
> он на нём написан, а пользователь на Лиспе мог писать.

Это как раз тот случай Kerk-а, когда "вообще бывают задачи, когда нужен встроенный язык."



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2013.07.21;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.51 MB
Время: 0.004 c
3-1286827107
well
2010-10-11 23:58
2013.07.21
Как удалить(заменить) сообщение об удалении записи?


2-1353050219
Unknown1
2012-11-16 11:16
2013.07.21
сравнение 2-х TFileStream


15-1362294840
TUser
2013-03-03 11:14
2013.07.21
100% тест на русскость ))


15-1362232290
Kerk
2013-03-02 17:51
2013.07.21
LISPообразное нечто


2-1353566618
Iandy
2012-11-22 10:43
2013.07.21
Как быстро загрузить в Мемо большой файл





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский