Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > LISP > [Common Lisp] Обсуждение Corman Lisp


Автор: Coder 14.9.2006, 08:08
Загрузил Corman Lisp 2.51 и мануал к нему. Почитал поразбирался. В принципе пока мало что понятно из самого синтаксиса и применения языка (особенно трудно после языков типа Паскаль, С). Мне интересны возможности этой среды.

Насколько хорош Корман Лисп? Можно ли компилировать программы, чтобы получать исполняемы файлы? На сколько я понял Корман может только транслировать программу.

P.S. Хочу еще добавить, что меня сразу поразило в Лиспе - это стандартная функция вычисления факориала... но как она вычисляется! чтобы сделать то же самое на Паскал или С++ нежно пыхтеть, а тут (factorial 500) выдает результат за очень короткое время  и притом какое большое число! без переполнений и всякой подобной ерунды. 
Отсюда вытекает вопрос это возможности именно Лиспа или Кормана Лиспа?

Автор: svg 14.9.2006, 14:25
Цитата(Coder @  14.9.2006,  08:08 Найти цитируемый пост)
Отсюда вытекает вопрос это возможности именно Лиспа или Кормана Лиспа?


По своему стандарту CL поддерживает целые числа произвольной длины.
factorial скорее всего реализован рекурсивно через умножение, поэтому
технические детали реализации можно посмотреть так:

(disassemble 'factorial)
(disassemble '*)

Автор: Coder 15.9.2006, 06:56
Понятно, а что с исполняемыми файлами? чтобы программу можно было крутить не только в оболочке кормана.

Автор: svg 15.9.2006, 14:35
Цитата(Coder @  15.9.2006,  06:56 Найти цитируемый пост)
Понятно, а что с исполняемыми файлами? чтобы программу можно было крутить не только в оболочке кормана. 


С Corman Lisp не работал, но традиционно в CL существует способ сделать исполняемый дамп ( core image) системы,
когда текущий образ системы сбрасывается в файл и потом может быть загружен.

Очень удобно например для CGI, так как дамп грузится в память практически мгновенно через mmap( 0.001-0.1 сек) и уже в готовом,
снаряженном состоянии для работы.

Функции формирования/загрузки дампа называются save-image/load-image.

Судя по форуму http://www.artofprogramming.com/bb/index.php,
на нем можно найти ответы по национальным особенностям Corman Lisp

Автор: Cr@$h 15.9.2006, 18:43
Хороший такой форум по одному только Корман Лисп, надо и наш продвигать. smile 

Автор: Coder 19.9.2006, 00:02
svg, спасибо за ссылку.


Cr@$h, безусловно продвигать нужно, но этого не сделать без заинтерисованных в изучении этого языка. А таких как я заметил не много.

Автор: Cr@$h 19.9.2006, 00:36
Цитата(Coder @  19.9.2006,  01:02 Найти цитируемый пост)
этого не сделать без заинтерисованных в изучении этого языка. А таких как я заметил не много.

Тогда таких нужно найти. smile А кто сказал, что будет легко. Тем не менее, русскоязычных форумов специально по Lisp не так много, поэтому возможно сконцентрировать аудиторию здесь. Можно начать задавать вопросы, писать новости, давать ссылки, в общем, вести активное обсуждение. Форум начнёт хорошо индексироваться в поисковиках, и пошло поехало. Народ начнёт приходить сюда сам. По Python, например, насчитал около 7 новичков, которых не видел прежде. Дело пошло, и многие это увидели.

Автор: Coder 19.9.2006, 01:29
Cr@$h, действительно идея хорошая. И думаю прежде чем начинать ее продвигать нужно создать Базу - это всевозможные ссылки (которые должны быть хорошо структурированы), небольшой общий FAQ, возможно даже написать небольшой справочник на русском и т.п. Просто ужасно когда на запросы типа "самоучители Common LISP" Яндекс не выдает ничего действительно нужного.

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

ИМХО нужна База. Если я с таким же интузиазмом продолжу изучать Лисп и найду ему применение, то буду рад помочь проекту. 


Автор: Cr@$h 19.9.2006, 01:42
Цитата(Coder @  19.9.2006,  02:29 Найти цитируемый пост)
думаю прежде чем начинать ее продвигать нужно создать Базу - это всевозможные ссылки (которые должны быть хорошо структурированы), небольшой общий FAQ, возможно даже написать небольшой справочник на русском и т.п. 

Для этого есть раздел Lisp Vingrad Wiki (Lisp Viki). Я уже давно работаю по переносу в Viki вообще ссылок на книги из форума Компьютерной литературы и ссылки ресурсы. Тут перспективы хорошие, надеюсь времени будет достаточно.

Добавлено @ 01:43 
До Lisp тоже дойду, естественно.

Автор: svg 19.9.2006, 12:40
Цитата(Cr@$h @  19.9.2006,  01:42 Найти цитируемый пост)
Для этого есть раздел Lisp Vingrad Wiki (Lisp Viki). Я уже давно работаю по переносу в Viki вообще ссылок на книги из форума Компьютерной литературы и ссылки ресурсы. Тут перспективы хорошие, надеюсь времени будет достаточно.


Имею книги, относящиеся к Lisp и утянутые через Mule, которые могу выложить куда-нибудь. Единственно у меня большие сомнения 
на счет прав относительно половины из них:

Sonja Keene    "Object-Oriented Programming in Common Lisp"
G.J Chaitin     "Algorithmic Information Theory"
G. Steele          "Common Lisp 2nd Edition"
D. J. Cooper  "Basic Lisp Techniques"
D. S. Touretzky "Common Lisp - A Gentle Introdaction to Symbolic Computation"
S. C. Shapiro   "Common Lisp - an Interactive Approach"
S. L. Tanimoto  "The Elements of Artificial Intelligence. An Introduction Using Lisp"

Автор: Cr@$h 19.9.2006, 12:54
Цитата(svg @  19.9.2006,  13:40 Найти цитируемый пост)
Единственно у меня большие сомнения на счет прав относительно половины из них:

Ну, книги выкладывать, не разрешённые к распространению, нельзя вообще-то. Но, насколько я знаю, не запрещено давать ссылки на материалы других серверов. За материалы, находящиеся на сервере, ответственность несёт только тот, кто берёт хостинг. http://forum.vingrad.ru/index.php?showtopic=111466 проблем размещения списков ссылок на книги в Viki.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)