|
|
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
privateВ Райлс гораздо лаконичней и понятней :). Хм... Для ненатуралов наверно;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2009, 22:18:52 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
Диез, Да но вот плюс то в чем, дублировать то что уже есть. И вроде кроме твитер некто не интересуетсв Скала.скала и не дублирует то что уже есть, зачем бы тогда она была бы нужна? Я просто не пойму в чем плюс еще одного созданого языка, что он пренес.А в чем плюс питона над ассемблером, что он принес? Скала пытается еще ближе приблизить программирование к математике, к функциональному подходу, не отбрасывая старые добрые императивный и объектно-ориентированные стили. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2009, 20:45:21 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
ParadoxxXDiaBLo, Ну вот как раз если это всего лишь синтаксис, так какой резон менят один синтаксис на другой ?Ну, вот сравнение синтаксисов, а вот http://scala-blogs.org/2008/09/scalable-language-and-scalable.html наглядный пример как более компактный синтаксис упрощает написание программы путем уменьшения бойлерплейт (как это вообще по рюсски?) кода. И где-то был туториал по работе с XML в скала, небо и земля в сравнении с аналогичными кусками обработки на Java. Весь пинцет в том, сколько за более короткий и компактный синтаксис потом придется платить в циклах процессора, ведь например Pythot|Ruby|Groovy в десятки-сотни раз медленнее чем C|Java|C#. Вот разрабы скалы и пытаются, оставаясь быстрыми, стать компактными. http://gzip.rsdn.ru/forum/message/3378231.1.aspx И чего всё о скала, да о скала, давайте уже о скале отдельную ветку, а тут про питон будем писать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2009, 20:59:40 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
ParadoxxА у Скала как я вижу своих либов пока нету .... Зато у Скала есть operator overloading и properties :)Нуда, своих либов нету. Зато есть либа по работе с XML: http://metacircular.wordpress.com/2007/02/04/scala-makes-xml-processing-easy/ http://burak.emir.googlepages.com/scalaxbook.docbk.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2009, 21:13:51 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
9h0lms, На одном XML далеко не пойти... а так придется пользоваться тем что уже на Java... Но я думаю время еще покажет как будет развиваться Scala. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2009, 21:48:08 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
а зачем свои либы, если есть уже качественные, отлаженные и проверенные временем жава-библиотеки? - это возвращаясь к вопросу о том, зачем писать то что уже есть. у явы нет проблем с платформой/библиотеками. проблемой некоторые считают не особо фичастый язык - вот только эту проблему скала и пытается решать. _______________________________________ 2pro4U ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 14:23:39 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
Frenzyа зачем свои либы, если есть уже качественные, отлаженные и проверенные временем жава-библиотеки? - это возвращаясь к вопросу о том, зачем писать то что уже есть. у явы нет проблем с платформой/библиотеками. проблемой некоторые считают не особо фичастый язык - вот только эту проблему скала и пытается решать. _______________________________________ 2pro4U А что, реально Скала достойна внимания? Стоит глянуть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 14:34:59 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
Frenzy, Да конечно если есть готовые либы так почему не пользоваться. Но думаю если Scala будет развиваться, то свои либы будут со временем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 15:01:12 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
XDiaBLoА что, реально Скала достойна внимания? Стоит глянуть? Ну как раз можете посмотреть и поделиться мнением. Про то и обсуждаем :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 15:03:00 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
ParadoxxFrenzy, Да конечно если есть готовые либы так почему не пользоваться. Но думаю если Scala будет развиваться, то свои либы будут со временем. А в чём будет их уникальность? Портабельность между дотнетом и жабой чтоль? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 15:14:56 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
XDiaBLo, Я бы больше отметил расширение способностей языка по сравнению с Java. Можно сказать некий "Extended Java" в плане языка. А .NET я думаю особо там роли не будет играть... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 15:28:36 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
Здесь описана архитектура твиттер, на русском, с с производительностью руби проблем нет, замена его на другое решение дало бы всего 20-30% +. http://www.insight-it.ru/net/scalability/arkhitektura-twitter/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 15:30:21 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
XDiaBLoParadoxxFrenzy, Да конечно если есть готовые либы так почему не пользоваться. Но думаю если Scala будет развиваться, то свои либы будут со временем. А в чём будет их уникальность? Портабельность между дотнетом и жабой чтоль? По видимости, это будут надстройки над имеющимися Java-библиотеками Разработчики обещают сделать вот такую фишку, например: http://scala.sygneca.com/libs/dbc Внутри, конечно, тот же JDBC, но выглядит красиво. Ждем-с... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 15:31:40 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
privateЗдесь описана архитектура твиттер, на русском, с с производительностью руби проблем нет, замена его на другое решение дало бы всего 20-30% +. http://www.insight-it.ru/net/scalability/arkhitektura-twitter/ Статье уже год; а переход на Скалу был в начале 2009-го. Наверное разработчики все-таки столкнулись с проблемами. Вряд ли кто-то будет переписывать компоненты боевой системы без надобности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 15:42:46 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
ParadoxxFrenzy, Да конечно если есть готовые либы так почему не пользоваться. Но думаю если Scala будет развиваться, то свои либы будут со временем. скала построена таким образом, что жава-либы для скалы и есть "свои". скала - это не скриптовый язык, она компилируется в те же самые .class файлы как и жава. у неё и типов данных своих нет - это всё типы данных жавы или обёртки над ними. насчёт своих либов, кое-что своё появится, скорее всего обёртки вокруг каких-нибудь существующих жава-либов, но в более scala-стиле, потому что так кому-то удобнее. сейчас уже например есть Lift - мвц веб-фреймворк на Scala. т.е. в любом случае то что для такого языка нет *своих* библиотек - это не минус, а скорее плюс. XDiaBLo А что, реально Скала достойна внимания? Стоит глянуть? посмотреть в любом случае стоит, но своё мнение я уже озвучивал - я особо восторгов не понимаю вокруг Scala. это не динамический язык вроде Python или Ruby - т.е. такой мощи и открытости там нет, а синтаксические плюшки скалы мне не нужны - ява устраивает, написать чуть больше кода мне не лом учитывая насколько развиты IDE для жавы, зато строгий, понятный, проверенный временем. т.е. вечная тема вот в с# есть фича-Х, а в яве нет. просто в яве оно особо никому не нужно, зато работают те проги которые писались 10 лет назад. а для тех кому все-таки нужно теперь есть Scala :) XDiaBLoА в чём будет их уникальность? Портабельность между дотнетом и жабой чтоль? скала к дотнету никакого отношения не имеет. официально она работает и заточена только под жава-платформу. то что кто-то что-то делает под дотнет - это всё левые поделки из серии IronPython. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 16:01:50 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
Frenzy посмотреть в любом случае стоит, но своё мнение я уже озвучивал - я особо восторгов не понимаю вокруг Scala. это не динамический язык вроде Python или Ruby - т.е. такой мощи и открытости там нет , а синтаксические плюшки скалы мне не нужны - ява устраивает, написать чуть больше кода мне не лом учитывая насколько развиты IDE для жавы, зато строгий, понятный, проверенный временем. А в чем, в вашем понимании, преимущества динамических языков перед Scala ? /* не холивар */ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 16:40:15 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
Еще из плюсов Скала можно отметить функциональное программирование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 16:42:44 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
ДиезА в чем, в вашем понимании, преимущества динамических языков перед Scala ? /* не холивар */ ну как и сказал. в "мощи и открытости". а точнее в питоне я могу манипулировать структурой уже созданного объекта меняя её до неузнаваемости - могу добавлять/удалять аттрибуты и методы инстанса или целого класса на лету, подменять любые реализации, вытащить всё что угодно откуда угодно. вплоть до того что если мне нужен какой-то объект, к которому у меня нет доступа в силу особенностей проектирования, я могу его найти в gc и спокойно использовать :) т.е. о таких вещах как AOP, DI, IoC, рефлекшон в питоне никто особо не задумывается как о какой-то там особой технике. там это не является чем-то особенным - оно уже встроено в язык причем всё просто до банальности. короче говоря мне не нужно проектировать приложение на питоне специально заботясь о том, чтобы впоследствии оно легко расширялось и интегрировалось с другими решениями. тут напротив сложно сделать так чтобы потом было сложно расширять :) только нельзя такую "мощь и открытость" однозначно назвать преимуществом. иногда это нужно и удобно. а иногда наоборот это ведёт к полному хаосу и к тому что проект невозможно поддерживать - кругом магия. скала в этом плане другой язык - это синтаксические плюшки, но она не может ничего такого, что не могла бы ява, просто в последней для этого потребуется больше кода. даже то что касается функционального программирования - на яве можно позаворачивать функции в объекты реализующие какой-нибудь интерфейс типа "функция" и можно получить такую же функциональность (достаточно вспомнить интерфейс Runnable), наверняка скала это и делает при компиляции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 18:27:49 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
Frenzy ну как и сказал. в "мощи и открытости". а точнее в питоне я могу манипулировать структурой уже созданного объекта меняя её до неузнаваемости - могу добавлять/удалять аттрибуты и методы инстанса или целого класса на лету, подменять любые реализации, вытащить всё что угодно откуда угодно. вплоть до того что если мне нужен какой-то объект, к которому у меня нет доступа в силу особенностей проектирования, я могу его найти в gc и спокойно использовать :) т.е. о таких вещах как AOP, DI, IoC, рефлекшон в питоне никто особо не задумывается как о какой-то там особой технике. там это не является чем-то особенным - оно уже встроено в язык причем всё просто до банальности. ... скала в этом плане другой язык - это синтаксические плюшки, но она не может ничего такого, что не могла бы ява, просто в последней для этого потребуется больше кода. даже то что касается функционального программирования - на яве можно позаворачивать функции в объекты реализующие какой-нибудь интерфейс типа "функция" и можно получить такую же функциональность (достаточно вспомнить интерфейс Runnable), наверняка скала это и делает при компиляции. Спасибо, идея понятна. По большому счету, любой язык кроме асма - это синтаксические плюшки :) , и Python & Ruby тоже не умеют ничего такого, чего нельзя сделать на Java. Думаю, реализовать функциональные фичи Скалы на яве ничуть не проще, чем объекты Питона. А вы можете привести какой-нибудь пример кода (или ссылку), когда динамическое поведение приносит реальную выгоду/удобство при разработке? Мне интересно посмотреть, можно ли это будет реализовать через DSL в Scala .. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2009, 19:20:00 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
писать лень, приведу пример на словах. вот есть у нас например десяток классов бизнес-логики, которые используются по всему приложению. и возникла задача - нужно писать в базу историю вызовов всех функций этих классов. а заодно реализовать декларативный ACL, чтобы мы могли описывать в хмл-ке какойнибудь какие роли могут вызывать конкретный метод, а какие нет, и если вдруг доступ запрещён - кидать эксепшон. т.е. типичная задача для АОП. вот в питоне я могу написать метакласс, который будет заворачивать методы данного класса в декоратор, который запишет историю и проверит права доступа. после чего навесить этот метакласс на нужные мне классы. - суть в том чтобы сделать это из одного места, а не перелопатив всё приложение, использующее эти классы, и сами классы. в яве для начала неплохо бы чтобы классы были красивые с выделенными интерфейсами и желательно управляемые спрингом, тогда я бы эту задачу решал аналогично с помощью Spring AOP. т.е. вот такая адвансед техника которая в питоне делается с полпинка, в яве уже требует грамотного начального подхода и 3rd-party библиотеку. а как бы такая задача решалась в Scala? _______________________________________ 2pro4U ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2009, 01:53:12 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
Frenzyт.е. типичная задача для АОП. вот в питоне я могу написать метакласс, который будет заворачивать методы данного класса в декоратор, который запишет историю и проверит права доступа. после чего навесить этот метакласс на нужные мне классы. - суть в том чтобы сделать это из одного места, а не перелопатив всё приложение, использующее эти классы, и сами классы.Мрак, пааарниша, а в яве конечно же нельзя написать декоратор. Мда, питон это просто натуральный каспийский тушкан! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2009, 13:27:53 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
Frenzy ... т.е. типичная задача для АОП. вот в питоне я могу написать метакласс, который будет заворачивать методы данного класса в декоратор, который запишет историю и проверит права доступа. после чего навесить этот метакласс на нужные мне классы. - суть в том чтобы сделать это из одного места, а не перелопатив всё приложение, использующее эти классы, и сами классы. в яве для начала неплохо бы чтобы классы были красивые с выделенными интерфейсами и желательно управляемые спрингом, тогда я бы эту задачу решал аналогично с помощью Spring AOP. т.е. вот такая адвансед техника которая в питоне делается с полпинка, в яве уже требует грамотного начального подхода и 3rd-party библиотеку. а как бы такая задача решалась в Scala? Да, похоже, родных языковых средств для классического AOP в Scala действительно нет. :) Можно, наверное, прикрутить AOP-инструменты от Java, типа AspectJ, благо байткод один... С другой стороны, будет ли вообще полезен AOP на основе Joint Point'ов в функциональном языке?? <задумался> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2009, 14:00:29 |
|
||
|
Java или Python
|
|||
|---|---|---|---|
|
#18+
ДиезДа, похоже, родных языковых средств для классического AOP в Scala действительно нет. :) Можно, наверное, прикрутить AOP-инструменты от Java, типа AspectJ, благо байткод один... С другой стороны, будет ли вообще полезен AOP на основе Joint Point'ов в функциональном языке?? <задумался> ну тут не только в аопе дело. даже насчёт функционального программирования - в скале говорят "у нас любая функция - объект". в питоне об этом не говорят... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. вобщем ещё не известно какой язык функциональнее )) но я не об этом. а о том, что в динамических языках структура любого объекта может как угодно изменяться в ходе выполнения программы, а в статических - не может. с одной стороны - это мощь, это удобно. а с другой ни одна IDE не даст вменяемого автокомплита, более того такой код с магией сложнее поддерживать, медленнее работает, GIL. но скала это в любом случае хорошо - такой себе промежуточный вариант, только через голову возможности ява-байткода не прыгнешь. да и есть чем пугать дотнетчиков )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2009, 15:51:55 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=35980712&tid=1344291]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
360ms |
get topic data: |
15ms |
get forum data: |
3ms |
get page messages: |
73ms |
get tp. blocked users: |
3ms |
| others: | 231ms |
| total: | 711ms |

| 0 / 0 |
