LINUX.ORG.RU

Вышло обновление для Corman Lisp 3.02

 , ,


1

1

В этой версии починили запуск Corman Lisp на современных вeрсиях Windows. Доступны исходные коды (лицензия MIT) и свежий бинарный дистрибутив.

Corman Lisp — это одна из многих реализаций языка программирования Common Lisp. До недавнего времени Corman Lisp распространялся под коммерческой лицензией и в этом году был выпущен под свободной open-source лицензиией MIT. Особенностью Corman Lisp является тесная интеграция с Windows платформой (доступно все Win32 API), компилятор в нативный код, встроенный ассемблер и дизассемблер для 80x86, встроенная IDE.

Подробности: http://lispblog.xach.com/post/120466152968/corman-lisp-3-02-now-available

Скачать: https://github.com/sharplispers/cormanlisp/releases

Ответ на: комментарий от loz

На лиспе же вполне под винду пишут

И что? На C++ тоже пишут, но можно использовать g++ с Qt или Fltk, а можно msvs с winapi и MFC/.NET. Дело не в винде, а в подходе.

no-such-file ★★★★★
()
Ответ на: комментарий от Dark_SavanT

Lisp is so powerful that problems which are technical issues in other programming languages are social issues in Lisp.

Это настолько борщевый манямирок, что даже на HN его освистали. Автора же статьи нужно срочно отправить в парижскую палату мер и весов как эталонного лиспера: безработный вебдевелопер-фрилансер, автор 2(ДВУХ) сайтов-визиток, 4х заброщенных форков JS-проектов на гитхабе, без единой строчки лиспа в открытом доступе/продакшене. Зато писатель и философ, рассуждающий о тотальном превосходстве CL и Лисп-Хакеров над жалким плебеями, и что только это превосходство не дает CL развернуться.

nonimous
()
Ответ на: комментарий от no-such-file

В 99% случаев это означает только перекомпиляцию под нужный проц.

Езда с одного проприетарного железа на другое, т.е. шило на мыло.

Мне на это совершенно наплевать

Это, типа, компромисс? Как Столлман: боремся за опенсорс, но про железо пока ни слова.

и к теме дискуссии не относится.

Относится. Open-hardware на лоре такая же родная тема, как опенсорс.
Но её я затронул для утрирования твоей позиции относительно закрытого софта, вантуза конкретно.

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

Столлман

ЛОЛ, парниша, я не фанатик церкви Столлмана, мне как-то наплевать на Швабодку, так что ты зря тут пытаешься троллить. Я ведь тебе русским языком сказал что меня это не интересует, уймись, пожалуйста.

no-such-file ★★★★★
()
Ответ на: комментарий от nonimous

Зато писатель и философ, рассуждающий о тотальном превосходстве CL и Лисп-Хакеров над жалким плебеями, и что только это превосходство не дает CL развернуться.

Жалкие плебеи на общелиспе тоже плохо пишут. Ну то есть я лично видел, что на CL могут писать даже девочки, но это был, скорее, C++ или Java на s-expressions: плохой, тормозящий, сложно читаемый и трудно понимаемый говнокод.

mv ★★★★★
()
Ответ на: комментарий от no-such-file

Ну откуда я знаю, с чего? Просто наблюдение. Чтобы код на SBCL обогнал ракетку, надо обложиться кучей микрооптимизаций (что превращает код в жуткое нечитабельное говно) и хуякнуть debug 0 safety 0, чего в реальном коде никогда не встречается в принципе.

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

Ради справедливости замечу, что на _некоторых_ специфических задачах идеоматический CL идеоматическую ракетку все же обгоняет (много мутабельности, тормозные хеш-таблицы в стандартной либе, некоторые граничные случаи использования GC).

anonymous
()
Ответ на: комментарий от no-such-file

Лисперы так не рассуждают. Хотя ты и не лиспер, а всего лишь ноу сач фаел :-)

anonymous
()
Ответ на: комментарий от no-such-file

Бесплатный != свободный.

Лисперы предпочитают используют префиксную нотацию и /=, а не !=. :-)

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

Ага, я вот борщевик :-) Сейчас про цепепе покукарекаю и пойду борщик нахаляву хлебать :-)

anonymous
()
Ответ на: комментарий от no-such-file

И что? На C++

Не C++, а цепепе :-)

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

Идеоматический код на ракетке почти всегда быстрее, чем SBCL.

Неа, не быстрее. Это я тебе как маргинальный борщевик со стажем говорю. :-)

anonymous
()
Ответ на: комментарий от no-such-file

ЛОЛ, парниша

Сменил бы ты аватарку, не к лицу она тебе :-)

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

