Elite Games - Свобода среди звезд!
.
ВНИМАНИЕ!
Наша конференция посвящена космической тематике и компьютерным играм.
Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!

  » Common Lisp | страница 1
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 1 из 1
 
Поиск в этой теме:
Канал Игры Мечты: «Common Lisp»
Zachesa
 151 EGP


Рейтинг канала: 4(95)
Репутация: 13
Сообщения: 1415
Откуда: Хабаровск
Зарегистрирован: 12.11.2007
Есть такой язык программирования, который, несмотря на славную историю, незаслуженно обходят вниманием как в школе так и в институтах.

Читаем перевод хорошей книги по Лиспу. http://lisper.ru/pcl/

Ставим ЛиспКабинет. http://lispcabinet.sourceforge.net/ Советую устанавливать реализацию SBCL. Впрочем, может кому будет интересна Clojure на JVM. Установщик позволяет закачать и использовать сразу несколько реализаций.

В состав ЛиспКабинета входит Emacs и Slime, образующие удобную среду программирования для Лиспа, достаточно выучить несколько комбинаций клавиш и можно вполне комфортно работать.

Далее вместе изучаем Common Lisp.
_________________
Язык Образов, для ситуационного моделирования, программирования и как язык мысли, думающей машины.
    Добавлено: 11:37 22-05-2013   
Magistr_AVSH
 605 EGP


Модератор
Рейтинг канала: 2(16)
Репутация: 119
Сообщения: 2705
Откуда: Росс 154 - планета Мерлин.
Зарегистрирован: 26.12.2009
Zachesa :
Далее вместе изучаем Common Lisp.

Зачем? Подозрение.
_________________
Добрый и сытый кот.
    Добавлено: 15:31 22-05-2013   
Тир-Азан-Гил
 240 EGP


Репутация: 27
Сообщения: 1178 Заблокирован
Откуда: UMMM/UMMS
Зарегистрирован: 27.11.2005
Magistr_AVSH :
Зачем?

Just for Fun (C) Linus Torvalds
_________________
Good bye, everybody.
I've got to go...(C)
    Добавлено: 16:36 22-05-2013   
pommaniulo
 61 EGP


Репутация: -10
Сообщения: 40

Зарегистрирован: 12.07.2011
В универе так и не понял что это за Lisp и зачем это нужно.
Нет, оно понятно было конечно, что функциональный язык, но эти СКОБКИ!..

Книжку читал из любопытства, чтобы восполнить пробелы универа. Рекомендую.
Больше всего понравилось, как автор предлагает ставить скобки.
Я теперь в с++ так же их расставляю. Если бы в университете ктонить бы показал этот замечательный способ, скорее всего лисп бы я смотрел не так поверхностно (сдал лабу и забыл. При этом почти все писали в привычном процедурном стиле.)
    Добавлено: 09:31 24-05-2013   
Zachesa
 151 EGP


Рейтинг канала: 4(95)
Репутация: 13
Сообщения: 1415
Откуда: Хабаровск
Зарегистрирован: 12.11.2007
Лисп -- мультипарадигменный язык программирования, как C#, к примеру. Поэтому можно писать код как в функциональном так и императивном стиле. ООП также поддерживается.

Скобок и правду много, но в редакторе парные скобки подсвечиваются и не запутаешься. Главная особенность такого синтаксиса однообразие представления кода и данных, для метапрограммирования очень полезное свойство.
_________________
Язык Образов, для ситуационного моделирования, программирования и как язык мысли, думающей машины.
    Добавлено: 14:47 25-05-2013   
Варсик
 545 EGP


Рейтинг канала: 4(81)
Репутация: 117
Сообщения: 4039
Откуда: Москва
Зарегистрирован: 22.12.2002
Zachesa :
Главная особенность такого синтаксиса однообразие представления кода и данных
Он в любом unmanaged языке такой. На этом построен перехват АПИ, допустим.
_________________
WARNING: By reading this post you accept that this post is genius.
    Добавлено: 06:29 27-05-2013   
Аксолотль
 87 EGP


