LINUX.ORG.RU
Ответ на: комментарий от vertexua

Feel free назвать не скриптовую переносимую без костылей реализацию.
Только не надо про кросскомпиляцию. Если это не вынужденная мера,
это костыль.
Останется jvm. Но вот досада... Она не заворачивается один exe.

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

Всегда остается jvm

а для JVM всегда есть Jacl и Tcl Blend

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

Можно сказать что и руби/перл/питон и библиотеки и компиляторы
поставить не проблема. Только это нарушет оговоренное условие -
один екзэшник. Не говоря уже о том, бывают сервера без доступа
в интернет, ге политика безопасности не разрешает ставить все
подряд и т.д.. И это не упоминая того что разные приложения в
копоративном сектооре любят разную джаву. Расскажешь клиенту,
как прописать джаву поновее, чтобы другой приклад не отвалился?
Или просто весь код перелопатишь чтобы шел на jre1.4?

Все что я упоминаю не прихоть. А «опыт,сын ошибок трудныx» (с).

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

> Как какое-то тормозное скриптовое говнецо, отличающееся разве что кучей «батареек из коробки» можно вообще сравнивать с мощнейшим метаязыком с мозгодробительной объектной системой

Мимо тазика. Случается у фанбоев :)

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

> Все случаи писания на липе/тсл в 2010 году, это либо поддержка .овна мамонта, либо слишком добрый менеджер, который мало бьет кнутом рабов-программеров.

В опенсурсе, когда менеджера нет, программер волен(!) выбирать наиболее подходящий инструмент. В этих случаях выбор нередко падает на CL или tcl.

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

> В опенсурсе, когда менеджера нет, программер волен(!) выбирать наиболее подходящий инструмент. В этих случаях выбор нередко падает на CL или tcl.

O_O_O_O

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

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

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

O_O_O_O

Этот насекомый называл меня наркоманом...

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

> Всегда остается jvm

Когда требуется приложение на пять кнопок для управления неким комплексом, реализованном в виде С-библиотек, то JVM - это как то... ну совсем не то.

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

> Структура кода(имеется ввиду после фазы считывания, хотя и к тому что до нее тоже относится в полной мере) - не просто атомы и списки. А именно объекты.

по списку, с целью его дальнейшей обработки, можно нагенерить дофига различных структур, и это не сделает *его* объектом

или ты хочешь сказать, что в CL каждая консовая ячейка может нести в себе указатель на таблицу вирт. функций (кстати, как в лиспе пишется аналог сокращения «vtbl»?), и по этому указателю можно как дергать обычные функций консовой ячейки, так и (виртуальные) функции, для выбора которых поток управления НЕ БУДЕТ смотреть на поле car, а просто выберет нужную из vtbl (а в vtbl она занесена на основе поля car конечно)

если так, то тогда я соглашусть, что ячейки — объекты

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

поправка

- (а в vtbl она занесена на основе поля car конечно)
+ (а в vtbl она занесена, допустим, на основе поля car)

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

или ты хочешь сказать, что в CL каждая консовая ячейка может нести в себе указатель на таблицу вирт. функций (кстати, как в лиспе пишется аналог сокращения «vtbl»?), и по этому указателю можно как дергать обычные функций консовой ячейки, так и (виртуальные) функции, для выбора которых поток управления НЕ БУДЕТ смотреть на поле car, а просто выберет нужную из vtbl (а в vtbl она занесена на основе поля car конечно)

Есличе, в CL у объектов нет методов.

Но я вот что больше имел ввиду:

(defun compile-and-eval-lambda-form (form)
  (funcall (compile nil form)))

;;Точно так же, как мы можем сделать так:
(compile-and-eval-lambda-form
  '(lambda () (concatenate 'string "abc" "cab")))

