Дарней,
E>>Можно ли попросить поделиться причинами выбора именно этих языков? И что ты от них ожидаешь? Д>прежде всего, наверно, возможность использовать Lisp-style макросы Д>плюс интеграция с .NET Д>плюс лямбда и прочие вкусности
А от лямбд до функций высшего порядка один шаг. Наличие функции высшего порядка позволило бы создать mapcar, только вот списков нет. Да и другие операции со списками тоже спать не дадут. Потом возникнет мысль "а что это я всё руками да руками, давай-ка я это один раз в общем виде забабашу, а компилер мне нашинкует чего надо... Чё компилятор не понимает полиморфные типы, что ли? Вот же !" И так захочется полиморфных типов, просто жуть (как известно, чего нет, того хочется больше всего). Ну а хотя бы синтаксис настраивать можно? И т.д. и т.п.
Наконец, придёт озарение: "Чёрт меня дёрнул связаться с этими скалами, лучше бы брал сразу Лисп..."
Здравствуйте, Lazy Cjow Rhrr, Вы писали:
LCR>А от лямбд до функций высшего порядка один шаг. Наличие функции высшего порядка позволило бы создать mapcar, только вот списков нет. Да и другие операции со списками тоже спать не дадут. Потом возникнет мысль "а что это я всё руками да руками, давай-ка я это один раз в общем виде забабашу, а компилер мне нашинкует чего надо... Чё компилятор не понимает полиморфные типы, что ли? Вот же !" И так захочется полиморфных типов, просто жуть (как известно, чего нет, того хочется больше всего). Ну а хотя бы синтаксис настраивать можно? И т.д. и т.п.
я сам еще не разобрался толком, что там есть а чего нет. Потому и спрашиваю
Но функции высшего порядка в Nemerle вроде бы есть.
LCR>Наконец, придёт озарение: "Чёрт меня дёрнул связаться с этими скалами, лучше бы брал сразу Лисп..."
интересно, а есть реализации CLOS для .NET? хотя у Лиспа синтаксис очень уж непривычен
... << RSDN@Home 1.1.4 stable rev. 510>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[5]: кто-нибудь уже пробовал писать на Scala или Nemerle?
I think the language design and syntax is fantastic. I found nothing came close in terms of being able to express objects and functions without clutter. I simply cannot praise the cleanliness of scala enough.
The drawbacks for me were:
1 — implementation on .net and Java VMs gives you process/threading oriented limitations of those VMs.
2 — few libraries/frameworks that take advantage of the scala. Just wrappering Java libraries will bleed through to your program design. My main reason for going through a thorough language review before starting my new projects was I was really tired of Java and the like.
While you can still use Scala as a nice language for
development from scratch, reusability will hinge on the
degree to which people adopt new ways of thinking.
Scala is a language worth keeping an eye on, though, IMO.
The problem with Scala is that it doesn't have atoms.
Хотя это объезжается
I don't think that this is a problem at all in Scala,
thanks to Scalas built-in quote mechanism.
Concurrency in Scala is provided by the underlying
backend, at the moment either the JVM or the CLRE, which is assumed
to provide a thread model compatible with the thread model of Java.
A disadvantage is that threads in most Java implementations
are not very lightweight, and starting new threads as well as
context switching between them can be relatively slow.
Ещй один товарищ, который учавствовал в разработке Скалы.
Длиннющий пост, в котором он эмулирует почти полностью (!) синтаксис и семантику Эрланга: процессы, асинхронная передача сообщений, линки и прочее. Для меня это было небольшим шоком. (Правда, не без ньюансика одного, если интересно расскажу).
Заканчивает это следующим:
Anyway... Scala is a really cool language and I encourage you all to try it out, you just might like it as much as I do. Still, though, I am back in the Erlang world now, and I'm loving every minute of it.
/Erik Happi Stenman
Просьба не воспринимать это как рекламу Эрланга, из песни слов не выкинешь...
Здравствуйте, Дарней, Вы писали:
Д>хочу попробовать заюзать один из сабжей в своем проекте, но сначала хотелось бы узнать о возможных граблях Д>Кто-нибудь пробовал? Какие впечатления?
Скажу чесно, если бы Скала полноценно работала поверх второго фрэймворка, то я бы с удовольствием на ней попрограммировал. Многие идеи красивые.
... << RSDN@Home 1.2.0 alpha rev. 628>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: кто-нибудь уже пробовал писать на Scala или Nemerle?
Здравствуйте, Дарней, Вы писали:
Д>прежде всего, наверно, возможность использовать Lisp-style макросы Д>плюс интеграция с .NET Д>плюс лямбда и прочие вкусности
Интеграция с .NET там через Яву, то есть через ж.
... << RSDN@Home 1.2.0 alpha rev. 628>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: кто-нибудь уже пробовал писать на Scala или Nemerle?
Здравствуйте, Lazy Cjow Rhrr, Вы писали:
LCR>А от лямбд до функций высшего порядка один шаг.
Я бы даже сказал наоборот. Вот в C# 1.x лямбд небыло, а функции высшего порядка поддерживались.
LCR> Наличие функции высшего порядка позволило бы создать mapcar,
Ага. Охринительное решение всех проблем программирования.
LCR>только вот списков нет.
Ага. Непреодолимые технические трудности по их реализации.
Кстати, в Скале (не скажу за Немерел) встроенные списки имеются. И даже спец-синтаксис для работы с ними.
LCR> Да и другие операции со списками тоже спать не дадут. Потом возникнет мысль "а что это я всё руками да руками, давай-ка я это один раз в общем виде забабашу, а компилер мне нашинкует чего надо... Чё компилятор не понимает полиморфные типы, что ли? Вот же !" И так захочется полиморфных типов, просто жуть (как известно, чего нет, того хочется больше всего). Ну а хотя бы синтаксис настраивать можно? И т.д. и т.п.
LCR>Наконец, придёт озарение: "Чёрт меня дёрнул связаться с этими скалами, лучше бы брал сразу Лисп..."
LCR>Шутка
Ты прежде чем "шутить" в следующий раз хотя бы общее описание языков, о которых собрался по говорить, прочти. А то смешен скорее ты.
... << RSDN@Home 1.2.0 alpha rev. 628>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: кто-нибудь уже пробовал писать на Scala или Nemerle?
VladD2,
LCR> Шутка
VD>Ты прежде чем "шутить" в следующий раз хотя бы общее описание языков, о которых собрался по говорить, прочти. А то смешен скорее ты.
Правильно будет "смешон". Если я ошибся насчёт Скалы, то ненамного. И вообще, расслабься. Не хочу даже минуты тратить на бодание с тобой (как известно, это futile activity).
Кроме того моё сообщение было шуткой. За определением слова "шутка" — фгугл.
Здравствуйте, VladD2, Вы писали:
VD>Скажу чесно, если бы Скала полноценно работала поверх второго фрэймворка, то я бы с удовольствием на ней попрограммировал.
Похоже, у Nemerle дела с этим делом обстоят получше.
... << RSDN@Home 1.1.4 stable rev. 510>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[3]: кто-нибудь уже пробовал писать на Scala или Nemerle?
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Дарней, Вы писали:
Д>>Похоже, у Nemerle дела с этим делом обстоят получше.
VD>Nemerle я вообще не смотрел.
А посмотреть стоит...
Очень много интересных вещей...
В Блоге еще про версию 3 с какими-то цифирками написано что типа если вы ждете c# 4.0, то он уже есть — это Nemerle
Про программирование с помощью макросов, создание своих синтаксических конструкций и метапрограммирование — это все про Nemerle.
Получаеться своего рода круче чем Форт под .NET
Вот еще бы дождаться реализации Nemerle через VSIP под VS 2005... и все... вот оно щастье...
Делай добро и бросай его в воду...
Re[5]: кто-нибудь уже пробовал писать на Scala или Nemerle?
Здравствуйте, Mckey, Вы писали:
M>Вот еще бы дождаться реализации Nemerle через VSIP под VS 2005... и все... вот оно щастье...
а что там можно с лямбдами делать? Наример, можно с их помощью генерить код в рантайме? Сохранить лямбда-функцию в базу данных или передать через ремотинг?
... << RSDN@Home 1.1.4 stable rev. 510>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[6]: кто-нибудь уже пробовал писать на Scala или Nemerle?