Рейтинг канала: 1(6)
Репутация: 21
Сообщения: 278
Откуда: Мир
Зарегистрирован: 11.08.2008
Здесь скорее имеется в виду более высокоуровневый смысл — код есть то же самое, что данные и подобно данным может быть сгенерирован или отредактирован программой, потому на лиспе легче писать программы, которые пишут программы, которые пишут программы, которые… (et cetera Хы... ). Достигается оно тем, что у лиспа, на самом деле, нет синтаксиса — фактически ты программируешь на чистых AST’ах (на самом деле, синтаксис собирались прикрутить ещё на начальных этапах, но когда таки собрались, все уже привыкли тому, что был).
Это даёт языку невиданную гибкость и расширяемость и очень удобно для написания всяких DSL’ей — тот же стандартный коммонлисповый LOOP с кучей параметров и красивым (спорно, да) алголоподобным синтаксисом реализован именно в виде лиспового макро:
Код:
;;; Проходимся по хеш таблице, собирая в список имена ключей, значения которых —
;;; нечётные числа
;;; (не представляю, для чего кому-то это может понадобиться, но~)
(loop for key being each hash-key of *table* using (hash-value val)
      when (and (numberp val) (oddp val)) collect key)

На макросах в лиспе реализованы также все остальные варианты лупов, обёртки для работы с внешними ресурсами (вроде файлов или сокетов), обработка исключений и даже ООП, довольно своеобразное, но красивое — создатели Go, видимо, довольно таки сильно смотрели в его сторону при проектировке своего языка.

По-моему Лисп — хороший язык для быстрого прототипирования, скриптинга и всяких бэкендов, но не столь гож для отдельных приложений и, в частности, игрушек — современные имплементации (кроме, разве что, ECL, компилирующего в Си, у которого хватает своих проблем) не способны создать стэнд-элоновый экзешник без пакования внутрь него ~девяностамегабайтного образа памяти со своим рантаймом и всеми прибинденными дээлэлками, да и из действительно рабочих и поддерживаемых игровых библиотек, которые можно всерьёз использовать есть разве что „cl-opengl“.

Ещё это хороший язык для того, чтоб начать программировать: когда начинаешь с языка, не слишком обременённого синтаксисом, приучиваешься больше обращать внимание на семантику, понимать то, как оно всё работает, что в будущем позволяет ускорить знакомство с другими языками. Я сам, пусть сейчас по большей части пишу на Си, начинал с Лиспа, и довольно таки не жалуюсь, ибо вполне могу при необходимости с той же эффективностью писать на D, OCaml’е или джаве.

Уже написав эту простыню, я посмотрел на дату последнего сообщения в теме. Вупс Хы... , надеюсь это не сочтут археологией
_________________
„Меня зовут Мэйлинь, я китаянка.“
    Добавлено: 02:15 16-06-2013   
Zachesa
 151 EGP


Рейтинг канала: 4(95)
Репутация: 13
Сообщения: 1415
Откуда: Хабаровск
Зарегистрирован: 12.11.2007
Аксолотль :
не столь гож для отдельных приложений и, в частности, игрушек — современные имплементации не способны создать стэнд-элоновый экзешник без пакования внутрь него ~девяностамегабайтного образа памяти со своим рантаймом и всеми прибинденными дээлэлками
вот есть платный вариант Bee Lisp вроде бы не страдающий этим.

добавлено спустя 18 минут:
Вообще-то меня Common Lisp заинтересовал в качестве языка для сервера. Можно веб приложения на нём делать и прочее помаленьку. http://rigidus.ru/articles/restas
_________________
Язык Образов, для ситуационного моделирования, программирования и как язык мысли, думающей машины.

Последний раз редактировалось: Zachesa (10:41 16-06-2013), всего редактировалось 1 раз
    Добавлено: 10:41 16-06-2013   
Aerton
 70 EGP


Рейтинг канала: 1(8)
Репутация: 4
Сообщения: 67
Откуда: Новосибирск
Зарегистрирован: 20.08.2004
Аксолотль :
Лисп — хороший язык для быстрого прототипирования, скриптинга и всяких бэкендов, но не столь гож для отдельных приложений и, в частности, игрушек
http://en.wikipedia.org/wiki/Game_Oriented_Assembly_Lisp но, к сожалению, это единственный такой пример.

Никакого "девяностамегабайтного образа памяти" на консоли с 32Mb ОЗУ быть не могло.
    Добавлено: 11:57 17-06-2013   
Sh.Tac.
 151 EGP


Рейтинг канала: 5(108)
Репутация: 14
Сообщения: 1426

Зарегистрирован: 27.07.2005
ИМХО если хочется экзотики, то лучче взять какой-нибудь современный язык, благо их расплодилось большое количество, мне вот случайно попалась книга по Go
_________________
This is what you get ...
(c) Radiohead
    Добавлено: 15:34 29-06-2013   
Канал Игры Мечты: «Common Lisp»
 
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Пил, пока соображал. Пока ехал - опять соображать начал. (Pastor Shlagge)

  » Common Lisp | страница 1
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18