LINUX.ORG.RU

Java вышла на первое место?


0

0

Согласно TIOBE Programming Community Index,в сентябре Java вышла на первое место по популярности среди всех языков программирования с рейтингом 22.442% , прибавив в рейтинге +6.55%. Для сравнения С = 19.160% (+2.04%)

>>> TIOBE Programming Community Index for September 2005



Проверено: Shaman007 ()
Ответ на: комментарий от int19h

>Кстати, не только паттерны. Еще один наглядный пример - AspectJ. Сейчас вот умные дяди сидят и переписывают компиляторы под AOP. А были бы в жабке макры - все это дело можно бы нарисовать на них.

тебе нравится AOP? (IMHO - это ад для отладки).

>> У белых людей для этого есть библиотеки и хорошая IDE ... Abstract factory - в нормальных IDE создается двумя щелчками мыши.

>Вот-вот. Автоматизация сopy&paste - куда мы катимся...

Рекомендую посмотреть Borland Together.

>> IMHO я бы хотел пример visitor'a в две строчки.

>Можно в одну. Visitor pattern - это как раз эмуляция multiple dispatch для двух аргументов средствами single-dispatch языка.

И все же пример хотелось бы увидеть ) И Abstract Factory и Visitor в одну строчку plz (можно в 2,3 -10) Правда интересно (разуемеется я потом задам вопрос с подковыркой :-)

>> Ты забыл назвать языки ;-) Из ходя из требований ты любишь List и Ruby ;-)))

>Да. Еще Haskell.

Какой софт ты писал Ruby и Haskell?

>> Closures - любители их использовать как раз плодят copy paste software(c которым ты выше призывал бороться).

>Объясни, как замыкания провоцируют C&P.

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

>Заодно можешь объяснить, чем жабские anonymous inner classes принципиально отличаются от кастрированных замыканий.

Могу - в closure можно любой код вставить, в anonymous inner class - только класс наследник.

Конечно, closure как и anonymous inner classes бывает полезной. Некоторые думают, что лучше иметь чем не иметь верно всегда (пусть подумают про грипп). Тоже касается множественного наследования (мне его в java бывает что не хватает), перегрузки операторов тоже в JAVA нет (не спорю, работать с математикой бывает удобно но я против order + item), да и адресной арифметики тоже не хватало после С++, но к сожалению часто такие конструкции приводят больше вреда чем пользы (ошибаются не только начинающие), по этому SUN и разработал такой язык, новые конструкции SUN внедряет, но делает это очень консервативно, что IMHO хорошо. Не думаю, что closure внедрить в язык сложнее чем anonymous inner classes (коли их нет, видимо на то были причины, одну из них я назвал).

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

Соглашусь. Только вот за более чем 10 лет программирования такой проблемы не возникала, может у тебя дело было в дизайне?

нет универсальных языков. java - это хороший сейчас язык для написания систем масштаба предприятия. Постепенно java начинает захватывать desktop, полностью захватила mobile рынок.

Haskell же куда больше подходит для решения олимпиадных задач (IMHO).

PS и ещё, называя java - жабкой ты лишь показывает не умение управлять эмоциями, подумай об этом.

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

>PS и ещё, называя java - жабкой ты лишь показывает не умение управлять эмоциями

Думаю ему просто лень переключать раскладку =)))

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

>А можно, можно я угадаю? Он имплементировал

>print "Hello, world"

Ну вот, а ты даже этого не сделал =)

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