Ну то есть я лично видел, что на CL могут писать даже девочки, но это был, скорее, C++ или Java на s-expressions: плохой, тормозящий, сложно читаемый и трудно понимаемый говнокод.

Иная женщина поумней многих мужчин. Иная женщина может писать отличный код на Lisp. Не чета многим кукарекающим погроммистам. Доказательство: http://www.pvk.ca/images/2014-03-23-what-i-look-for-in-gsoc-proposals/regallo...

И смайлик вконце :-)

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

Да даже на лоре уже мерились, по-моему. SBCL сливает, без шансов при чем. На SBCL _можно_ написать. Но штука в том, что ИРЛ так на нем никто не пишет. А обычный код на ракетке шустрее оказывается.

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

На шутауте. Но там, во-первых, как раз та самая выдрочка микрооптимизаций с safety 0 debug 0, во-вторых, некоторые задачи решаются по-разному (например, если вариант binary-tree написать на ракетке как вариант на SBCL, то получается ничуть не медленнее, а если с ручным переключением сборщика, то можно вообще сделать вариант а-ля сишка по производительности работы с памятью).

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

На SBCL _можно_ написать

Можно написать быстрее.

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

та самая выдрочка микрооптимизаций с safety 0 debug 0

Если тётечка из заявы на GSoC сделает свою цветную аллокацию регистров, то реально микровыдроченный код будет в районе первых версий GCC-4.

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

Проблемка только в том, что микровыдроченный код на общелиспе никому не нужен.

Проблемка-то более широкого плана: основная часть кода, когда-либо написанного - event driven, а не числомолотилка.

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

Я лично предпочел бы Racket с его системой классов, но перофманс решает

Вообще-то racket/class намного шустрее, чем CLOS.

С другой стороны, никто не мешает написать аналог racket/class для CL поверх defstruct. Тогда будет быстро. Или тебе не синтаксис, а что-то ещё не нравится?

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

основная часть кода, когда-либо написанного - event driven, а не числомолотилка.

Кстати, да. И аналога Racket thread в CL нет и не предвидится (в лучшем случае потоки ОС).

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

И аналога Racket thread в CL нет и не предвидится (в лучшем случае потоки ОС).

Зелёные треды есть в CMUCL и были в LispWorks. Но это всё фигня.

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

Почему фигня?

Потому что в CL есть реальные потоки, потому и фигня. :-)

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

А обычный код на ракетке шустрее оказывается.

Сложи первые десять миллиардов чисел в Racket и в SBCL и увидишь где быстрее. :-) Либо запусти HTTP-сервер, входящий в Racket и запусти Hunchentoot и срави бенчмарки. :-) Сливает Racket, сливает.

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

Сейчас последует реклама 0mq, наверно...

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

до десяти миллиардов ждать долго. вот до 1ккк racket:

> (time (for/sum ([i (in-range 1000000001)]) i))
cpu time: 3183 real time: 3227 gc time: 0
500000000500000000
sbcl:
* (time (loop for i from 1 to 1000000000 sum i))

Evaluation took:
  3.363 seconds of real time
  3.369621 seconds of total run time (3.369621 user, 0.000000 system)
  100.21% CPU
  9,060,267,413 processor cycles
  0 bytes consed

500000000500000000

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

вот до 1ккк racket

А не пи врёшь ли ты, петушок?

Welcome to Racket v6.1.1.
> (time (for/sum ([i (in-range 1000000001)]) i))
cpu time: 3194 real time: 3228 gc time: 0
500000000500000000
This is SBCL 1.2.11, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses.  See the CREDITS and COPYING files in the
distribution for more information.
* (time (loop for i from 1 to 1000000000 sum i))

Evaluation took:
  2.212 seconds of real time
  2.203000 seconds of total run time (2.202000 user, 0.001000 system)
  99.59% CPU
  7,780,011,651 processor cycles
  0 bytes consed
  
500000000500000000

no-such-file ★★★★★
()
Ответ на: комментарий от anonymous

Не позорься впредь.

Ок, не буду. Думал это только в хаскеле, а в лиспе всякие eq и not только. Кстати, там написано «perform arithmetic comparisons», то есть оно работает только для чисел?

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

Ну чуть по-другому давай сравним:

(time (loop with i fixnum = 1 and s fixnum = 1 while (< i 1000000000) do (progn (incf i) (incf s i)) finally (return s)))

Evaluation took: 1.404 seconds of real time 1.404087 seconds of total run time (1.404087 user, 0.000000 system) 100.00% CPU 3,221,582,629 processor cycles 0 bytes consed 500000000500000000

:-)

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