на главнуюВсе эхи RU.LISP
войти ?

Re: Живые есть?

От Alex Mizrahi (2:466/466.617) к Jan

В ответ на Заголовок предыдущего сообщения в треде (Имя Автора)


Hello, Jan!

> Да и гуй тоже интересен.

Как я уже написал, лучше не хвататься сразу за всё, а взять что-то одно.

Хотя если интересует по большей части гуй, то использование лиспа не самое оптимальное, т.к. на гуй он особо не расчитан.

> С одной стороны, то, что я видел в Allegro, меня разочаровало абсолютно.

Странно, это по-моему лучшее что есть для GUI. Хотя посмотри ещё Racket, он по-своему тоже интересен.

> Или я чего не понимаю, или всё-таки, наверное, лучше формочки клепать на Делфи, а лисп как-то приделывать... он вроде бы через ActiveX привинчивается к чему угодно? Или не любой?

Совсем не любой.

> А вообще, почему не в любом лиспе гуйня клепается? Из него до винапи не добраться?

Причина в том, что WINAPI -- это C, а Лисп -- это не C. Соответственно, напрямую вызывать WINAPI функции из Lisp невозможно, это совсем разные языки -- разное управление памятью, разная типизация и т.д.

Но с другой стороны, существую расширения и библиотеки которые позволяют всё-таки осуществлять вызовы C функций через обёртки. Но из-за различий в языках как правило каждую функцию нужно описать в виде обёртки -- какие параметры у неё входящие, какие выходящие и т.д. Хотя были и попытки сделать это автоматически, но они, насколько мне известно, не увенчались успехом.

Каждая реализация предоставляет свои возможности для создания обёрток. Кроме того, существуют библиотеки для совместимости -- CFFI и UFFI (foreign function interface) которые работают во многих реализациях.

Так что в принципе, вызывать функции WINAPI при желании можно. Но едва ли это поможет, т.к. реализовать GUI на голом WINAPI долго и геморно.
А готовых библиотек практически нет, потому что это опять же геморно и малоинтересно. Многие пользуются лиспом на UNIX-like системах, а там свои библиотеки для работы с графикой (X), другие пользуются коммерческими реализациями где есть свои GUI библиотеки. Оставшееся меньшинство по-видимому удовлетворяется Tk.

По пути использования WinAPI идёт Corman CL, например можно найти в примерах hellowin.lisp где прямо через него делает окно.
Но кормановская реализация во-первых платная, а во-вторых довольно убогая т.к. её пилит потихоньку всего один мужик.
Но кому надо именно под венду и винапи -- почему бы и нет, всего $250 :). А можно просто посмотреть как оно забесплатно и бросить...
--- wfido
* Origin: Отправлено через http://fidonet-online.org (2:466/466.617)

Ответы на это письмо:

From: Username
Заголовок следующего сообщения в треде может быть длинным и его придется перенести на новую строку

From: Username
Или коротким

FGHI-url этого письма: area://RU.LISP?msgid=2:466/466.617+04c3d5de