2Yilativs:
вообще-то все вышеперечисленное- заслуга в первую очередь платформы Java а все упомянутые int19h недостатки относятся к языку Java.
Маркетоиды MS ловко воспользовались тем, что эти понятия часто путают, и активно пиарятся на тему "...а под нас зато можно писать на правильных языках!"- хотя с _технической_ точки зрения никаких особых приемуществ у .NET по сравнению с Java в качестве целевой платформы для компиляции ЯВУ нет- (см. http://www.livejournal.com/users/mauhuur/ ) -просто "так принято"

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

>> UML нужен для разработки JAVA софта? А для других ООП языков (C++, Python, C#)он не нужен?! ;-)

> Я вообще сильно сомневаюсь в том, что он нужен, если честно.

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

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

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

>> UML нужен для разработки JAVA софта? А для других ООП языков (C++, Python, C#)он не нужен?! ;-)

>Я вообще сильно сомневаюсь в том, что он нужен, если честно.

Альтернаивы? Держать в голове иерархию из 20-30 классов?

>Но на данный момент UML в основном используется в околожабских кругах.

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

>> Или может IDE не нужен python'у? ;-)

>Речь шла не об IDE вообще, а именно о жабских IDE.

Нет, Ecipse - это IDE для C++,Python,JAVA,PHP если бы я говорил только о JAVA IDE я бы в пример привел IDEA ;-)

>Вообще есть тенденция IDE для некоторого языка писать на нем же.

Пример IDE для haskell на haskell? Или для Ruby на Ruby?

>> может ли таким списком похвастаться хоть один из ваших нормальных языков?

>Из моих - нет. О причинах написано выше.

сорри, не нашел.

>Отдельные приложения все же есть. Скажем, MLdonkey.

Ocaml - ваш список не входил (у вас был Ruby, Lisp, Haskell)

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

> может ли таким списком похвастаться хоть один из ваших нормальных языков?

Посмотрим чем реально дельным может похвастаться Lisp... Maxima - система символьной математики уровня Maple. Делаю в ней линал и матан =) Не содержит утечек. Emacs, без комментариев. Xlispstat - среда статистических вычислений и интерактивной графики. AUCTeX is a comprehensive customizable integrated environment for writing input files for TeX/LaTeX using GNU Emacs. ...

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

> The Bat! - лучший почтовик под Windows.

Mozzila?

> Winamp ... А среди всех плееров он - лучший.

XMMS? VLC? BSplayer?

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

я, похоже, сильно опоздал "к раздаче" :(

использование макросов не может быть показателем "крутости" языка. это просто директива прероцессора и может быть использована _в_любом_языке_программирования_. никто не мешает использовать препроцессор для java, assembler, basic, etc. так что аргумент типа "30% кода это макросы и это -- круто" тут не катят. посмотрите "выхлоп" препроцессора и удивитесь "негибкости" своего языка. макросы, строго говоря, вообще не являются свойством какого бы то ни было языка.

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

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

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

> И что, 22,4% программ пишут на яве?
> я не видел ни одной ))) из нужных

А где вы ищите? На Java пишут
много для производств.

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

Ты, похоже, очень сильно не в теме. И макросами называешь что--то своё, сокровенное.

>это просто директива прероцессора

Макрос это не директива препроцессора, а возможность модификации AST языка средствами самого языка. И полноценные макросы есть очень мало где.

Кстати, если ты покажешь мне здесь директиву препроцессора буду сильно блгодарен

