LINUX.ORG.RU

Clojure - lisp для JVM


0

0

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

По сути это диалект лиспа, компилируемый прямо в JVM bytecode, оставаясь прои этом полностью динамическим языком.

>>> Подробности



Проверено: Shaman007 ()

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

> Там только Си, котрый легко поддерживать для нескольких платформ. ;-)

Забыл добавить: На Си, на котором легко пишутся кросплатформенные приложения :)

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

>> Там только Си, котрый легко поддерживать для нескольких платформ. ;-)

>Забыл добавить: На Си, на котором легко пишутся кросплатформенные приложения :)

Так же легко на Си пишутся и платформно-зависимые приложения.

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

> Почему-то вспомнилось: "Это фантастика, сынок"

o_O

ты на что отвечал-то, уважаемый?

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

>Представь себе. ДОгадайся что такое new ActiveXObject("Scripting.FileSystemObject") под вендой, или Components.classes["@mozilla.org/file/local;1"].createInstance(Components.inter faces.nsILocalFile); под мозиллой.

И чем оно страшно с отключенным ActiveX?

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

>И чем оно страшно с отключенным ActiveX?

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

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

>ГЦЦ опасен, неэффективен, уродец внутри (а то ж, орава быдл пишет компилятор, без всяких знаний о разработке компиляторов, вдохновляемая только возгласами Столмана)

Твой разум не способен парсить факты и генерировать причинно-следственную связь. "Быдло" и дураки всякие просто не смогут самостоятельно (и даже с чужой помощью) разобраться в исходниках gcc. Да и не захочет. К тому же выходит противоречие - если гсс уроден внутри, как же быдло тем более разбирает это спагетти? Жуй и молчи. Нет, говори и подавись.

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

>на просвятись

>http://schmidt.devlib.org/java/standalone-vm.html

Цитата:

Japhar

http://www.japhar.org

A portable VM distributed under the LGPL for FreeBSD (x86), NetBSD (x86, arm32), Linux (x86), Solaris (x86, sparc) and Win32. BeOS is not in the list of supported platforms, but there was something about BeOS patches in the News section.

Да. Я уже давно понял, что чтобы настроить Java на *BSD прийдется много трахаться, что и подтверждается на домашней странице проекта.

xTERM ★★
()

Всем, кто не врубает в объектно-ориентированный дизайн и зачем нужна Java и какое место она занимает в мире объектно-ориентированного программирования, читать сначала все книжки по списку: http://www.objectsbydesign.com/books/booklist.html

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

>Всем, кто не врубает в объектно-ориентированный дизайн и зачем нужна Java и какое место она занимает в мире объектно-ориентированного программирования, читать сначала все книжки по списку: http://www.objectsbydesign.com/books/booklist.html

Всем, кто не врубается в функциональное программирование - идти мести улицы или убить себя "ап стену".

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

>Да. Я уже давно понял, что чтобы настроить Java на *BSD прийдется много трахаться, что и подтверждается на домашней странице проекта.

>xTERM # (*) (19.10.2007 22:02:44)


Идиот ? А, ну да ладно ... бывает :)
А так иди сюда: http://www.freebsdfoundation.org/downloads/java.shtml
Там лежит _нативная_ Java JDK and JRE 5.0 Update 7 binaries for FreeBSD 5.5/i386, 6.1/i386, 6.1/amd64
Да 6 еще нет. Но у некоторых вышеперечисленных вообще только 1.3 и ничего :)

пЫсЫ: я не фанат явы, но внутренную бизнес логику лавки писать на ней можно. Я про мидлеваре ,)

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

>Я уже давно понял, что чтобы настроить Java на *BSD прийдется много трахаться, что и подтверждается на домашней странице проекта.

Када нечнешь писать на С++ что трахаться придется и при смене версий компилятора. Я вон помню трое суток беспрерывного траха при переезде с 2.96 на 3.0 чтоб оно хоть бы откомпилилось, а потом неделю вычищения баг чтобы заработало на новом компилире. Нашли портабельный язык. Почитайте хоть на сайте мозиллы по портабилити кода гайдлайны.

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


