Re[11]: Практическое применение
От: gandalfgrey  
Дата: 18.09.06 13:26
Оценка:
Здравствуйте, Alex EXO, Вы писали:

AE>Все же java очень сильно располагает к писанию в стиле "стадо бизонов, несущееся по прериям..."

AE>... в смысле "смотреть не надо, думать — тоже... надо трясти".
То-есть все ж сам язык предрасполагает ? Или просто укрепилась некая порочная традиция ?
Re[10]: Практическое применение
От: Cider Россия  
Дата: 18.09.06 13:53
Оценка:
Здравствуйте, Gaperton, Вы писали:

C>>Можно сказать, что на ней как правило работают менее квалифицированные программисты, чем на Эрланге.


G>С какой стати? Эрланг существенно проще явы — нет там никакого "порога вхождения", и в Эриксоне на Эрланге пишут те же самые люди, что и на яве с С — т.е. самые обыкновенные. AXD301 писали две сотни самых обыкновенных программеров.


Ответ заодно и gandalfgrey.
Возможно, Эрланг и проще (я, вообще, в ФП слаб весьма, поэтому спорить не буду ). Но это не важно, на яве просто больше программистов, и их средний уровень неизбежно ниже.
При всей практичности ФЯ, они — диковина, которую можно с интересом поковырять. А интересом к ковырянию обладают, как правило, неглупые люди. Вот и объяснение.
Cider
Re[11]: Практическое применение
От: gandalfgrey  
Дата: 18.09.06 14:01
Оценка: +1
Здравствуйте, Cider, Вы писали:

C>Возможно, Эрланг и проще (я, вообще, в ФП слаб весьма, поэтому спорить не буду ). Но это не важно, на яве просто больше программистов, и их средний уровень неизбежно ниже.

C>При всей практичности ФЯ, они — диковина, которую можно с интересом поковырять. А интересом к ковырянию обладают, как правило, неглупые люди. Вот и объяснение.
Вот уж нет ! мои нынешние подчиненные — люди, совершенно несклонные к ковырянию чего-либо ради собственного интереса. Однако это не мешает им вполне прилично писать на Ерланге и на Тикле. Ежели бы проект был на ++, к примеру, то было бы просто затруднительно найти подходящих по уровню людей. А так — взяли ! и полетело ! 8)
Re[12]: Практическое применение
От: Курилка Россия http://kirya.narod.ru/
Дата: 18.09.06 14:08
Оценка:
Здравствуйте, gandalfgrey, Вы писали:

G>Вот уж нет ! мои нынешние подчиненные — люди, совершенно несклонные к ковырянию чего-либо ради собственного интереса. Однако это не мешает им вполне прилично писать на Ерланге и на Тикле. Ежели бы проект был на ++, к примеру, то было бы просто затруднительно найти подходящих по уровню людей. А так — взяли ! и полетело ! 8)


А можно чуть подробней, где вы Эрланг применяете? Можно в приват (т.е. мылом).
Re[13]: Практическое применение
От: gandalfgrey  
Дата: 18.09.06 14:24
Оценка: 31 (6)
Здравствуйте, Курилка, Вы писали:

К>А можно чуть подробней, где вы Эрланг применяете? Можно в приват (т.е. мылом).

Ничего потаенного тут нет.
раньше я на нем писал всякую телеметрию. не телекомовскую, а приборную — удаленный сбор и обработка данных энерго-/водо-/прочего потребления.
Сейчас — действительно крупный проект, распределенная система обработки муниципальной ( и не только ) информации. Процессор правил, скрипты на своем языке, гибкая логика...Понятно, что повышенная надежность и уменьшенная ресурсоемкость, ибо у клиентов обычно стоят тухленькие машинки
Делаем собственно движок ( который практически закончен — разве что новые фичи добавляем ) и обвязку для конкретной области применения — Паспортный Стол.
Сервер на Ерланге, со встроенными языками скриптов и описания форматов запросов.
Клиент на Тикле. Правда, мы его мутировали практически в Смоллток путем написания небольшого фреймворка.
Заказчики пищат и алчут ! Очередь уже не малая выстроилась.
Затраты на разработку : чуть меньше 4 человеколет. Оценить оные затраты для других платформ я не берусь.
Вот...Ежели есть вопросы — то пожалуйста.
Re[14]: Практическое применение
От: Курилка Россия http://kirya.narod.ru/
Дата: 18.09.06 14:34
Оценка:
Здравствуйте, gandalfgrey, Вы писали:

