LINUX.ORG.RU
Ответ на: комментарий от dave

Любопытно. А где можно про это прочитать? По линку просто загрузка.

Про Smalltalk мне одна бабка сказала ) Щаз маленько погуглил, и нашел, что имела в виду бабка:

http://talklikeaduck.denhaven2.com/2008/10/15/will-it-go-round-in-circles

When Java “reared it’s head.” IBM, of course came out with VisualAge for Java. Again, the IDE was written in Smalltalk, although, in order to accomodate Java execution, OTI developed what was called the UVM (or Universal Virtual Machine) whcih could execute both Smalltalk and Java byte-codes, and used Smalltalk to implement the Java primitive functions which were implemented in C in the Sun JVM.

то есть, это о изначальной машинке, которая была написана на Smalltalk'е, и могла пускать и Smalltalk и Java

Судя по следующей ссылке, сейчас всё несколько по-другому:

http://webcache.googleusercontent.com/search?q=cache:1wLLl7DbCesJ:www.skywayradio.com/tech/WAS70/aix/5-3-3.htm+On+which+language+IBM+j9+is+written&cd=9&hl=ru&ct=clnk&gl=ru&client=opera

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

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

Скриптовые ЯП таки тормозят гораздо больше С++. Да и нет под них вменяемой IDE.

Java конечно штука хорошая и IDE к ней просто замечательное, но таки тот же SWING просто тихий ужас

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

>> А возможности CL позволяют развести разработчиков по разным пакетам и не мешать друг другу. Что вобщем-то и ценно.

В настоящее время пространства имен/пакеты/модули/итд имеют практически все более или менее распространенные языки.

Ну и относительно бесшовно интегрировать «нетривиальные вещи» в систему.

Что значит бесшовно??? Просто я не пойму как например в той же Жаве или ЦыПыПы интегрировать со «швом» )))

при желании одной командой переключится в режим чистого SQL иработать с базой напрямую.

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

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

> но таки тот же SWING просто тихий ужас

а MFC просто сказка, так бы и писал на нем всю жизнь? :)

Да и нет под них вменяемой IDE.


реквестирую годную IDE для плюсов под линуксом. Какой-нибудь аналог вижуалки с вижуалассистом. Чтобы умел анализировать код и человечески его отображать. Чтобы была встроенная справка а-ля MSDN по основным плюсвоым вещам. Чтобы можно было всё писать в IDE, не переключаясь на консоль.

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

>а MFC просто сказка, так бы и писал на нем всю жизнь? :)

Наркоман что ли?

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

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

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

>> Скриптовые ЯП таки тормозят гораздо больше С++. Да и нет под них вменяемой IDE.

Это ты чего-то спи*данул (про IDE)
Komodo IDE - умеет Perl, Python, Ruby, PHP, TCL.
имхо лучшее из того, что есть.

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

>Просто я не пойму как например в той же Жаве или ЦыПыПы интегрировать со «швом»

JNI, extern «C» {}

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

вот мне интересна мотивация тех кто пихает GOF как книгу об ооп. это п.ц товарищи.

так значит книга GoF не об ООП? а о чём же?

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

А возможности CL позволяют развести разработчиков по разным пакетам и не мешать друг другу. Что вобщем-то и ценно.

В настоящее время пространства имен/пакеты/модули/итд имеют практически все более или менее распространенные языки

Каждый пакет может иметь свою собственную readtable и соответственно свои особености синтакиса и свой набор расширений в виде reader macro. В особо тяжелых случаях свой особый язык совершенно не похожий на CL.

Ну и относительно бесшовно интегрировать «нетривиальные вещи» в систему.

Что значит бесшовно??? Просто я не пойму как например в той же Жаве или ЦыПыПы интегрировать со «швом» )))

Возмем для примера регулярки.

Вот например perl/js

/(\d{4}[- ]){3}\d{4}/

А теперь попытаемя втистуть это-же же в c++ (boost:regex для примера)

"(\\d{4}[- ]){3}\\d{4}"
Вот первый вариант бесшовный, а второй пришлось помять заэкранировав слэши. В четвертой главе Let Over Lamba написано, как с помощью read macro такой шов можно разгладить.

при желании одной командой переключится в режим чистого SQL и работать с базой напрямую.

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

