LINUX.ORG.RU

Common Lisp и CORBA


0

1

Подскажите ORB для Common Lisp. Надо чтобы поддерживал хотя бы CORBA 3.0 и умел SSLIOP и HTIOP. Обнаруженный мной CLORB ничего этого не поддерживает и уже пять лет как не обновлялся

обязательно CORBA?

у меня вон есть биндинги к COM(ну и в т.ч. DCOM), правда пока не совсем допиленные.

lovesan

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

Да, обязательно CORBA :( имеет место интеграция с 3rd party системой, там с десятка два интерфейсов выставлены по CORBA, других интерфейсов нет

Ignatik
() автор топика

LispWorks

http://www.lispworks.com/products/corba.html

LispWorks ORB™

LispWorks ORB provides a complete distributed computing solution for Common Lisp. Developed by the Object Management Group (OMG), CORBA® supports the integration of components written in a variety of languages running on all major platforms. This allows enterprise developers to choose the right tool for each part of a project, and provides new opportunities for the integration of advanced languages such as Common Lisp into distributed solutions. It is also ideal for organizations seeking to integrate applications with the Internet and with existing bodies of code.

A sample demonstration developed by Harlequin included components written in C++, Dylan, Common Lisp, and Java, as well as the Microsoft Access database and Netscape Navigator Web browser. The system was distributed across Windows and UNIX workstations, and provided custom GUI interfaces as well as browser-based interfaces.
A Complete CORBA Solution

LispWorks ORB includes everything needed to develop and deploy CORBA solutions.

* An integrated Interface Definition Language (IDL) compiler, for importing CORBA interfaces into Common Lisp programs.
* A complete Object Request Broker (ORB), for deploying CORBA solutions.
* Support for version 2.0 of CORBA as well as relevant portions of the 2.2 standard.
* Support for the Portable Object Adapter (POA).
* Support for the Internet InterOrb Protocol (IIOPTM).
* Support for Dynamic Invocation Interfaces (DII).
* Support for Dynamic Skeleton Interfaces (DSI).
* Full Lisp binding, compliant with the Common Lisp Language Mapping OMG Document orbos/99-05-18

Because CORBA is a vendor-neutral standard, solutions developed with LispWorks ORB will interoperate with other CORBA ORBs.

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

да, и не забудь наскребсти $4500 для LispWorks Enterprise

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

Allegro CL тоже только версию 2.2 поддерживает.

Если мой склероз не подводит, то 3.0 вообще в принципе мало что поддерживает.

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

была бы corba 3.0 нужна, коммерческие реализации давно бы ее прикрутили. Значит никому oна не нужна.

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

была бы corba 3.0 нужна, коммерческие реализации давно бы ее прикрутили. Значит никому oна не нужна.

Я имею в виду не только CL, а вообще все языки и библиотеки.

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

> была бы corba 3.0 нужна, коммерческие реализации давно бы ее прикрутили.

Так её и прикрутили, уже давно. IBM, Oracle, все мажорные вендоры прикрутили.

Значит никому oна не нужна.


«Не поддерживается Лиспом - значит не нужна?» Не в первый раз уже это слышу...

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

> Если мой склероз не подводит, то 3.0 вообще в принципе мало что поддерживает.

Я имею в виду не только CL, а вообще все языки и библиотеки.


И вы туда же? Может проще признаться, что с серьёзными информационными системами не имели дела?

CORBA 3.0 POA, CORBA 3.0 Object-by-value, CORBA 3.0 Realtime, CORBA 3.0 Asynchronous Messaging - давно стандарт де-факто в интеграции. Вон даже в Java её прикрутили, как только вышел стандарт. Зачем, спрашивается, раз оно не нужна?

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

И вы туда же? Может проще признаться, что с серьёзными информационными системами не имели дела?

Не имел. Панковский opensource корбу 3.0 плохо любит.

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

> Не имел.

Может, тогда стоит воздержаться от высказывания некомпетентного мнения?

Панковский opensource корбу 3.0 плохо любит.


«Панковский» - это какой? Если чо, Java - opensource. Реализует CORBA 3.0.

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

Зачем, спрашивается, раз оно не нужна?

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

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

Может, тогда стоит воздержаться от высказывания некомпетентного мнения?

От какого? Кто из оупенсорса поддерживает корбу 3.0, чтобы её можно было свободно использовать?

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

> CORBA 3.0 POA, CORBA 3.0 Object-by-value, CORBA 3.0 Realtime, CORBA 3.0 Asynchronous Messaging - давно стандарт де-факто в интеграции. Вон даже в Java её прикрутили, как только вышел стандарт. Зачем, спрашивается, раз оно не нужна?

ну и пиши на своем ынтырпрайзе, зачем тебе Common Lisp?

Common Lisp тебе не нужен, судя по твоим топикам. EPIC FAIL.

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

> От какого?

От некомпетентного.

Кто из оупенсорса поддерживает корбу 3.0, чтобы её можно было свободно использовать?


Java.

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

> ну и пиши на своем ынтырпрайзе, зачем тебе Common Lisp?

Хотел, знаете, попробовать нормальный язык.

Common Lisp тебе не нужен


Значит, всё-таки Common Lisp непригоден для enterprise? Жалко.

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

> Может тогда заменить CL на clojure?

А Clojure поддерживает макросистему в такой же мере, как CL? А CLOS и MOP? А инкрементальную разработку?

И потом, всё-таки хочется избавиться от зла в лице JVM

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

Ещё The Ace ORB поддерживает CORBA 3.0, для C++. Тоже opensource.

Как, уже поддерживает? Не прошло и десяти лет :)