(defmacro mult7q (x) (cond ((null x) nil) (t (list 'cons (list 'quote (* 7 (car x))) (list 'mult7q (cdr x))))))

Если не понятно, этот макрос получает в качестве аргумента список, не вычисляет его и умножает каждй элемент на 7.

* (mult7q (1 2 3 4 5))

(7 14 21 28 35)

* (macroexpand '(mult7q (1 2 3 4 5)))

(CONS '7 (MULT7Q (2 3 4 5)))

>никто не мешает использовать препроцессор для java, assembler, basic,

Приведи пожалуйста реализацию на java, assembler, basic макроса mult7q

(примечание-для-баранов (мне не нужна функция получающая массив и умножающего его поэлемнтно, мне нужен именно макрос. Либо потрудитесь определить такую функцию, которая блокирует вычисленение своего аргумента))

>30% кода это макросы и это -- круто"

Это не круто. Это удобно. Марос в 10 строк вполне может раскрыться в 100 строк кода. И если бы не было макросов их пришлось бы писать руками.

(лирическое-отступление (как--то на ЛОР'е Антихрист ругал Mono за то что оно обламывается на функции в 15 тыс строк. Ты думаешь он руками такую функцию написал?))

>опять же, любой макрос или конструкция языка, ему эквивалентная, в конечном счете, транслируется в машинный код.

А с этим никто и не спорит. Только никто и не рвётся писать в машинных кодах.

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

угодай, ты тоже книжку по лиспу купил? :-))

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

>Вот я и учу, пока дают =)
>Ничего, пригодится. Пусть оно никогда не станет мэйнстримом - но даже на жабке, понимая идеологию лиспа, можно писать лучше.

Скажи, пожалуйста, по какой литературе ты его начал учить и учишь, и какой транслятор пользуешь Заранее спасибо.

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

> (defmacro mult7q (x) (cond ((null x) nil) (t (list 'cons (list 'quote (* 7 (car x))) (list 'mult7q (cdr x))))))

так никто не пишет...

(defmacro mult7q (x)
  (when x
    `(cons (* 7 ,(car x)) (mult7q ,(cdr x)))))

Rus

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

ну и если использовать более понятные для оствльных функции - 

(defmacro mult7q (x)
  (when x
    `(cons (* 7 ,(first x)) (mult7q ,(rest x)))))

Rus

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

> Ибо зачем тогда еще одну книгу писать/читать?

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

CruZ
()

LOR потихоньку из Linux Org Ru переростает в Lisp Org Ru :)

Огромное количество народа программирует на java потому что java ДОСТАТОЧНО удобна для решения КОНЕЧНЫХ ЗАДАЧ. Она ДОСТАТОЧНО удобна для КОЛЛЕКТИВНЫХ разработок. А еще она экономит кучи денег и времени на разработку. Где вы видели хотя бы близкий аналог Eclipse, Net Beans, IDEA? Остальные и рядом не валяются... Swing, SWT? они РАЗРЕШАЮТ коммерческую разработку, они НЕ ТРЕБУЮТ вылаживать исходники. Они НЕ СЫРЫЕ. Они написаны ОЧЕНЬ ГРАМОТНО!!!

До java я и не подозревал насколько быстро и дешево может быть использован refactoring.

Да, java медлительна, НО это проявляется только из-за приоритетов выставленных компанией ее разрабатывающей. Они проектировали ее для БОЛЬШИХ систем, потому никто не осмелился применить инкрементальный сборщик мусора. Пердставьте себе ситуацию, когда серверу НЕЛЬЗЯ перегружаться, но его спицифика предпологает использовать структуры данных, образующие замкнутый периметр. Со временем у системы не станет памяти, она по просту не будет освобождаться. Есть ухищрения, которые позволяют решать эти проблемы, но неправдо ли это уводит нас от решения конечной задачи? А на машинах, где достаточно памяти она очень даже быстро выполняется.

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

>Abstract Factory ... в одну строчку

Вот абстрактный производитель коннектов к БД, вместе с конфигурацией:

from cx_Oracle import connect

или для нелюбителей текстовых файлов:

import imp
cmn=какая-база-нынче-в-моде()
connect = imp.load_module(cmn,imp.find_module(cmn))

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

PS: все же пример хотелось бы увидеть

Ошибки в последней строке. Правильно:

connect = imp.load_module(cmn,*imp.find_module(cmn)).connect

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

> 28-м месте - выше bash, Forth, и Tcl/Tk =)

Занятно, Perl ваще на четвертом месте,
уступив только Java, C и C++, а о нем
тут ни слова.

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

>Огромное количество народа программирует на java потому что java ДОСТАТОЧНО удобна для решения КОНЕЧНЫХ ЗАДАЧ.
Да нет, обычно этот народ просто не знает других языков

>Она ДОСТАТОЧНО удобна для КОЛЛЕКТИВНЫХ разработок.
А при чём здесь язык-то? На лиспе трудно писать коллективно?

>А еще она экономит кучи денег и времени на разработку.
Как она их экономит? 10-е правило помним? Какое же тут время...
А насчёт денег я вообще не понял. java-программисты стоят дешевле? Так это не достоинство java

>Где вы видели хотя бы близкий аналог Eclipse, Net Beans, IDEA?
Если ты про IDE, то (x)emacs

>Остальные и рядом не валяются... Swing, SWT? они РАЗРЕШАЮТ коммерческую разработку, они НЕ ТРЕБУЮТ вылаживать исходники.
ВЫКЛАДЫВАТЬ

>Они НЕ СЫРЫЕ. Они написаны ОЧЕНЬ ГРАМОТНО!!!
Да ладно тебе ))))))

>До java я и не подозревал насколько быстро и дешево может быть использован refactoring.
Ну и при чём здесь java?

>Да, java медлительна, НО это проявляется только из-за приоритетов выставленных компанией ее разрабатывающей. Они проектировали ее для БОЛЬШИХ систем, потому никто не осмелился применить инкрементальный сборщик мусора.
Мобильные телефоны - это большие системы?
java предполагалось использовать во встроенных системах

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

>А насчёт денег я вообще не понял. java-программисты стоят дешевле? Так это не достоинство java
это основная цель создания языка Java- c точки зрения лиспера достоинством это, естественно, не является

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

Fedor, вы о java только слышали, либо вы ее используете?

Сколько народу писало, скажем Emacs? ОДНОВРЕМЕННО. Это о применимости языка в коллективных разработках.

Предположим ситуацию: вы программист в конторе. Программируете в большом коллективе. Вас не спрашивают с кем вы хотели бы работать, а с кем не хотели бы.

Про Swing, SWT. Безосновательное "да ладно тебе" меня не устраивает в качестве аргумента.

Плюс ко всему, надо брать в расчет современные тенденции в программировании. И почему-то все более и более востребованным становится RAD. Хотим мы этого или нет, но пользователю наплевать как реализован продукт. Ему это надо БЫСТРО и "что бы работало".

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

re:
   from cx_Oracle import connect
или для нелюбителей текстовых файлов:
import imp
cmn=какая-база-нынче-в-моде()
connect = imp.load_module(cmn,imp.find_module(cmn))

Это на каком языке? ;-)
И от чего собственно абстрактный  этот производитель?

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