Именно что позволяет среды програмирования, а не языки. Десятое правило Гринспена в действии. CL сам себе среда, поэтому в этом случае можно бегать без костылей :) Отмечу что напрямую работать с sql-сервером может не только программист, но и написаная им программа и вот этом случае среда програмирования скорее всего не поможет.

Более интересный вариант это работа с потоком данных в лучшем случае сжатым, в худшем ASN.1. Далеко не каждая среда програмирования сможет помочь вэтом интересном и нелегком деле. На самом деле я не против IDE, но именно полнеценная поддержка с стороны языка делает такие вещи удобными. t

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

>> То же самое позволяют делать многие современные среды разработки.

CL сам себе среда

Тут из задних рядов интересуются, что такое тогда этот ваш SLIME.

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

Тут из задних рядов интересуются, что такое тогда этот ваш SLIME.

метасреда. а emacs - метаметасреда

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

>> CL сам себе среда

Тут из задних рядов интересуются, что такое тогда этот ваш SLIME.

Разумеется терминал на основе Emacs к этой среде.

Даже если мы сойдя с ума зайдем в REPL напрямую, то все о чем я говорил останется в силе. SLIME в сущности клиент для SWANK, но работать можно и без него (хотя и не так удобно).

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

> так значит книга GoF не об ООП? а о чём же?

Я рискну преположит что об ООП головного мозга (не путать с ООП). Или о том как писать на языке с «с полной поддержкой ООП» но без замыканий и прочих таких же интересных вещей.

Но я конечно могу быть не прав.

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

Это все конечно хорошо, но я подниму извечный вопрос: «почему такой расп**датый язык находится в такой глубокой *опе в смысле востребованности?» На какие мысли это наводит?

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

>Вот еще один миф, любимый мной: «Лисп - элитарный язык»

Ой как все запущено… Я вот ни о какой «элитарности» лиспа не говорил. Я просто сказал, что есть языки неформализованные и языки программирования, в основе которых лежит какой-то мощный формализм.

если бы было сказано в адрес Haskell: да, там знание теории немного облегчает понимание языка


Не облегчает. К хаскелю нужно привыкнуть.

Это что же, человек за 9 лет никак не избавится от «лютого когнитивного диссонанса»?


Очень на то похоже. Возможно проблемы в складе мышления. Вот мне например, вложенность ни сколько не мешает. А кстати, в Clojure из коробки есть разные виды скобочек, при полном отсутствии reader-макросов, да и самих скобочек намного меньше. Хотя с CL я тоже не подружился. А вот с Clojure…

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

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

А кстати, в Clojure из коробки есть разные виды скобочек

А кстати в Racket (бывший PLT Scheme) [] и () вполе порано взаимозаменяемы.

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

>> мы свободные люди, а не придатки к компилятору.

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

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

>> Возмем для примера регулярки.

Возьмем для примера качество, количество и докумментированность лисповских бибиотек. Много чего есть, документации мало, качество хромает.

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

> Это все конечно хорошо, но я подниму извечный вопрос: «почему такой расп**датый язык находится в такой глубокой *опе в смысле востребованности?» На какие мысли это наводит?

Типа аргументы кончились, перешли к какашкам ? :)

Common Lisp и Ada разрабывалилсь по заказу и ради U.S.Army что наложило отпечатк на их схожую судьбу. AI Winter закатало много всего выросшего тогда, включая 25%-долю web-серверов (да-да на CL). Выросшие на обломках Franz-Allegro и LispWorks соорентированы на крупных заказчиках и каждый тянет свое одеяло строя свой единственно-правильный стек. Мир замирает новичкам советуют закупаться коммерческим и не маятся дурью. ну и поигрться с CLISP. Но с отколом SBCL году так в 2004 постепенно начнается вторая волна CL. Потеряв прежние наработки, но и обновившись. Новые open source компиляторы, библиотеки. С 2006 силами членов сообщества лисперов начинаятся тихая стандартизация, унифицируются соккеты, потоки, MOP. Начинается разбродная разработка граф. тулкитов взамен CLIM-а (жалко однако). Eddi Weitz в своем уголке делает web-сервер и к лиспу Cтолманом проклятыq .NET. Почти совссем уже в наши дни появляется поддержка Qt. А опять таки в 2006 Allegro переписывают python на лисп.

Короче говоря вторя волна CL уже поднимается. Вон призрак лиспосрача непрерывно качуют из темы в тему. И уровень участников за последние несколько лет вырос неимоверно.

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