;;мы можем сделать и так:
(defvar *function* #'concatenate)
(defvar *result-type-name* 'string)
(defvar *object1* "abc")
(defvar *object2* "cab")
(compile-and-eval-lambda-form
  `(lambda () (funcall ,*function* ',*result-type-name* ,*object1* ,*object2*)))

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

Перл - почти любое гуи - это установка сторонних библиотек или модулей, которые зачастую требуют компиляции. Клиент от слова компиляция начинает истерически хихикать. А невменяемый человек не может опачивать проект. Он может только услаждаться галоперидольчиком.

Питон - один в один перл

Учи матчасть. Питон здесь в том же положении, что и Тикль.

http://logix4u.net/Python/Tutorials/How_to_create_Windows_executable_exe_from...

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



Не, выпутаете примочку с технологией.
Для Tcl можно упаковать в метакит ядро языка с необходимым числом батареек-плюшек.
Изолировать запускаемое приложение и упаковать его в метакит запускаемый метакитом tcl.
Приложение и ядро языка с плюшками (или без) укатать в один исполняемый метакит.
Причем допускется запись данных приложением в подмонтированную VFS
метакита или его базу данных.
Справедливости ради , следует отметить, что автор метакит и для пистония как-то делал реализации.

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

> И остается тикль, который делает ГУИ, своим родным Tk а не сторонними притянутыми за уши GTK, Fox и т.д. И легко обьединяет все необходимые
модули в один exe.

У меня вот не получилось объединить модули в один exe. Руки кривоваты. Попробуйте Scheme. Те же преимущества, только бинарник собирается одной командой и работает даже с моими кривыми руками.

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

>Lisp - эээ, нууу... Попробуйте с нуля взгромоздить любой ГУИ тулкит на винду. Есди выйдет с первой попытки, и без того что вы до этого потратили на такую же задачу месяц. Ну что ж - вы гуру.

Gtk+ спокойно встает на винду. И спокойной встает методом простого копирования. И Gtk+ спокойно доступен из лиспа, питона, рубина и др. Не вижу тут проблемы.

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

Про py2exe perl2exe я слышал. Есть несколько ньюансов.
1. Почему то мне для исталляции модулей слишком часто требовался
копмайлер.
2. Нифига не просто поставить моули по крайней мере перла без инета.
3. Не ведаю насколько просто из под linux сделать exe для win32.

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

Ничего личного, но у меня не вышло их сходу поставить для clozure.
По крайней мере через asdf. Хотело много чего интересного в системе.
Тары хотел еще кучу всего.

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

Я вообще буду счастлив, если найду способ добавить батарейки
эквивалентые тиклю в лисп. Но у меня не выходит.
Если подскажете буду рад. Хочется:
1. Отлизанный набор пакетов. Причем уже скомпилированных,
под windows, linux, solaris.
2. Возможность устанавливать это все как с интернетом так и без.
3. Устанавливать пакеты без наличия гну окружения.
4. Иметь возможность запаковать резултьтат в экзе, только с
необходимыми зависимостями.

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

Не хрена оно не продвинутое, а всё более и более обрастает жирком, а количество человек, которые что-то там трясут - раз два и обчёлся.

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

> а этот модуль под 2.4 и на 2.5 не заведусть

Можешь назвать хоть один модуль, который работает с 2.4 и не работает с 2.5? А то очень похоже на дезинформацию.

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

1. Отлизанный набор пакетов. Причем уже скомпилированных, под windows, linux, solaris.

Отлизывать нада :) А распостранять бинарниками - это от не знания. Когда вы собираете софт на целевой машине вы получаете и профит, и гибкость. А уж для CL это вообще единственный вариант.

Windows - пилить нада))

2. Возможность устанавливать это все как с интернетом так и без.

asdf-install, clbuild, gentoo-lisp-overlay, самодельные тарболы? Что ещё нужно.

3. Устанавливать пакеты без наличия гну окружения.

)_( Это как? На Linux/*BSD будет libc и всё будет хорошо. Ну а Windows... Как бы ничего не будет просто так - либо кто-то возьмёт на себя труд настроить интерфейс к cygwin библиотекам для POSIX совместимости, либо к родным dll, либо к .NET. Сейчас на Winde некоторые вещи работоспособны, но далеко не все.

4. Иметь возможность запаковать резултьтат в экзе, только с необходимыми зависимостями.

Money -> LispWorks or SBCL <- пилить.

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

>4. Иметь возможность запаковать резултьтат в экзе, только с необходимыми зависимостями.

Gtk+ «в экзе» не запакуешь. Нужно таскать с собой весь его каталог (но для запуска программ с gtk+ ничего нигде прописывать не надо, главное чтобы он был рядом). То же самое с другими внешними библиотеками. В «один экзе» можно собрать только лисповые библиотеки, и это является довольно стандартной функцией (ccl:save-application, sb-ext:save-lisp-and-die).

Причем уже скомпилированных, под windows, linux, solaris.

Скомпилированные пакеты для лиспа - это оксюморон.

Самый простой способ установить «батарейки» для лиспа - это тарболл вроде http://libcl.com/

Ничего личного, но у меня не вышло их сходу поставить для clozure.

По крайней мере через asdf. Хотело много чего интересного в системе. Тары хотел еще кучу всего.

Будет время - выложу инструкцию в lisp-lor-faq

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

1. Я не против гибкости. Я против ее навязывания. Иногда мне нужна не
гибкость бинарника. И я хочу такую возможность получить. А пилить -
это основная проблема лиспа. Недопилено все.

2. Нужно один простой и рабочий способ. asdf на винде - костыльно.
clbuild не пробовал. gentoo на винде не заведется.

3. Ну а вот в тикле все это сделано. И пакеты из инета как правило уже
по человечески собраны.

4. Ну пот опать пилить или деньги. А тикль ни денег ни пилить.

Это именно то о чем я говорю. Если бы у лиспа не было пилить - я бы
взял его вместо тикля.

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

Не вспомню конкретных. Стараюсь избегать софта на питоне. Но регулярно
поставленному софту чего-то не хватает и его нет. И качество библиотек
просто ахтунг. Помню надо было вкрутить проигрывание мп3 в одну вещь.
Повесился прежде чем нашел то что работает, и работает с разными
битрейтами.

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

>> Недопилено все.

Есть такое дело.

asdf на винде - костыльно

ASDF это стандарт по чаcти описания систем в CL, он везде. ASDF-install - да, костыль на винде.

gentoo на винде не заведется.

Ну типа того :) Я запускал portage под cygwin, но это похоже на красноглазие ^))

Ну а вот в тикле все это сделано. И пакеты из инета как правило уже

по человечески собраны.

И в python, и в ruby, даже в Haskell прости Господи.

Если бы у лиспа не было пилить - я бы взял его вместо тикля.

Может стоит сделать второй заход? Задача обустройства CL окружения не многим сложнее такой же задачи для Java - есть разные варианты, есть тонкости. Я вот сейчас прикидываю, как бы сверх проблем с CL нет, разве что для того кто на дух не переносит что-то пилить :) Старичок он просто ))

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

Gtk+ «в экзе» не запакуешь.

Ну а вот тикль пакует.

Скомпилированные пакеты для лиспа - это оксюморон.

Почему для тикля нет?

http://libcl.com/

посмотрю.

Будет время - выложу инструкцию в lisp-lor-faq

Буду благодарен.

Но в целом суть такова, что все что я перечислил можно сделать в
тикле. И я не думаю что он такой уникальный. Просто остальные не
удосужились это сделать.

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

Я пока зашел на clojure. Конечно ни MOP ни read-table,
но та же jvm дает нормально отлизанную библиотеку.

А так я регулярно пытаюсь. Но безуспешно. Например есть код прямо на
лиспе который помогает обойтись без гзипа и тара. Почему его не
вкрутять в asdf - загадка.

Вобщем писать на лиспе можно, но деливерить - кошмар.

Svoloch ★★★
()

Проект GNU не собирается использовать Tcl в программном обеспечении GNU (с) RMS

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

>Ну а вот тикль пакует.

Ну так там не Gtk+, а Tk. Если кто-то напишет тулкит на лиспе, а не биндинг к Gtk+, то его так же можно будет целиком засунуть в образ. McCLIM, например, можно засунуть в образ, но он ужасен.

Почему для тикля нет?

Видимо, под «компиляцией» подразумеваются разные вещи.

Почему его не вкрутять в asdf - загадка.

А что ему делать в ASDF? ASDF не пользуется ни гзипом, ни таром. ASDF пользуется файловой системой.

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

>> Например есть код прямо на лиспе который помогает обойтись без гзипа и тара. Почему его не вкрутять в asdf - загадка.

Зато там есть даже shell-comand! Так что

(asdf:run-shell-comand «tar me please»)

0_o

А ещё можно сделать форк, впилить и отписаться в рассылке?

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

> Проект GNU не собирается использовать Tcl в программном обеспечении GNU (с) RMS

Лисперы не способны понять Tcl, им мешают скобочки других видов^_^, поэтому Столман обиделся на создателя тикля и назвал Tcl не провосланым и не кошерным. А Java - закопайте обратно. Пусть там и остается вместе с пистоном, жить в тени небыдлоязыков.

lemoor88
() автор топика
Ответ на: комментарий от dmitry_vk

Помоему вы не знаете как все делается в тикле. Там пакуются все ресурсы
в экзешник. И длл и прочее.

Возможно я Вас запутал - я имел ввиду asdf-install.

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

Ага и именно тут выясняется что непонятно что запускать на винде.

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

Вы пробовали под винду поставить модуль не исея уствновленного gcc?

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

>Помоему вы не знаете как все делается в тикле. Там пакуются все ресурсы в экзешник. И длл и прочее.

Gtk+ ищет всякие разные файлы в файловой системе. Как бы вы dll ни паковали, если Gtk+ не отучить от этого, то в один файл не собрать. Ну и плюс, очень интересно посмотреть на корректную запаковку dll'ек в один файл.

А ASDF-INSTALL использовать нигде не стоит, ни на винде, на под линуксом.

dmitry_vk ★★★
()

Нифига себе тред почистили, половина сообщений выпилена. За что???

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

>Ну как бы, CL это много. А урезанный CL это все таки не CL. На него все же стандарт есть.

Стандарт-то есть. Но, например, MOP в него не входит. CLOS, правда, входит, но и его можно «непрожорливо» обернуть.

Вообще в качестве примера можно посмотреть на ecl — http://ecls.sourceforge.net — волне пригоден для embedded. И полноценный CL (даже MOP есть)

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