Лингвофорум

Общий раздел => Наука и техника => Компьютеры => Тема начата: Алексей Гринь от мая 27, 2009, 04:10

Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 04:10
Сабж.
И какая из бесплатных систем самая развитая?
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 16:05
Субъективно. Мне схема ближе существенно большей регулярностью. Лисп в этом отношении слишком эклектичный, ближе к естественным языкам — такой же запутанный время от времени вносимыми новшествами, плохо (на мой взгляд) совместимыми с тем, что было раньше.

Реализации — у лиспа собственно CLisp и есть, у схемы я предпочитаю PLT Scheme. Она не совсем соответствует R5RS, но на мой взгляд даже лучше, причем поддерживать стандарт при желании тоже умеет. R6RS тоже вроде держит, но не пробовал.
Название: Common Lisp или Scheme?
Отправлено: Alone Coder от мая 27, 2009, 16:39
А для каких задач?
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 16:45
Для совершенно разных.
Название: Common Lisp или Scheme?
Отправлено: Alone Coder от мая 27, 2009, 17:01
А почему именно функциональные языки?
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 17:04
После того, как я сидел под Хаскелем, Схема и Лисп не выглядят функциональными вовсе 8) Императивщина ведь.
Название: Common Lisp или Scheme?
Отправлено: Gerbarius от мая 27, 2009, 17:27
На лиспе тоже можно писать функционально, как-никак никакой императивщины в лиспе изначально вообще не было. Это уже зависит от того, кто и как лисп использует. А вообще чисто функциональные языки существуют только в теории. Без ввода-вывода тяжело обходиться, знаете ли.
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 17:30
Установил DrScheme (интересные у них нейминг конвеншнс: устанавливал PLT Scheme, установился DrScheme :) ), изучаю.
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 17:32
PLT scheme состоит из трех частей: mzscheme (интерпретатор без графических возможностей, mred (интерпретатор с графическими возможностями) и drscheme (IDE для них).
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 17:51
Примеры не хотят запускаться.
Я, может, не тот язык выбрал?

Верхний фрейм (квадратные скобки выделены красным):
Цитировать(define deck
  (let loop ([n DECK-COUNT])

Нижний:
ЦитироватьWelcome to DrScheme, version 4.1.5 [3m].
Language: R5RS; memory limit: 128 megabytes.
. read: illegal use of open square bracket
Название: Common Lisp или Scheme?
Отправлено: Gerbarius от мая 27, 2009, 17:55
В схеме разве есть квадратные скобки?
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 17:58
Да чёрт его знает.
У документа расширение называется ничего не говоряще PLT Scheme Document.
И каким языком его открывать — без понятия.
По синтаксису — Схема :-\
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 18:02
О, режим Pretty Big уже не выдаёт ошибок.
Только всё равно не запускается :D

ЦитироватьInteractions disabled: setup/infotab does not support a REPL (no #%top-interaction)
это если запустить info.ss, ибо checkers.ss вообще не выдаёт ни привета, ни ответа.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:03
Цитата: Алексей Гринь от мая 27, 2009, 04:10
Сабж.
И какая из бесплатных систем самая развитая?
CL. Во-первых, неплохой стандарт; во-вторых, есть хорошие реализации и коммерческие и свободные.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:05
У Схемы компиляторы в машинный код есть?
Да, что у её реализаций с Уникодом?
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 18:07
Цитата: myst от мая 27, 2009, 18:03
-первых, неплохой стандарт; во
Там фигово с хвостовыми рекурсиями, я читал, а, стало быть, не дадут вволю функциональшиной побаловаться — тормоза и глюки.

Цитата: myst от мая 27, 2009, 18:05
У Схемы компиляторы в машинный код есть?
Chicken
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:11
Цитата: Алексей Гринь от мая 27, 2009, 18:07
Там фигово с хвостовыми рекурсиями, я читал, а, стало быть, не дадут вволю функциональшиной побаловаться — тормоза и глюки.
Просто в стандарте это требование не зафиксировано, а в хороших реализациях оптимизация есть.
Реализации Схемы тормознее.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:13
Цитата: Алексей Гринь от мая 27, 2009, 18:07
Chicken
Цитата: http://en.wikipedia.org/wiki/Chicken_(Scheme_implementation)
Chicken is a compiler and interpreter for the Scheme programming language that compiles Scheme code to standard C.
:smoke:
Я знаю, что C можно скомпилировать. :)
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:19
Вот тебе сравнение с SBCL:
(http://shootout.alioth.debian.org/gp4/chartvs.php?r=eNo9j8kRREEIQlPCXaIw%2F2yG%2FocpD13iE2kc%2FtUJYC6RM3UFJySaRblEjtnlNjlXk1mtLmxT5MJLZK4LQQX4yOEnRpTEplEkuHtlPa51hmkvub1xjSIkjhf9yv2z9omQp3mGQrCNQkqhcLE5q5wBtDxhNpq9tM86af3%2Fl5PvjufYN%2FrOkS1LK6tQ2rTxa%2B%2FSE%2FLlEycNP4U9QBw%3D&m=eNrLzUxRMDIwsFBILzBRyAMAHeID3g%3D%3D&w=eNpLzshMzk7N8y9OSs4BAB8bBMk%3D)
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:19
(http://shootout.alioth.debian.org/gp4/chartvs.php?r=eNodUNkRRDEIaklF0FRh%2F90sb8cPE5EjYUN41y%2B16cYhL%2F6lmHl1rSzQUNfWcRCca24Hrlc7HqaGe6xI4MN8OCWqrawArbw7pgulag%2B9n8fItQMj1liv5eAb3K3plc9d9Q0LmTwyav%2Fu40jMROtLlrnXjSdjS1sc4froUQhrtqneBJ6zCOLnwGljVI7DA36b6aF5J0d7JvDt%2BzQr5JUOhX8CGtjvlec%2FQIpGag%3D%3D&m=eNrLzUxRMDIwsFBILzBRyAMAHeID3g%3D%3D&w=eNrLrSpOzkjNTfUvTkrOAQAl9QVQ)
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:20
(http://shootout.alioth.debian.org/gp4/chartvs.php?r=eNo9j9mNRTEIQ1uCsNlV0H83Y670JvlACT422Nr%2FrYFNbxkCvkmOx9ajuXpuBDbR0ZIUnl41RHJznMUtSlHC6R8ur942HQFPfwKsiVDPa%2BpKxGftT3iIlMTD%2BAQYWiVHRp9njHoKGuXlkzKpKRQEjPFc%2BnCb6SsRM7%2B9qvpyIglNC8LlzJibyNvT5CXL9y1rtyUy%2BgI86g%2FLTEBz&m=eNrLzUxRMDIwsFBILzBRyAMAHeID3g%3D%3D&w=eNrLzE4sKi32L05KzgEAG0kEgw%3D%3D)
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 18:22
Цитата: myst от мая 27, 2009, 18:13
:smoke:
Я знаю, что C можно скомпилировать. :)
Я как-то его юзал, он мне компилировал сразу в натив. Была ли там интеграция с GCC, или он какбэ сам по себе уже стандалоне (с частями кода, очевидно, спёртыми у ГЦЦ) — я не помню.
Но там точно есть возможность транслировать и в Си, и в натив.
В любом случае ГЦЦу скармливал результат без жалоб.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:27
Мне у Схемы нравится обозначение предикатов знаком вопроса на конце.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:29
Цитата: Алексей Гринь от мая 27, 2009, 18:22
Я как-то его юзал, он мне компилировал сразу в натив.
Он на лету в машинный код компилирует? Можно отдельную функцию взять и скомпилировать?
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 18:32
Цитата: myst от мая 27, 2009, 18:29
Он на лету в машинный код компилирует? Можно отдельную функцию взять и скомпилировать?
Нет, это те не форт. Как ты себе это представляешь? Там вроде и интерактивной консольки нету :(
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:32
Компиляторы Схемы в С есть, а вот в машинный код, да штоб динамически...
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:34
Цитата: Алексей Гринь от мая 27, 2009, 18:32
Нет, это те не форт. Как ты себе это представляешь? Там вроде и интерактивной консольки нету :(
А у реализаций CL мона. И интерактивный режим есть, и отладчик, и профилёр, и все дела. :)
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 18:35
Цитата: myst от мая 27, 2009, 18:32
Компиляторы Схемы в С есть, а вот в машинный код, да штоб динамически...
Такое, по-моему, возможно только в стековых машинах.
На Коммон Лиспе есть чтоль такое?

Вобщем, я так и не смог ьзапустить ни примера :D Хорошая типа среда.

ЦитироватьА у реализаций CL мона. И интерактивный режим есть, и отладчик, и все дела. :)
Так я про один единственный Чикен говорю. При чм здесь бесчисленные реализации КЛ? У Схемы тоже полно реализаций, в которой есть и интерактивный режим, и отладчик, ПЛТ Схеме тот же, который у меня не хочет примеры кушать, правда.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:35
Попробуй http://trac.clozure.com/ccl . Я сам не пробовал, но на ЛОР'е отзывались очень положительно.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:38
Цитата: Алексей Гринь от мая 27, 2009, 18:35
У Схемы тоже полно реализаций, в которой есть и интерактивный режим, и отладчик, ПЛТ Схеме тот же, который у меня не хочет примеры кушать, правда.
Но с компилятором в машинный код я ещё не встречал. Я просто года 3 назад выбирал между реализациями Схемы и CL. В итоге остановился на CLISP'е. Для зубочисток самое то. :)
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:42
В общем, я тебе рекомендую сравнить возможности разных реализаций того и другого и выбрать наиболее подходящее. :)
Я слышал, у Схемы с переносимостью кода хуже дела. Но это было несколько лет назад.
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 18:44
Цитата: Алексей Гринь от мая 27, 2009, 17:51
(define deck
  (let loop ([n DECK-COUNT])
А что это за фрагмент? Он неработоспособен на любом языке. :) Хинт -- разное количество открывающих и закрывающих скобок.

Pretty Big должен работать, вроде — вообще я их IDE не пользуюсь, но смотреть смотрел, и у меня остался сохраненным именно этот вариант.
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 18:48
Что касается переносимости, то тут есть зерно истины. Но зависит, куда требуется переносимость. Одна и та же реализация обычно переносима между разными платформами, а PLT есть и под винды и под линух, и у меня работает даже на таблетке n810. Вот если требуется переносимость куда-нибудь, где нет PLT, тогда стоит более тщательно сформулировать цель.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:51
Цитата: oort от мая 27, 2009, 18:48
Что касается переносимости, то тут есть зерно истины. Но зависит, куда требуется переносимость.
Я неточно выразился. Я имел в виду переносимость кода между разными реализациями.
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 18:52
Цитата: oort от мая 27, 2009, 18:44
А что это за фрагмент? Он неработоспособен на любом языке. :) Хинт -- разное количество открывающих и закрывающих скобок.
Не, я кусок только привёл, там далее всё нормально закрывается.
В режиме Pretty Big стал «работать», т.е. ошибок перестал выдавать. Но ничего не происходит, если запускать интуитивно логичное checkers.ss :) А если запускать файл info (второй из двух файлов с расширением программ), то выдаёт ошибку, которую я привёл выше

ЦитироватьInteractions disabled: setup/infotab does not support a REPL (no #%top-interaction)

Но это он выдаёт в ИДЕ. Т.е. запускаю через ИДЕ. Может через что-то ещё надо? Непонятно.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 18:55
Цитата: Алексей Гринь от мая 27, 2009, 18:52
Но это он выдаёт в ИДЕ. Т.е. запускаю через ИДЕ.
Запусти в командной строке. А лучше забей на Схему и попробуй Clozure CL. Всё сам хочу попробовать, да трафика жаль. Драндулет, говорят, очень хороший. :)
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 19:03
Инфо -- это совсем не то. Чекерс попробовал запустить, но обломился — у меня не установлена GL.

Можно действительно запускать руками -- mred <file>. ИДЕ я совсем не знаю.
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 19:10
Цитата: oort от мая 27, 2009, 19:03
Можно действительно запускать руками -- mred <file>.
Под виндой муторно это всё так...
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 19:12
Цитата: Алексей Гринь от мая 27, 2009, 19:10
Под виндой муторно это всё так...
Use cygwin or coLinux, Luke! ;)
Второе кошернее.
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 19:19
Ну, свои программы вполне можно запускать и из ИДЕ, ибо о своих все известно. А примеры — к ним сначала надо доки почитать, чтобы понять, как именно их запускать.
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 19:28
Посмотрел — соседний с чекерсом блэкджек запускается так:
- загрузить
- кнопка run
- в диалоговом окне:
-- (require 'blackjack)
-- (invoke-unit game@)

Предполагаю, что чекерс запускается так же (с точностью до имени пакета).
Название: Common Lisp или Scheme?
Отправлено: addewyd от мая 27, 2009, 19:28
Цитата: Алексей Гринь от мая 27, 2009, 18:35
На Коммон Лиспе есть чтоль такое?
Цитата: myst от мая 27, 2009, 18:38
Но с компилятором в машинный код я ещё не встречал
CMU CL

Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 19:32
Цитата: addewyd от мая 27, 2009, 19:28
Цитата: Алексей Гринь от мая 27, 2009, 18:35
На Коммон Лиспе есть чтоль такое?
Цитата: myst от мая 27, 2009, 18:38
Но с компилятором в машинный код я ещё не встречал
CMU CL
Я про Схему говорил. У CL есть и не одна.
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 19:34
Как-то мне кажется, что для лиспообразных языков компиляция в машинный код нужна только для галочки, что, мол, мы крутые, у нас она есть. В реальности лисповская идеология с современными процессорами плохо совместима. А при наличии хардверной лисп-машины вопрос о реализации обычно не стоит. :)
Название: Common Lisp или Scheme?
Отправлено: addewyd от мая 27, 2009, 19:36
Всё ж коммон лисп более пригоден для серьёзных задач, чем схема.
Я так думаю. А цму круче всех.
Название: Common Lisp или Scheme?
Отправлено: addewyd от мая 27, 2009, 19:38
Цитата: oort от мая 27, 2009, 19:34
реальности лисповская идеология с современными процессорами плохо совместима
Современным компляторам пофиг идеология. Скомпилируют, оптимизируют...
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 19:40
Возможно. Я лишь высказал свое мнение. А цму зело академична. На ней учат думать, но для реальной работы все же желательны немного другие подходы. Мне лично желательны, по крайней мере.

Я нисколько не против цму. Но десятистрочный скрипт, выполняющийся путем загрузки дампа в интерпретатор, вызывает у меня когнитивный диссонанс.
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 19:42
Цитата: addewyd от мая 27, 2009, 19:38
Современным компляторам пофиг идеология. Скомпилируют, оптимизируют...
Скомпилировать-то скомпилируют. А вот смогут ли соптимизировать — вопрос. Ибо во многих случаях необходимые для оптимизации детали проявляются только на этапе выполнения.

В конце концов, у PLT тоже есть компилятор в исполнимый модуль. А что реально он содержит в себе тот же интерпретатор, интерпретирующий включенную в тот же экзешник программу, дело десятое.
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 19:45
Цитата: oort от мая 27, 2009, 19:42
А что реально он содержит в себе тот же интерпретатор, интерпретирующий включенную в тот же экзешник программу, дело десятое.
Обычно мне такой подход больше нравится, ибо легче дебуггить если ошибка вдруг произошла на уже скомпиленной работающий проге (лишь бы ещё трансляция в джит была!..)
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 19:50
Джит есть.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 20:14
Цитата: oort от мая 27, 2009, 19:34
Как-то мне кажется, что для лиспообразных языков компиляция в машинный код нужна только для галочки, что, мол, мы крутые, у нас она есть. В реальности лисповская идеология с современными процессорами плохо совместима.
Я бы так не сказал. Компилирующие реализации заметно быстрее байткодовых.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 20:17
Цитата: oort от мая 27, 2009, 19:50
Джит есть.
JIT — это хоросо.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 20:18
Цитата: Алексей Гринь от мая 27, 2009, 19:45
Обычно мне такой подход больше нравится, ибо легче дебуггить если ошибка вдруг произошла на уже скомпиленной работающий проге
Ну не знаю, разведением слонопотамов заниматься... :)
Название: Common Lisp или Scheme?
Отправлено: addewyd от мая 27, 2009, 20:19
А clisp всё-таки игрушка. Хорошая, да. И ещё хорошо, что с одни из разработчиков можно по-русски общаться)
Название: Common Lisp или Scheme?
Отправлено: addewyd от мая 27, 2009, 20:20
А вообще рекомендую хаскель. как раз для лингвистов)
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 20:24
Цитата: addewyd от мая 27, 2009, 20:19
А clisp всё-таки игрушка. Хорошая, да.
Для зубочисток — милое дело. А для взрослых вещей можно взять взрослую реализацию, благо они есть.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 20:25
Цитата: addewyd от мая 27, 2009, 20:20
А вообще рекомендую хаскель. как раз для лингвистов)
Для лингвистов есть специализированный софт. Зачем им травмировать мозг программированием?
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 20:26
Цитата: addewyd от мая 27, 2009, 20:20
А вообще рекомендую хаскель. как раз для лингвистов)
Название: Common Lisp или Scheme?
Отправлено: addewyd от мая 27, 2009, 21:08
Цитата: myst от мая 27, 2009, 20:25
Для лингвистов есть специализированный софт