>А кстати в Racket

Да, только в Clojure «[» и «{» — полноценные reader-макросы для создания векторов и хэш-таблиц.

Да и такой абстракции как cons-ячейки там нет. Вообще нет. А ведь казалось бы…

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

> Возьмем для примера качество, количество и докумментированность лисповских бибиотек. Много чего есть, документации мало, качество хромает.

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

А документация часто вобще нафиг не нужна лиж бы docstring-и писали.

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

> вдруг почему-то числа начали складываться с хэш-таблицами?

Это же круто, динамическая типизация и всё такое.

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

> Тебя петросян покусал чтоли?

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

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

Вот черт и правда ведь не перепутал. А по процитированному куску можно подумать, что перепутал. Пардон тогда.

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

>Common Lisp и Ada разрабывалилсь по заказу и ради U.S.Army что бла-бла

Это краткий пересказ истории бурления ЛИСП в канализации ИТ-индустрии?

И уровень участников за последние несколько лет вырос неимоверно.


Неужели? А я наблюдаю прямо обратный процесс. Я бы выделил три последовательных во времен уровня ЛИСП-сектантов на здешнем ресурсе:

- усердные - те, которые с пеной у рта пытаются всех убедить, что ЛИСП рулит. Это, например, Архимаг (или как там его), которого что-то в этой дискуссии не видать, может наконец-то делом занялся.

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

- упёрто-замкнутые - те, у которых вся аргументация сводится к коротким матным фразам вроде «ой *лядь».

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

> >И уровень участников за последние несколько лет вырос неимоверно.

Неужели? А я наблюдаю прямо обратный процесс.

Однакож народ выучил новые слова не только императивщина и «хвостовая рекурсия», но и почти уверено отличает CL от sheme. Понимает что ООП в CLOS непередаваемо круче чем в убогом цпп. Несколько раз слышал о MOP (хотя иногда путает с CLOS). Ну и могое другое в таком же роде.

А ваща класификация уныла, в связи применимостью к практически любому ЛОРовцу, только нужные жаба, гном, mono подставляй и нужное подчеркивай.

Это краткий пересказ истории бурления ЛИСП в канализации ИТ-индустрии?

Ну детсад же. Позорите братсво анонимусов, не красиво.

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

> Понимает что ООП в CLOS непередаваемо круче чем в убогом цпп. Несколько раз слышал о MOP (хотя иногда путает с CLOS)

Думаю, что в этом случае было бы правильнее сказать так: «верит, что ООП в CLOS непередаваемо круче чем в убогом цпп». Потому что те, кто попробовал работать и на CLOS, и на Си++, не путают MOP и CLOS :)

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

Я рискну преположит что об ООП головного мозга

зря, сами GoF весьма скептически подходили к ООП (особенно к тому, которое в C++); что до восприятия, то любую книгу при известном желании можно употреблять как толчок к %whatever% головного мозга

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

> Скриптовые ЯП таки тормозят гораздо больше С++. Да и нет под них вменяемой IDE.

Рекомендую обратить внимание на современный JavaScript. Он имеет большие перспективы на десктопе, см. соответствующую инициативу GNOME. Оба используемых движка снабжены приличными JIT-компиляторами, это GJS (на базе Mozilla TraceMonkey) и Seed (на основе WebKit/JavaScriptCore). Благодаря JIT производительность на очень хорошем уровне, по крайней мере, вся развеселая компания из Perl, Python и Ruby (в non-JIT вариантах) отсасывает, проглатывает и просит еще. Имеется качественная поддержка в Anjuta IDE.

Собственно, я тут эту тему давно двигаю, но ради благой цели не поленюсь и повториться. Также рекомендую попробовать NetBeans в качестве IDE для Python, PHP, Ruby и Groovy. Python, кстати, сильно выигрывает от симбиоза с Java (в виде Jython), так как задействуются все батарейки JVM и нигилируется родовая травма Питона - GIL.

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

> Это все конечно хорошо, но я подниму извечный вопрос: «почему такой расп**датый язык находится в такой глубокой *опе в смысле востребованности?»

Как это? Вы что, до сих пор не в курсе? Потому что мир полон быдло-monkey-кодерами, которым Божественный Лисп не по зубам!

Не по зубам авторам операционных систем, системного ПО, библиотек, компиляторов, СУБД, сетевых сервисов.

Не могут постичь лисп авторы расчетных сред Sage, Octave, Scilab - не иначе, закопались в своем матане. CERN'овцам, видать, бозон Хиггса в глаз попал - помимо того, что написали ROOT на Б-гомерзком C++, так еще и интерпретатор оного C++ туда вкрячили.

Не осилили лисп создатели 3D-сред, движков и рендереров: Blender, OGRE, PixelLight, Irrlicht, LuxRender, Yafray и Aqsis; сделали почему-то все на убогом С и С++.

Не поддался лисп и авторам десктопного софта: максимум - юзают Scheme как скриптовой язык во всяких Гимпах, недооценивают, убогенькие.

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

Впрочем, если верить легендам самим лисперов, это все у них есть (а не только расстановщик бутылок от archimag), только они никому этого не показывают, ибо не собираются ничего показывать быдлу. Такие дела.

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

> Очень на то похоже. Возможно проблемы в складе мышления.

Жаль, что камрад den73 в последнее время нечастый гость здесь. При первом же удобном случае приведу ему ваши слова, заодно познакомитесь.

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

Помню экспериментировал с NetBeans+Jython/C++/etc таки там только java дает все фичи на полную катушку, в остальном кроме автодополнения ничего особо такого не заметил. В java очень интересно сделаны сноски из документации при дополнении.

К стати, а Python можно в байткод закомпилировать, для пущей проиводительности?

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

> OOP considered harmfull

Это что, а вон вегетарианцы считают, что есть мясо - вредно, а все окружающие - мерзкие трупоеды.

И, кстати, «harmful» пишется с одной «l», грамотей вы наш.

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

> Однакож народ выучил новые слова не только императивщина и «хвостовая рекурсия», но и почти уверено отличает CL от sheme.

А вот в России народ выучил слова «нанотехнологии», «нанотрубки», «нанороботы» и «Сколково». И что? От этого ситуация не меняется: на Западе нанотехнологии - вполне рядовая ниша инженерных дисциплин, а в России - мыльный пузырь.

Так и с лиспом.

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

> только java дает все фичи на полную катушку, в остальном кроме автодополнения ничего особо такого не заметил.

Ну, у «всего остального», наверное, и нет такой «катушки», как у Java?

> К стати, а Python можно в байткод закомпилировать, для пущей проиводительности?

В байт-код оно вроде и так компилится. А вот компилировать на лету в мойшинный код (aka JIT, как раз для пущей производительности) вроде бы умеет Psyco. Алсо, есть много разных подвижек в области JIT для Python, о которых вам с удовольствием расскажет камрад tailgunner.

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

И да, реквестирую сюда матерых лиспарей с безапелляционным заявлением: «операционные системы, библиотеки, системный софт, сетевые сервисы, СУБД, КИС, десктопный софт, расчетные пакеты, рейтрейсеры - не нужны!» - без этого анамнез будет неполным :)

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