G>Делаем собственно движок ( который практически закончен — разве что новые фичи добавляем ) и обвязку для конкретной области применения — Паспортный Стол.

G>Сервер на Ерланге, со встроенными языками скриптов и описания форматов запросов.
А зачем ещё скрипты не на эрланге?
Какие-то отдельные правила обработки запросов?
А DSL (насоклько я понимаю у вас это он и выходит) на Эрланге использовать насколько удобно?

G>Клиент на Тикле. Правда, мы его мутировали практически в Смоллток путем написания небольшого фреймворка.

А почему именно тикль? Из каких соображений принималось решение?

G>Вот...Ежели есть вопросы — то пожалуйста.

Эрлангеры не нужны?
Re[13]: Практическое применение
От: gandalfgrey  
Дата: 18.09.06 14:35
Оценка:
Здравствуйте, Курилка, Вы писали:

К>А можно чуть подробней, где вы Эрланг применяете? Можно в приват (т.е. мылом).

Вдогонку :
Кроме Ерланга и Тикля, была еще неделя работы на Це — это когда я писал package для Тикля, чтоб он по нативному ерланговскому протоколу общаться мог. Благо либы шли в поставке OTP Erlang, мне пришлось только к стаб написать
Re[14]: Практическое применение
От: Курилка Россия http://kirya.narod.ru/
Дата: 18.09.06 14:37
Оценка:
Здравствуйте, gandalfgrey, Вы писали:

G>Здравствуйте, Курилка, Вы писали:


К>>А можно чуть подробней, где вы Эрланг применяете? Можно в приват (т.е. мылом).

G>Вдогонку :
G>Кроме Ерланга и Тикля, была еще неделя работы на Це — это когда я писал package для Тикля, чтоб он по нативному ерланговскому протоколу общаться мог. Благо либы шли в поставке OTP Erlang, мне пришлось только к стаб написать

Т.е. интеграция была сделана без особых проблем при том, что как таковой её в эрланге нет?
Re[15]: Практическое применение
От: gandalfgrey  
Дата: 18.09.06 14:45
Оценка: 17 (2)
Здравствуйте, Курилка, Вы писали:

К>А зачем ещё скрипты не на эрланге?

А потому, что они ПОЛЬЗОВАТЕЛЬСКИЕ. Сиречь — наладчики и сисадмины потребителей смогут их писать/дописывать/переписывать. И ориентированы они на модель представления и взаимодействия знаний.

К>Какие-то отдельные правила обработки запросов?

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

К>А DSL (насоклько я понимаю у вас это он и выходит) на Эрланге использовать насколько удобно?

Весьма ! Обсуждение и формирование синтаксиса в бумажном виде заняло в 5 раз больше времени. ДСЛ при помощи комбинаторов генерит лямбду, коя и выполняется затем.

К>А почему именно тикль? Из каких соображений принималось решение?

Простота и скорость написания довольно сложного ГУЯ, легкость в освоении. Ну, и малая ресурсоемкость. На одной из машин у заказчика стоит 24 мега памяти. Тормозов нет 8)). К тому же — не нужна инсталляция

К>Эрлангеры не нужны?

Вот сдадим пилотный проект, и посмотрим !
Re[15]: Практическое применение
От: gandalfgrey  
Дата: 18.09.06 14:49
Оценка: 23 (2)
Здравствуйте, Курилка, Вы писали:

К>Т.е. интеграция была сделана без особых проблем при том, что как таковой её в эрланге нет?

