balu: (Default)
[personal profile] balu
Я всегда неровно дышал ко всяким там LISP-ам. К сожалению это не самое популярное семейство языков. В связи с этим с библиотеками как бы напряг. Но недавно появился язык программирования Clojure, который является динамически типизируемым и компилируемым языком общего назначения для JVM и CLR. На НГ автор языка решил сделать подарок и выпустил новую версию. Теперь кроме прочего там есть поддержка примитивных массивов, chunked-последовательности, futures, предназначенные для асинхронных вычислений, promises для обмена данными между тредами, pre- и post условия для функций, продолжения (futures) и много другого
Из свободно распространяемых обучалок есть порт PCL на Clojure и скринкасты про новые возможности.
И вот нашлись 2 очччччччень интересные книжки по этой тематике:
Clojure in Action

и только что анонсированная The Joy of Clojure. Но самая интересная для меня оказалась вот эта красота:

Вот теперь и трясусь - и от того, что жаба, и от того, что некогда... Но, наверное, до лета я на 28 баксов расколюсь. Эх... жалко НГ закончился

Date: 2010-01-13 11:08 am (UTC)
From: [identity profile] roman_sharp.livejournal.com
2) Юникс вэю не достает понимания удобства и нужности ГУИ для пользователя. Я сначала долго не мог понять, почему каптча так мучает моих читателей и не мучает меня. Потом дошло: они ж слепой английской раскладки, в отличие от меня, не знают.

1) Ну вот это одна из причин, по которой я склоняюсь к Джаве. Ты там Джитон какой-то вспоминал, и другие компиляции в Джаву.

Date: 2010-01-13 11:31 am (UTC)
From: [identity profile] b-al-u.livejournal.com
2) Юникс вэю не достает понимания удобства и нужности ГУИ для пользователя.

далеко не всегда. для решения задачи нужон гуй. Есть чисто гуевые задачи, никто не спорит. А вот функционал туда дергать ч-з ЮВ вполне нормальное решение.

Мне, кстати капча тоже проблема. Я часто не могу разобрать ее... Наверное я бот.

Ты там Джитон какой-то вспоминал, и другие компиляции в Джаву.

С жабой мы страдаем от:
1) ВМ Жабы заточена только под один довольно таки ублюдочный язык - жабу.
2) Отсутствия хвостовой рекурсии, каждый вызов по определению потребляет стек.
3) Тормозной и неправильный GC. При ровно той же семантике VM можно было сделать лучше. Жабский GC не приспособлен к ситуации, когда огромное количество мелких объектиков выделяется и сразу же теряет актуальность.
4) Отсутствие чего либо аналогичного .NET-овским делегатам. Для такой простой (и часто нужной) вещи, как передать указатель на метод, требуется плодить отдельный класс. При традиционном подходе к программированию на самой Жабке - не проблема, при реализации других языков - геморрой.
5) Сам язык Жаба: отсутствие замыканий, отсутствие даже минимальных возможностей метапрограммирования, отсутствие нормальных и удобных контейнеров (ну что мешало сделать для списков и хэш-таблиц синтаксический сахар, чем они хуже массивов?), анонимных функций, нормальных генериков. Если все эти претензии разрешить, то Жаба зарулит нипадеццки. А пока, когда есть возможность выбора инструмента для очередного языка, я или натив сразу делал бы, или .NET. Сейчас ситуация чуть получше стала, можно и попробовать, тем более, что все интересные мне языки можно запустить не только под жабу, а и под дотнет.
В частности Житон генерит крайне неэффективный байткод, в отличие от дотнетовского варианта. Хорошие реализации для жабы - это Scala и Clojure. Но это исключения больше. Есть еще JRuby, но он тормоз, как и Jython.

Profile

balu: (Default)
от. Михайло

April 2026

S M T W T F S
   1234
5678910 11
12131415161718
19202122232425
2627282930  

Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 15th, 2026 04:08 am
Powered by Dreamwidth Studios