>Это на каком языке

На питоне.

>И от чего собственно абстрактный этот производитель

От всего(почти). Главное, чтобы у конкретных производителей "connect" принимал правильные параметры и возвращал обьекты с правильным интерфейсом(в данном случае описаном в DB-API). Или я неправильно понял суть "паттерна"?

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

>Fedor, вы о java только слышали, либо вы ее используете?
Пришлось ей пользоваться на прошлой работе, но я быстро оттуда ушёл

>Сколько народу писало, скажем Emacs? ОДНОВРЕМЕННО. Это о применимости языка в коллективных разработках.
Его до сих пор пишут. Вполне коллективно.

>Предположим ситуацию: вы программист в конторе. Программируете в большом коллективе. Вас не спрашивают с кем вы хотели бы работать, а с кем не хотели бы.
Меня спрашивали...

>Про Swing, SWT. Безосновательное "да ладно тебе" меня не устраивает в качестве аргумента.
Ok, пусть они не сырые и грамотно написаны, но чем плохи, например, gtk-шные биндинги для того же lisp'а?

>Плюс ко всему, надо брать в расчет современные тенденции в программировании. И почему-то все более и более востребованным становится RAD. Хотим мы этого или нет, но пользователю наплевать как реализован продукт. Ему это надо БЫСТРО и "что бы работало".
А где в java RAD? Нет там его.

Fedor ★★★
()

Однако никто не заметил главного: сильно выросли позиции семейства языков LISP.

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

>еще ни разу не видел нормальных, человеческих НАСТОЛЬНЫХ приложений >написанных на этом чуде-юде. молодой человек, очевидно, не слышал о компании "Borland"

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

> Занятно, Perl ваще на четвертом месте, уступив только Java, C и C++, а о нем тут ни слова.

Perl is about collaboration, not competition. Поэтому он очень часто используется в мультиязычных проектах; к тому же онв достаточной степени мультипарадигмен, чтобы программеры, для которых он "родной" не имели слишком много предрассудков...

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

>LOR потихоньку из Linux Org Ru переростает в Lisp Org Ru :)

Уговорим макскома переписать движок на uncommon web или Common Lisp Hypertext Preprocessor?

> они РАЗРЕШАЮТ коммерческую разработку, они НЕ ТРЕБУЮТ вылаживать исходники.

Это есть большой плюс явы. Кроме как в ней такого нет нигде. Пойду и убью себя апстенку ;)

>Пердставьте себе ситуацию, когда серверу НЕЛЬЗЯ перегружаться, н

Может быть в такой ситуации лучше использовать язык с явным выделением/сборкой памяти?

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

>Как она их экономит? 10-е правило помним? Какое же тут время...

Кстати насчёт Гринспуна. Если есть десятое правило, то наверное есть как минимум первое, второе, ... девятое. Кто--нибудь их знает? Ссылкой поделится?

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

>От всего(почти). Главное, чтобы у конкретных производителей "connect" принимал правильные параметры и возвращал обьекты с правильным интерфейсом(в данном случае описаном в DB-API). Или я неправильно понял суть "паттерна"?

2 строчки вместе с реализацией patterna ;-)
У тебя же только же его использование.

PS То что ты сделал factory method, а не Abstract Factory ;-))

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

>Сколько народу писало, скажем Emacs? ОДНОВРЕМЕННО.

Очень много. Тоесть очень много. Даже учёту не поддаётся. Попробуй оценить суммарное количество emacs'овых пакетов, как входящих, так и не входящих в различные его дистрибутивы.

>Предположим ситуацию: вы программист в конторе. Программируете в большом коллективе. Вас не спрашивают с кем вы хотели бы работать, а с кем не хотели бы.

Тоесть вас заставляют писать на яве?

> И почему-то все более и более востребованным становится RAD.

Лисп для этого подходит идеально.

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

>Если вам так не нравится Java, то назовите реальную альтернативу готовую предти на смену ей.

на ЛОРе Йода Учитель комменты писать учил?

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

>У тебя же только же его использование.

Нет. Разжевываю.

Конкретный factory это cx_Oracle.connect (или mysql.connect, или postgresql.connect, и т.д.). Абстрактный должен прятать подробности. Правильно? Подробностью является именно первая часть(до точки). Потому абстрактный как раз так и описывается(cat Абстрактный.py):