Я имею ввиду язык как объект, не средство)

Цитата: oort от мая 27, 2009, 20:26
А что можно по хаскелю в инете найти (на русском или английском), чтобы понять, что это такое, и хочу ли я его?
Конечно. haskell.org
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 21:10
Цитата: oort от мая 27, 2009, 20:26
А что можно по хаскелю в инете найти (на русском или английском), чтобы понять, что это такое, и хочу ли я его?
Когда я последний раз интересовался, была спецификация для создателей трансляторов. Об неё-то я сломал мозг и надежду понять, что такое Haskell. :)
Название: Common Lisp или Scheme?
Отправлено: addewyd от мая 27, 2009, 21:17
Цитата: myst от мая 27, 2009, 21:10
неё-то я сломал мозг и надежду понять, что такое Haskell
Видимо, вы ненастоящий лингвист :)
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 27, 2009, 21:20
Цитироватьчтобы понять, что это такое, и хочу ли я его?

Хаскель нужен для трёх вещей, чтобы
1) иметь возможность сказать друзьям: "я крут, я пишу на хаскеле"
2) сдать преподу лабу
3) потренировать мозги всякими безделушными проектами типа хелловорлд через монады

Всё.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 21:21
Цитата: addewyd от мая 27, 2009, 21:17
Видимо, вы ненастоящий лингвист :)
Хуже. Я не. :)
Название: Common Lisp или Scheme?
Отправлено: addewyd от мая 27, 2009, 21:23
Цитата: Алексей Гринь от мая 27, 2009, 21:20
потренировать мозги
завсегда полезно.

