LINUX.ORG.RU

[Lisp] Ищу тулкиты


0

1

Насоветуйте хороших тулкитов для создания программ с современными графическими интерфейсами и/или инструментарий разработки ПО.

Желательно развивающийся проекты.

★★★★★

Есть ли что-то на подобие Qt, только под лисп?

Zodd ★★★★★ ()

Ах да. Тебе же под Lisp. Ну, боюсь для Lisp 1.5 ты уже ничего не найдешь.

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

А какой смысл использовать CommonQt в Common Lisp?

Богатая инфраструктура, которую плюсам предоставляет Qt, у CL и так уже есть (даже круче), а для UI прикручивать это - имхо оверкилл

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

>а для UI прикручивать это - имхо оверкилл

А модные кутешные виджеты? В этом плане у куте больше встроенных возможностей, а для гтк некоторые вещи надо будет пилить руками.

И MVC.

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

>В этом плане у куте больше встроенных возможностей

Серьезно? В плане хитровывернутых виджетов возможностей как-раз таки больше у GTK :)

А MVC можно реализовывать хоть там, хоть там.

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

>Серьезно? В плане хитровывернутых виджетов возможностей как-раз таки больше у GTK :)

Ну хз. При общении с этими тулкитами, мне показалось, что у куте больше навороченных виджетов по дефолту. Руками то можно написать много чего, но в куте оно сразу.

А MVC можно реализовывать хоть там, хоть там.

В кути оно уже есть для некоторых вещей.

Я говорю не про то, что гтк хуже кути, а про то, что в кути больше изкоробочных возможностей, позволяющих сократить время разработки. Она поэтому и потолще.

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

Имелось в виду Cl конечно. Меня больше интересует что из этого добра больше юзабельно, а что лучше не трогать.

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

И много понаписано на этом Ltk? Я-то думал, выбор профессионалов - это CAPI

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

> И много понаписано на этом Ltk?

Не обращай внимания, это такой своеобразный юмор.

archimag ★★★ ()

Когда я напишу LDX, я обязательно запилю на нем гуйню. Правда, оно будет только для винды. But who uses linups for graphical applications, anyway?

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

But who uses linups for graphical applications, anyway?

The linups has graphical applications?

Zodd ★★★★★ ()
Ответ на: комментарий от Rastafarra
(defun hello-2()
  (with-ltk ()
   (let* ((f (make-instance 'frame))
          (b1 (make-instance 'button
                             :master f
                             :text "Button 1"
                             :command (lambda () (format t "Button1~&"))))
          (b2 (make-instance 'button
                             :master f
                             :text "Button 2"
                             :command (lambda () (format t "Button2~&")))))
     (pack f)
     (pack b1 :side :left)
     (pack b2 :side :left)
     (configure f :borderwidth 3)
     (configure f :relief :sunken)
     )))

http://www.peter-herth.de/ltk/ltkdoc

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

> И много понаписано на этом Ltk?

С такими критериями мы и CL закопаем.

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

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

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

дада, главное верить.

почуствуй разницу:

button .b1 -text "test" -command "puts test"
button .b2 -text "quit"  -command "destroy ."

grid .b1 -row 0 -column 0 
grid .b2 -row 0 -column 1

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

ах, там с фреймом...

frame .f -relief sunken -borderwidth 3

button .f.b1 -text "test" -command "puts test"
button .f.b2 -text "quit" -command "destroy ."

pack .f.b1 -side left
pack .f.b2 -side left
pack .f -side top 
Rastafarra ★★★★ ()

Lispbuilder http://code.google.com/p/lispbuilder/wiki/LispbuilderSDL
http://lispbuilder.sourceforge.net/  — SDL, OpenGL, Native Win32/MacOSX (биндинги к Cocoa были то ли в lispbuilder, то ли в СlozureCL)

cl-gtk2 http://www.cliki.net/cl-gtk2 ,
Qt: commonQt http://common-lisp.net/project/commonqt , cl-smoke http://tobias.rautenkranz.ch/lisp/cl-smoke/ , EQL http://password-taxi.at/EQL

а вообще http://www.cliki.net/Graphics Toolkit , но там половина устарела.
Из более-менее поддерживаемых — cl-gtk2, commonQt, cl-smoke

anonymous ()

ещё есть такое: http://robotcat-blog.blogspot.com/ http://cl-duim.blogspot.com/ — cl-DUIM
DUIM = Dylan User Inteface Manager — это порт CLIM на Dylan, http://www.opendylan.org — язык с семантикой лиспа и алгольным синтаксисом. Независимая реализация CLIM, в общем-то, на native gui (Win32). В Gwydion Dylan его портировали на GTK2.
Ну а тут назад на Common Lisp c Dylan-a портировали.

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

Ну да, в тикле чутка больше сахарку. Решается примитивным макросом, если это уж так сильно важно.

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

> EQL http://password-taxi.at/EQL

у EQL вообще идея зач0тная. Берём простое C++ Qt GUI приложение, встраиваем туда лисп. ECL, который конпелирует через трансляцию лиспового кода в Cи. Получаем С++ Qt+ECL REPL. Берём биндинги EQL, переписываем C++ simple ui Qt + ECL +EQL REPL + CLOS ui. И постепенно переписываем приложение с C++ на встроенный лисп. Хотим — пишем только новые доработки на лиспе, старое на Qt.
Сравниваем затем, на чём легче писалось :) в чём профит от лисп :)))
Главное, что приложение всё время рабочее остаётся. Просто куски можно переписать/дописать на лиспе вместо С++.

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