вполне рядовая ниша инженерных дисциплин, а в России - мыльный пузырь


На одном деме была подпись «Скольково: 7000 чиновников и 3 инноватора» В командно-административной системе иначе нельзя, у кормушки греться проще, чем сидеть 10 лет формулы зубрить и чертежи чертить

Вот если б у нас были свободные выборы....

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

>> Количество библиотек штука относительная. Некоторая часть вещей при преходе на CL просто ужимаются до пары сотен заточеных под задачу строк, которые в бибилиотку выделятьне не всегда осмысленно. А документация часто вобще нафиг не нужна лиж бы docstring-и писали.

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

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

>> Но с отколом SBCL году так в 2004 постепенно начнается вторая волна CL

С отколом от чего? Пришли два чувака, форкнули CMUCL и все. Реализация, которая за 6 лет так и не смогла допилить порт под Винду до нормального состояния.

Common Lisp и Ada разрабывалилсь по заказу и ради U.S.Army что наложило отпечатк на их схожую судьбу

Насчет Ada не скажу, а вот Лисп _стандартизировался_ под эгидой американской военщины, стандарт открыт. Бери да реализуй, только занялись этим почему-то только в начале 2000-х.

Выросшие на обломках Franz-Allegro и LispWorks

Franz Lisp существовал еще тогда, когда CL даже в планах не было. Псоле стандартизации Franz перешел на CL, ибо собственный диалект стал не нужен.

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