Цитата: Алексей Гринь от мая 27, 2009, 21:20
безделушными проектами
Не скажите.  Так можно и всю математику перечерекнуть.
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 21:26
Язык программирования — это в первую очередь инструмент. Он должен быть полезен практически.
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 21:27
Хм. Формальные определения — это, конечно, очень хорошо, а более человекообразного описания нигде нет? Чтобы не учить язык в совершенстве (это, возможно, понадобится потом), а составить предварительное мнение о том, хочу ли я его учить. А то он далеко не один в очереди...
Цитата: Алексей Гринь от мая 27, 2009, 21:20
Цитироватьчтобы понять, что это такое, и хочу ли я его?
Хаскель нужен для трёх вещей, чтобы
1) иметь возможность сказать друзьям: "я крут, я пишу на хаскеле"
2) сдать преподу лабу
3) потренировать мозги всякими безделушными проектами типа хелловорлд через монады
Всё.
Такие мнения я тоже слышал. Вот потому и хочу составить собственное. Но, видимо, не настолько сильно хочу, чтобы читать низкоуровневое руководство. :)
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 21:30
Цитата: oort от мая 27, 2009, 21:27
Но, видимо, не настолько сильно хочу, чтобы читать низкоуровневое руководство. :)
То есть за последние 6—8 лет ничего не изменилось? :)
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 21:32
Цитата: myst от мая 27, 2009, 21:30
То есть за последние 6—8 лет ничего не изменилось?
Э... В где?
Название: Common Lisp или Scheme?
Отправлено: myst от мая 27, 2009, 21:34
Цитата: oort от мая 27, 2009, 21:32
Э... В где?
В документации на Haskell.
Название: Common Lisp или Scheme?
Отправлено: oort от мая 27, 2009, 21:51
Цитата: myst от мая 27, 2009, 21:34
В документации на Haskell.
На первый взгляд, видимо, если и изменилось, то немного.
Название: Common Lisp или Scheme?
Отправлено: Алексей Гринь от мая 29, 2009, 04:01
Радует, что PLT Scheme умеет создавать stand-alone distribution archives.
Только приходиться платить ценою в мегабайты.

