crypto5 wrote:
Ну ? в больших выражениях менее читабельно чем if
Предыдущий оратор вас еще не убедил, что читабельность - относительная вещь?
Кстати, функциональный стиль операторов if - это бичь читабельности еще со времен Лиспа. Когда они вложены друг в друга, хоть столбиком, хоть лесенкой пиши, хоть "?:" хоть if'ом долби синтаксис, но читать трудно.
valchkou wrote:народ а чем вас java не устраивает помимо Syntactic sugar?
как пример, жава не умеет работать с памятью напрямую
Ну как, если очень хочется то можно конечно работать через off-heap memory, Unsafe и прочее, но обычно таки да, не нужно. Но! это ограничение платформы JVM, не Java как языка. А мы про язык говорили
Ммм... И как мне на Джаве как языке обратиться к памяти напрямую?
Ну именно как на языке (т.е. чере указатели и т.п.), то никак. А так в java.nio есть класс ByteBuffer. Ну и ес-но через sun.misc.Unsafe можно к адресу обращаться (там есть native методы для чтения/записи по адресу памяти и т.п.)
crypto5 wrote:
Ну ? в больших выражениях менее читабельно чем if
Предыдущий оратор вас еще не убедил, что читабельность - относительная вещь?
Может быть, но в данном случае помоему разумный компромис.
Кстати, функциональный стиль операторов if - это бичь читабельности еще со времен Лиспа. Когда они вложены друг в друга, хоть столбиком, хоть лесенкой пиши, хоть "?:" хоть if'ом долби синтаксис, но читать трудно.
Интеррапт wrote:
Ну именно как на языке (т.е. чере указатели и т.п.), то никак. А так в java.nio есть класс ByteBuffer. Ну и ес-но через sun.misc.Unsafe можно к адресу обращаться (там есть native методы для чтения/записи по адресу памяти и т.п.)
Ну вот и я о том же - все равно уши другого языка торчат
valchkou wrote:
почему вы пытаетесь отделить JVM от Java? Были придуманы принципы языка java и под них написана JVM.
Так что все ограничения JVM они не сами по себе ограничения, а именно как отражение особенностей java.
Очевидно, это не совсем так. В частности, ограничения JVM накладывают ограничения и на другие языки, основанные на нем же. Да и скомпилировать джаву сразу в исполняемый код - тоже тот еще бином Ньютона. Все-таки язык и его реализиция - штуки довольно ортогональные
dotcom wrote:Кстати, функциональный стиль операторов if - это бичь читабельности еще со времен Лиспа. Когда они вложены друг в друга, хоть столбиком, хоть лесенкой пиши, хоть "?:" хоть if'ом долби синтаксис, но читать трудно.
Кому как.
Согласен. Если вы с рождения ударены Лиспом/Эрлангом/Хаскелом, то вложенные фунциональные if'ы - это ваше все. Мы же по-старинки, императивно будем программировать.
dotcom wrote:Кстати, функциональный стиль операторов if - это бичь читабельности еще со времен Лиспа. Когда они вложены друг в друга, хоть столбиком, хоть лесенкой пиши, хоть "?:" хоть if'ом долби синтаксис, но читать трудно.
Кому как.
Согласен. Если вы с рождения ударены Лиспом/Эрлангом/Хаскелом, то вложенные фунциональные if'ы - это ваше все. Мы же по-старинки, императивно будем программировать.
Та нет не ударен, просто в упор не вижу почему функциональный if не поддается форматированию.
valchkou wrote:народ а чем вас java не устраивает помимо Syntactic sugar?
как пример, жава не умеет работать с памятью напрямую
Ну как, если очень хочется то можно конечно работать через off-heap memory, Unsafe и прочее, но обычно таки да, не нужно. Но! это ограничение платформы JVM, не Java как языка. А мы про язык говорили
Ммм... И как мне на Джаве как языке обратиться к памяти напрямую?
Ну да, через именно конструкции языка нельзя. Но можно через unsafe:
valchkou wrote:народ а чем вас java не устраивает помимо Syntactic sugar?
как пример, жава не умеет работать с памятью напрямую
Ну как, если очень хочется то можно конечно работать через off-heap memory, Unsafe и прочее, но обычно таки да, не нужно. Но! это ограничение платформы JVM, не Java как языка. А мы про язык говорили
почему вы пытаетесь отделить JVM от Java? Были придуманы принципы языка java и под них написана JVM.
Так что все ограничения JVM они не сами по себе ограничения, а именно как отражение особенностей java.
Потому что это разные вещи. JVM это платформа с набором сервисов, Java - это язык. Например, в далвике используется язык Java, но далвик - это не JVM, это даже не стековая машина по моему (не знаток андроеда, поправьте плиз).
Zorkus wrote:
Ну да, через именно конструкции языка нельзя. Но можно через unsafe:
Хорошо, а unsafe как этого добивается?
Предполагаю что все вызовы к Unsafe маппятся на native вызовы внутри виртуальной машины.
И да, это VM-зависимая функциональность, т.е. непереносимая. Правда в наиболее популярных VM работает.
Zorkus wrote:
Ну да, через именно конструкции языка нельзя. Но можно через unsafe:
Хорошо, а unsafe как этого добивается?
Предполагаю что все вызовы к Unsafe маппятся на native вызовы внутри виртуальной машины.
И да, это VM-зависимая функциональность, т.е. непереносимая. Правда в наиболее популярных VM работает.
Почти все методы Unsafe нативные, да. как они внутри работают, надо посмотреть исходники. Мне еще другое интересно. Вызов нейтив метода это все таки некоторый оверхед для VM. Если он используется активно, как это влияет на перформанс
Zorkus wrote:
Ну да, через именно конструкции языка нельзя. Но можно через unsafe:
Хорошо, а unsafe как этого добивается?
Предполагаю что все вызовы к Unsafe маппятся на native вызовы внутри виртуальной машины.
И да, это VM-зависимая функциональность, т.е. непереносимая. Правда в наиболее популярных VM работает.
Ну я собственно к тому и клонил. И еще к тому, что реализация Unsafe использует язык, отличный от джавы.
Alexander Troyansky wrote:С другой стороны, смотрю на Скалу с их if-then-else вместо привычного ?-: или объявление классов через ж и прочие отличия синтаксиса в отличие от "нормальных" языков. Обкурились, что ли, когда его дизайн делали?
Да нет. Просто выпендриваться люди любят. Одерский же из академиков. Синтаксис - шминтаксис. Он несколько лет назад Скалой на всех возможных семинарах народ загружал активно. Мой бывший босс пытался его свести с HP Labs лет 5 тому назад. Те не захотели грех на душу брать. В IBM он тоже бился. Мужик пробивной, надо сказать.
Да, заметно, что они синтаксисом увлеклись, что даже забыли "break" and "continue" влючить. Наверное, не смогли ничего оригинального придумать в качестве замены, поэтому убрали за ненадобностью -- авось никто не заметит
I would hope that a wise white man with the richness of his experiences would more often than not reach a better conclusion than a latina female who hasn't lived that life
Alexander Troyansky wrote:С другой стороны, смотрю на Скалу с их if-then-else вместо привычного ?-: или объявление классов через ж и прочие отличия синтаксиса в отличие от "нормальных" языков. Обкурились, что ли, когда его дизайн делали?
Да нет. Просто выпендриваться люди любят. Одерский же из академиков. Синтаксис - шминтаксис. Он несколько лет назад Скалой на всех возможных семинарах народ загружал активно. Мой бывший босс пытался его свести с HP Labs лет 5 тому назад. Те не захотели грех на душу брать. В IBM он тоже бился. Мужик пробивной, надо сказать.
Да, заметно, что они синтаксисом увлеклись, что даже забыли "break" and "continue" влючить. Наверное, не смогли ничего оригинального придумать в качестве замены, поэтому убрали за ненадобностью -- авось никто не заметит
странный break вообще то есть.
Ну и в интернетных перепалках отцы основатели мотивируют тем что continue не нужен, типа если он вам нужен, вы что-то не так заимплементили, показывая это на примерах недовольных: http://www.scala-lang.org/node/1229
Alexander Troyansky wrote:Да, заметно, что они синтаксисом увлеклись, что даже забыли "break" and "continue" влючить. Наверное, не смогли ничего оригинального придумать в качестве замены, поэтому убрали за ненадобностью -- авось никто не заметит
странный break вообще то есть.
Ну и в интернетных перепалках отцы основатели мотивируют тем что continue не нужен, типа если он вам нужен, вы что-то не так заимплементили, показывая это на примерах недовольных: http://www.scala-lang.org/node/1229
Главный архитектор Москвы Посохин показывал Сталину проект реконструкции Красной площади. Он объяснил, что ложноклассическое здание Исторического музея надо будет снести, потом снял с макета торговые ряды ГУМа, на месте которых будут воздвигнуты трибуны.
Когда архитектор ухватил за купол храм Василия Блаженного, желая показать, куда необходимо передвинуть этот собор, Сталин заревел: «Постав на мэсто, сабака!» — и архитектора унесли с сердечным приступом.