Ну так что, какое мнение-то?

Корба не нужна.

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

> Пригоден. Это COBRA мало для него пригодна.

Плохая, плохая CORBA! Значит, интеграция гетерогенных приложений «не пригодна» для Common Lisp? И да, научитесь всё-таки правильно писать термины, о которых пытаетесь дискутировать. Неплохо бы также понимать смысл этих терминов

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

> Это COBRA мало для него пригодна.

Вообще, так можно сказать про любую «фичу», неподдерживаемую Common Lisp, например:
Система типов и строгая типизация не пригодны для Common Lisp
Multithreading под Windows не пригоден для SBCL
Процессоры SPARC не пригодны для SBCL
uint64 на x86 не пригоден для Common Lisp
и так далее... самому-то не смешно?

Это не вы ли тут кстати как-то говорили, что парсинг аргументов командной строки в лиспе не нужен, потому что лисп якобы «работает по-другому»? Не удивлюсь...

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

> Корба не нужна.

Поправлю: не нужна конкретно вам. Потому что вы не вылазите за рамки своего уютного мирка, где вы на лиспе только и делаете что расставляете бутылки (образно выражаясь).

Нет, я конечно всё понимаю, в Lisp-парадигме «гетерогенных систем» просто не существует: всё обязано быть написано на Лиспе. Но реальность не такова. Реальность такова, что есть data processing написанный третьей стороной на C++. Он устраивает абсолютно всем: функциональностью, производительностью, временем отклика, поддержкой и своевременным добавлением новых фич по требованию. Нужно только одно: интегрироваться с этой системой. И Java справляется с этим на 100%, благодаря встроенной поддержке CORBA 3.0. А лисп не справляется. При этом вы с Архимагом (извиняюсь, два хрена с горы) пытаетесь с умным видом доказать сотне авторов и тысячам пользователей системы, что CORBA не нужна.

Может, пора вылезти из своего уютного идеалистического мирка, в реальный мир? Много нового узнаете. Например, то, что существуют и другие языки программирования, кроме лиспа, и что они занимают своё (вполне достойное) место в этом мире. И с этим надо считаться.

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

Поправлю: не нужна конкретно вам.

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

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

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

> Может, пора вылезти из своего уютного идеалистического мирка, в реальный мир? Много нового узнаете. Например, то, что существуют и другие языки программирования, кроме лиспа

Чото я не понял... ты на CL пишешь или «кроме»?

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

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

И из этого делаете общий вывод о ненужности CORBA, в том числе в Common Lisp? Браво...

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


А ничего, что «легаси-система» датируется всего-навсего 2007 годом? И те, кто выбрал CORBA в качестве интерфейса для внешнего мира, отдавали себе в этом отчёт, уж поверьте мне. Просто они делали расчёт на мейнстрим...

Искренне жаль.