from Конкретный import Производитель as create

Используется как

import Абстрактный

Абстрактный.create(...)

По моему это он и есть, AbstractFactory. Только никто его так не называет по причине тривиальности.

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

>>Предположим ситуацию: вы программист в конторе. Программируете в большом коллективе. Вас не спрашивают с кем вы хотели бы работать, а с кем не хотели бы.

>Тоесть вас заставляют писать на яве?

Не спрашивают с КЕМ работать. И вдруг Вам приходиться работать с кодом недопрограммера. Лучше ли вам станет, если он наворотит чего не попадя? Благо ему дали в руки отличный высокотехнологичный инструмент, очень гибкий. Это хуже гранаты в руках обезьяны!!! Разобраться в таком коде будет невозможно. Плюс ко всему, на вопрос человеку наворотившему "ЧТО ЖЕ ДОЛЖЕН ДЕЛАТЬ ТВОЙ КОД?" будет ответ: "непомню". И как же тогда возможно работать?
А роботодатели нонче пошли жадные. Им не наруку нанимать дорогих высококласных мастеров. Им проще и дешевле к индусам податься. А когда будет уже поздно, когда проект "в жопе", обратяться к вам за помощью, а помочь уже НИКАК невозможно. Нужно писать заново, скажете вы и с какой-то стороны будете правы.

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

Т.е. ява --- язык который делает быдлокодеров менее опасными для общества. И в этом её основная ценность. Я правильно понял вашу мысль?

P.S. Что то в этом определённо есть. Сам сталкивался с perl кодом одной, неизвестной мне сволочи. (И хорошо, что неизвестной. Я бы его убил и меня бы посадили) Отрицательные ощущения на всю жизнь. ;(

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

>Разобраться в таком коде будет невозможно.

А в таком же явском это будет возможно? Оптимисты.

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

Смотрел. Три раза. Все равно получается то же. Критерии абстрактной фабричности в студию.

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

> примечание-для-баранов (мне не нужна функция получающая массив и умножающего его поэлемнтно, мне нужен именно макрос. Либо потрудитесь определить такую функцию, которая блокирует вычисленение своего аргумента

то, что ты хочешь -- именно макрос, генерация кода препроцессором, а не вычисление во время исполнения. препроцессор, понимающий такой синтаксис для любого языка реализуется на 1-2-3. конечно, в java, к примеру, нет такой конструкции как список, но, надеюсь, массив достаточно эквивалентен в данном контексте.

> Марос в 10 строк вполне может раскрыться в 100 строк кода

прально, дядя федер (с) см. мой первый пост по этому поводу.

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

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

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

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

>то, что ты хочешь -- именно макрос,

Вот именно.

>препроцессор, понимающий такой синтаксис для любого языка реализуется на 1-2-3.

....... (это мат был, самопаскипанный)

История повторяется. Каждый раз когда я пытаюсь перевести разговор в русло ,,код против кода'' я получаю килобайты болтовни, но ни символа кода. Обещал макросы на java,basic,assembler? Обещал. Теперь выполняй.

>конечно, в java, к примеру, нет такой конструкции как список, но, надеюсь, массив достаточно эквивалентен в данном контексте.

0. Ниразу список не эквивалентен массиву. Объяснить почему?

1. Чорт с тобой. Ограничимся случаем одномерных списков. Реализуй обработку массива.

(напоминание-для-баранов (не забудь о блокировке вычисления аргументов))

ugoday ★★★★★
()

Кстати, на java написаны Ил-2:Штурмовик, Забытые сражения, Асы В Небе.

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

Я не The_Anonimous (и писать макросистему для явы не возьмусь), но хотелось бы уточнить, как должна выглядеть "блокировка вычисления аргументов" применительно к яве и массивам (особенно учтя, что приведенный пример про map { $_ + 7} (1,2,3) (excuse my Perl ;-) довольно сложно выразить на Java вообще.

Блокирование вычисления аргументов же вообще непонятно что, в отсутсвие списков.

Пример, кстати, нежизненный нихрена. При том, что я не возражаю против, эээ, некоторой ограниченности семантики Явы, и пишу на Perl с активным использованием элементов ФП (closures/map/grep. Жду Perl6, в котором есть continuations ;), такие извращения - извращения и есть.

/me давеча начал читать Practical Common LISP.

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

> но чем плохи, например, gtk-шные биндинги для того же lisp'а?

Можно ли их включать в не-GPL совместимые разработки?

Нормально ли они работают под Win, Linux, Mac, Solaris?

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