Готовой — нет, но есть либа, реализующая ерланговский протокол на C.
А для тикля есть крайне полезная вещь CRITCL, которая позволяет писать С/С++ код прямо внутри тиклевого, и после препроцессинга получать package со всеми стабами, сгенерированными автоматически. Очень удобно.
А проблем — нет.
Re[16]: Практическое применение
От: Курилка Россия http://kirya.narod.ru/
Дата: 18.09.06 14:52
Оценка:
Здравствуйте, gandalfgrey, Вы писали:

G>Здравствуйте, Курилка, Вы писали:


К>>А DSL (насоклько я понимаю у вас это он и выходит) на Эрланге использовать насколько удобно?

G>Весьма ! Обсуждение и формирование синтаксиса в бумажном виде заняло в 5 раз больше времени. ДСЛ при помощи комбинаторов генерит лямбду, коя и выполняется затем.
А общедоступных примеров такого нет в интернете, не знаешь? Как-то эрланг до сих пор с ДСЛ не ассоциировался у меня.

К>>А почему именно тикль? Из каких соображений принималось решение?

G>Простота и скорость написания довольно сложного ГУЯ, легкость в освоении. Ну, и малая ресурсоемкость. На одной из машин у заказчика стоит 24 мега памяти. Тормозов нет 8)). К тому же — не нужна инсталляция
Интересно.
Надо почитать на досуге, просветиться, а то кроме того, что есть такое даже особо и не знаю к своему стыду

К>>Эрлангеры не нужны?

G>Вот сдадим пилотный проект, и посмотрим !

Где читать новости об этом?
Re[17]: Практическое применение
От: gandalfgrey  
Дата: 18.09.06 14:59
Оценка:
Здравствуйте, Курилка, Вы писали:

К>А общедоступных примеров такого нет в интернете, не знаешь? Как-то эрланг до сих пор с ДСЛ не ассоциировался у меня.

Да полно ! Ссылок не сохранил,но, думаю, найдешь без труда. Ключевые слова yecc ( генератор парсеров ) и leex ( генератор токенайзеров )

К>Интересно.

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

К>Где читать новости об этом?

Где-то у нас была вики..Да сюда же и кину новость ! Скоро, скоро...
Re[12]: Практическое применение
От: Alex EXO http://aleksandr-zubarev.moikrug.ru/
Дата: 19.09.06 04:52
Оценка:
Здравствуйте, gandalfgrey, Вы писали:

G>Здравствуйте, Alex EXO, Вы писали:


AE>>Все же java очень сильно располагает к писанию в стиле "стадо бизонов, несущееся по прериям..."

AE>>... в смысле "смотреть не надо, думать — тоже... надо трясти".
G>То-есть все ж сам язык предрасполагает ? Или просто укрепилась некая порочная традиция ?

В java скорее традиция... а язык — не бъет по рукам.
То есть он как раз бьет... но разработчикам. И создает некоторую халяву прожект манагерам
(та же заточенность под рефакторинги выливается порой в "а нафига думать над постановкой").
Re[18]: Практическое применение
От: Alex EXO http://aleksandr-zubarev.moikrug.ru/
Дата: 19.09.06 05:01
Оценка:
Здравствуйте, gandalfgrey, Вы писали:
К>>Надо почитать на досуге, просветиться, а то кроме того, что есть такое даже особо и не знаю к своему стыду
G>Весьма рекомендую. Как говорится, дешево и сердито 8))

По поводу tcl/tk...
Не так давно ту же либу поддержали в Ruby.
Посмотрел, передрано один в один, даже дополнительные скриптовые контролы воспроизведены под теми же именами.
Так что вот — более привычная альтенатива, с объектностью и всем прочим.
Правда работает несколько меделнне — раза в 2,5... но если у клиента нормальные компы — не критично.
Re[19]: Практическое применение
От: FR  
Дата: 19.09.06 06:05
Оценка:
Здравствуйте, Alex EXO, Вы писали:

AE>По поводу tcl/tk...

AE>Не так давно ту же либу поддержали в Ruby.
AE>Посмотрел, передрано один в один, даже дополнительные скриптовые контролы воспроизведены под теми же именами.
AE>Так что вот — более привычная альтенатива, с объектностью и всем прочим.
AE>Правда работает несколько меделнне — раза в 2,5... но если у клиента нормальные компы — не критично.