Искренне жалеть пока надо только меня, потому что у наших Java и С++ программистов, не берущих звёзд с неба, всё в порядке :)

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

> Чото я не понял... ты на CL пишешь или «кроме»?

Я писал на Java и на C++. Осознав ограниченность этих языков, захотел попробовать язык более мощный и гибкий. В той же среде. Но, как видите, пока не очень успешно...

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

И из этого делаете общий вывод о ненужности CORBA, в том числе в Common Lisp? Браво...

Абсолютно верно! Если корбой никто не пользуется, то она никому не нужна.

Идея использования remote objects в гетерогенных средах, в целом, провалилась из-за своей сложности. Для мессейджинга есть решения проще. Для сериализации/десериализации данных есть решения проще. Для RPC есть решения проще. Места корбе под солнцем в современном мире нет.

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

Я писал на Java и на C++. Осознав ограниченность этих языков, захотел попробовать язык более мощный и гибкий. В той же среде. Но, как видите, пока не очень успешно...

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

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

Но, как видите, пока не очень успешно...

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

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

Я под виндой использую CL вместе с .NET и COM-компонентами, не говоря уже про чисто сишные библиотеки, в т.ч. собственно интерфейсы винды, типа DirectX. Так что, могу на собственном примере сказать, с интеграцией CL с другими системами проблем, в принципе, нет.

Но вот зачем нужна именно CORBA и именно 3я(вот это особенно непонятно), я понять не могу, если честно.

Да, возможно, библиотеки на эту тему нет. Но, нахрена именно оно нужно?

lovesan

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

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

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

> Идея использования remote objects в гетерогенных средах, в целом, провалилась из-за своей сложности. Для мессейджинга есть решения проще. Для сериализации/десериализации данных есть решения проще. Для RPC есть решения проще. Места корбе под солнцем в современном мире нет.

а для распределенных транзакций есть решения проще?

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

Два вопроса:

1. Насколько просто взять её и начать разрабатывать ПО для продакшена? Или надо будет на её основе реализовывать передачу ID транзакции, реализовывать 2pc протокол, и вобще заниматься несвязанными с проектом задачами?

2. Насколько она стабильная? Я увидел две версии в репозитории : rev-116 и rev-99. Это как-то даже не смешно

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

> Процессоры SPARC не пригодны для SBCL

Что не так с процессорами SPARC и SBCL?

Когда я проверял последний раз, все было отлично.

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

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

1) Относительно просто на основе построить, что тебе надо 2) Стабильней большинства библиотек CL

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

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

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

Относительно просто на основе построить, что тебе надо

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

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

Строили.

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

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

> Абсолютно верно! Если корбой никто не пользуется, то она никому не нужна.

Окей, я передам в комитет OMG, разработчикам Java в Oracle, в IBM, в Artemis, в Европейский Институт Биоинформатики, в Лос-Аламосскую Национальную Лабораторию, а также всем сотрудникам и разработчиками нашей организации, что они - никто :)))

Идея использования remote objects в гетерогенных средах, в целом, провалилась из-за своей сложности. Для мессейджинга есть решения проще. Для сериализации/десериализации данных есть решения проще. Для RPC есть решения проще.


Например?

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

> У тебя с такими требованиями любой язык будет плохой, если корбы 3.0 для него не будет.

Вы невнимательно читаете. Было написано «в той же среде». В среде, в которой Java и C++ чувствуют себя абсолютно комфортно.

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

> Да ты даже и не пробовал.

Вы вообще в курсе, что реализации обычно предшествует выбор и оценка технологий? Или вы из тех, кто сразу садится лабать на лиспе, независимо от обстоятельств? Мол, «а потом как-нибудь на анафорических лямбдах наклепаю интеграцию»?

Будь у тебя хоть какая-то мотивация, вместо зелени


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

выставил корбушный интерфейс через рест.


Вы всерьёз считаете REST полноценной заменой remote objects? Для CosNaming и CosTransactions тоже предлагаете «проксю на жабке» делать?

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

> Но вот зачем нужна именно CORBA и именно 3я(вот это особенно непонятно), я понять не могу, если честно.

Ну сто раз же писал уже: POA, Object-by-value, Realtime, Asynchronous messaging

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