Написал простенькую гуишку:
#lang scheme
(require scheme/gui/base)

(define action-frame%
  (class frame%
    (super-new (label "Actions Window") (width 300) (height 300))
   
    (define top-menu-bar
      (new menu-bar% (parent this)))
    (define actions-menu
      (new menu% (label "Actions") (parent top-menu-bar)))
    (define close-menu-item
      (new menu-item%
           (label "Close")
           (parent actions-menu)
           (callback (lambda (self e)
                       (send this show #f)))))))

(send (new action-frame%) show #t)


В итоге он мне родил zip-архив размером 3.66 мб, который по разархивации имеет размер все 9.21 мб :o

Интересные файлы он содержит:
window_test.exe
iconv.dll
libmred3m_6mqxfs.dll
libmzsch3m_6mqxfs.dll
UnicoWS.dll

Всё.

И вот мне что интересно — он тупо интерпретирует вшитый в эксешник байткод (если не целиком s-выражения) или там действительно идёт компиляция в натив? Могу ли я расчитывать на скорость?
Название: Common Lisp или Scheme?
Отправлено: myst от мая 29, 2009, 12:52
Цитата: Алексей Гринь от мая 29, 2009, 04:01
Только приходиться платить ценою в мегабайты.
Ну дык, я ж не зря намекал на слонопотамов. :)
Название: Common Lisp или Scheme?
Отправлено: myst от мая 29, 2009, 12:54
Цитата: Алексей Гринь от мая 29, 2009, 04:01
Могу ли я расчитывать на скорость?
Хочешь скорости — возьми взрослую реализацию CL. :smoke:
Название: Common Lisp или Scheme?
Отправлено: oort от мая 29, 2009, 15:47
Цитата: Алексей Гринь от мая 29, 2009, 04:01
И вот мне что интересно — он тупо интерпретирует вшитый в эксешник байткод (если не целиком s-выражения) или там действительно идёт компиляция в натив? Могу ли я расчитывать на скорость?
http://docs.plt-scheme.org/guide/performance.html