Re[7]: Ваше отношение к языку Scala
От: mkizub Литва http://symade.tigris.org
Дата: 09.06.07 11:43
Оценка:
Здравствуйте, mini_root_2, Вы писали:

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


M>>http://www.rsdn.ru/Forum/message/2520182.aspx

M>>http://www.symade.org/
M>>http://www.symade.com/

__>Ну хорошо если отбросить философствование на тему "Писать самому семантические деревья это круто потому что......", то по сути предлагается писать программы на очередном языке еше более высокого уровня (который в принципе можно обпилить под себя), который потом неким таинственным (или не очень) образом может превращаться во что угодно: в исходники на другом языке, в байт код и т.д.


Я не знаю, можно ли лисп считать языком высокого уровня.
Лисп — это язык мета-программирования. Можно работать на любом уровне, который вы описали через конструкции лиспа.
SOP в этом смысле — полная аналогия лиспа.

__>В результате получаем холявный DSL и пр. радость...

__>Сразу высплывает несколько моментов:
__>1. Допустим Вы сделали свой собственный DSL идеально описывающий вашу предметную область,
__>(кстати а можно ли считать квази-DSL'ем просто библиотеку где классы названы соответствующим образом (Поставщик, Продажа и т.д.) + перегружены все операторы?)
__>а потом вам вдруг потребовалось прикрутить что-то стороннее, какие варинаты?:

Приведите пример постороннего, я не въехал.

__> — использовать как есть — но тогда нарущится концепция "нашего маленького самопального языка".

__> — сваять обертку — это будет покруче чем строительство комунизма, я там одним глазом посмотрел простенький и маленький пример (типа сделай DSL своими кривыми ручками) — "всего" >500 строк кода (поправьте если ошибаюсь) — если на каждый чих ваять по пол тыщи строк то где же экономия от DSL, если же появяться некие общепринятые стандартные DSL и подогнанные под них фреймворки, то мы вернемся к тому же что имеем сейчас только на более высоком уровне (ведь найдутся люди которых и они не устроят)

СОП не есть DSL программирование. Он включает в себя как создание DSL, так и расширение уже имеющихся.

__>2. В чем прниципиальная новизна? Ведь созданный DSL все равно так или иначе будет ложиться

__>на одну из существущих парадигм программирования (ООП, ФП и д.р.).

В СОП нет ничего принципиально нового. Как нет ничего принципиально нового в ООП. И инкапсуляция, и полиморфизм, и наследование — всё это было и раньше.

__>3. Сугубо практические моменты:

__> — реальная применимость (где? зачем? в чем преимущество?)
Да везде.
__> — наличе библиотек (или возможность цеплять сторонние)
Библиотек чего? Библиотек семантических понятий? Их ещё нет.
__> — наличие среды разработки
Пишется.
__> — наличие литературы
Напишите

Полностью предполагается написать
а) Среду разработки. Вот она сейчас и пишется, SymADE.
б) Библиотеки семантических понятий.
в) Расширяемой VM построенной на принципах SOP — то есть не байткод, а опять же дерево.

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

__>P.S. Хотя возможно в будущем из этого что-нибудь да получится, только вот расчитывать на очередную серебрянную пулю я бы не стал...

Все говорят про серебрянную пулю, хотя там прямым текстом написано "это не панацея".
SOP & SymADE: http://symade.tigris.org , блог http://mkizub.livejournal.com
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.