r - не передергивай! Портабельность плюсов никто в здравом уме не защищал. Речь шла о великом и могучем - о голом С!

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

Это ты идиот. Зайди по ссылке проекта, про который я говорил, и все поймешь.

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

В мире объектно-ориентированного программирования Java занимает место у параши. Как самая обиженная. А пахан тут - это Smalltalk.

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

GCC внутри уродлив, но по другой причине. Аффтары не быдло, аффтары молодцы, но и им не справится с мегатоннами исторических наслоений и однажды сделанных неверных архитектурных решений.

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

Это ключевой проект в программной индустрии. Думаешь у него нет спонсоров?

xTERM ★★
()

Интересно, и часто из Лиспа нужно вызывать Ынтерпрайз-потоки сервера приложений?

Не проще ли наоборот, сервер приложений на Лиспе?

Вот есть маленький аккуратный PicoLisp, весь из себя встраиваемый в/из C, динамический, в комплекте там сервер приложений с HTML GUI, те же сервлеты. И примеры там любопытные: OOdb с ролями - связями, такая помесь ОО с аспектами. Типа single source модели данных, представления и поведения. http://software-lab.de/dbui.html

И исполняется это не на <strike>сферическом коне в вакууме</strike> стековой JVM, а на очень простой своей виртуальной машинке, которая проще ложится на архитектуру.

Не проще ли наоборот, компилировать Яву в Лисп? Вроде этого под МакОсь : http://programming.nu или этого http://vistascript.net/vistascript/data/adobe/tools/classbrowser2.jpg http://vistascript.net

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

>Речь шла о великом и могучем - о голом С!

И могучем голом посиксе? Дохрена на нем напишешь. Почему до сих пор нету кросплатформенного ифконфига? Вот подумай.

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

>И исполняется это не на <strike>сферическом коне в вакууме</strike> стековой JVM, а на очень простой своей виртуальной машинке, которая проще ложится на архитектуру.

Это 5! НА какую она архитектуру ложится?

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

> Почему до сих пор нету кросплатформенного ифконфига? Вот подумай.

Потому что никто не додумался его на Яве написать, ога?

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

>Потому что никто не додумался его на Яве написать, ога?

Потому что портабельность _языка_ заслуга не шибко большая. На самом деле непортабельный язык это еще поискать.

Значение имеет портабельность платформы. Что в чистом C не имеем и это естественно дальше посикса нефига нестандартизированно, а посикс не шибко удобный стандарт в 21 веке. Имнно потому троли пишут Qврапперы вокруг всего, что движется, имнно потому Gecko Runtime Environment, Apache Portable Runtime и т.д. и т.п.

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

>>cтековой JVM, а на очень простой своей виртуальной машинке, которая проще ложится на архитектуру.

>Это 5! НА какую она архитектуру ложится?

Конкретного процессора. Вот в Dis , Inferno -- правильная виртуальная машина, трехадресная. Отображение байткода в машкод почти один в один.

В шитом коде или в стековой машине -- лишний уровень неявности. Байткод такой виртуальной машины неэффективный. Что само по себе и нестрашно, пока все функции, обрабатывающие опкоды байткода лежат в кеше. (В идеале вся VM должна лежать в кеше). Но можно наткнуться на лишние перезагрузки кеша, и тогда будем страдать.

Я не спорю, что на спарках с регистровыми окнами стековая VM может и работает нормально, но обычные процессоры-то другие.

Вот, а в такой "минимальной" Лисп-машинке имеем тот же байткод, только без байткода, сразу функции. А функции пишутся на встраиваемые на С.

Я конечно не спорю, что выживают платформы. Но иногда эти платформы просто не нужны и проще минимальное встраиваемое решение.

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

>Имнно потому троли пишут Qврапперы вокруг всего, что движется, имнно потому Gecko Runtime Environment, Apache Portable Runtime и т.д. и т.п.

Ты еще Мозиллу с XPCOMом вспомни, прости господи..

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