Tk на очень многих языках подерживается, есть даже биндинг на С++ (эмуляция tcl на шаблонах ).
Мне больше всего понравилось как сделано в питоне (tkinter) вот там на самом деле объектностость очень по месту и удобно использовать. Хотя руби вариант еще не видел нужно посмотреть.
Re[20]: Практическое применение
От: Alex EXO http://aleksandr-zubarev.moikrug.ru/
Дата: 19.09.06 06:41
Оценка:
Здравствуйте, FR, Вы писали:
FR>Tk на очень многих языках подерживается, есть даже биндинг на С++ (эмуляция tcl на шаблонах ).

Вот в том то и дело, что на шаблонах... Обычно интегрируют только сам Tk. Это просто.
Но это очень мало. Это только низкоуровневое ядро.
Очень много возможностей в tcl/tk над ним на скриптах и дополнительных библиотеках.
Нужны еше как минимум:
— база опций (чтобы не зашивать цвета шрифты и прочее в код)
— tktable
— blt

В Ruby это все перенесли (и еще кучу разности), как в питоне — не знаю...
Re[21]: Практическое применение
От: FR  
Дата: 19.09.06 07:28
Оценка:
Здравствуйте, Alex EXO, Вы писали:

AE>Здравствуйте, FR, Вы писали:

FR>>Tk на очень многих языках подерживается, есть даже биндинг на С++ (эмуляция tcl на шаблонах ).

AE>Вот в том то и дело, что на шаблонах... Обычно интегрируют только сам Tk. Это просто.

AE>Но это очень мало. Это только низкоуровневое ядро.
AE>Очень много возможностей в tcl/tk над ним на скриптах и дополнительных библиотеках.
AE>Нужны еше как минимум:
AE>- база опций (чтобы не зашивать цвета шрифты и прочее в код)

Не совсем понял, имеешь в виду типа такого Button(background = "red").pack()?

AE>- tktable


это есть, насколько помню на sourceforge сразу с питоновским модулем идет (кстати многие Tk бибиотеки идут сразу с биндингом на питон, тот же Tix например)

AE>- blt


?

AE>В Ruby это все перенесли (и еще кучу разности), как в питоне — не знаю...


В питоне вроде можно найти практически все что есть под tcl.
Re[22]: Практическое применение
От: Alex EXO http://aleksandr-zubarev.moikrug.ru/
Дата: 19.09.06 07:47
Оценка:
Здравствуйте, FR, Вы писали:

AE>>- база опций (чтобы не зашивать цвета шрифты и прочее в код)

FR>Не совсем понял, имеешь в виду типа такого Button(background = "red").pack()?

Я я имею в виду вынесение настроек в базу данных опций (на основе чего шикарно делаются "темы").
Для твоего примера — так:

MyApp.*.modal_dlg.*.Button bg red
MyApp.*.modal_dlg.*.Button fg black


то есть "для всех объектов класса Button, лежащих в поддереве modal_dlg..."
Re[23]: Практическое применение
От: night beast СССР  
Дата: 19.09.06 07:55
Оценка: +1
Здравствуйте, Alex EXO, Вы писали:

AE>>>- база опций (чтобы не зашивать цвета шрифты и прочее в код)

FR>>Не совсем понял, имеешь в виду типа такого Button(background = "red").pack()?

AE>Я я имею в виду вынесение настроек в базу данных опций (на основе чего шикарно делаются "темы").

AE>Для твоего примера — так:

AE>MyApp.*.modal_dlg.*.Button bg red

AE>MyApp.*.modal_dlg.*.Button fg black

а загружаются они случайно не так: "option readfile $filename"?
если да, то у питона с этим проблем быть не должно, т.к. он является оберткой над тк.
Re[22]: Практическое применение
От: Alex EXO http://aleksandr-zubarev.moikrug.ru/
Дата: 19.09.06 08:05
Оценка:
Здравствуйте, FR, Вы писали:

AE>>- blt


FR>?


<b>здесь</b>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.