Здравствуйте, LaPerouse, Вы писали:
N>>>>вывода типов нет, LP>Есть. В Java есть вывод типов для шаблонов генериков:
Никакого вывода типов переменных здесь не увидел.
N>>>>замыканий нет, LP>есть. Inner classes — полноценные замыкания.
Соглашусь, есть, но говно, ибо слишком много писанины.
N>>>>кортежей нет, LP>>>есть N>>нет LP>Не знаю как у тебя, а у меня есть:
Соглашусь, есть. Хочу в стандартной библиотеке.
N>>>>генераторов нет, LINQ-a/list comprehension нет... LP>>>Нет и не надо. N>>надо LP>Лучше бы сделали дженерики.
Лучше бы, но сие ортогонально.
LP> скорость разработки не от языка зависит в основном, а от наличия библиотек/инструментария. Есть ли что-либо под солнцем сравнимое по этому показателю с java?
Приведи пример библиотек для явы не имеющих аналогов в Питоне, кроме UI. Только не надо про IDE — я пишу в IPython/EmacsREPL в полной динамике с чем не может тягаться никакой статический анализатор.
Здравствуйте, novitk, Вы писали:
C>>Не то. В OSGi оно всё намного мощнее — там можно остановить часть системы, перегрузить нужные модули, и при этом остальная система продолжит работать. N>Я вроде специально указал, что в .NET-e есть 3/4 функционала OSGi и какая именно — версионность и изоляция.
В .NET оно немного другое. Есть app-домены, но кросс-доменные вызовы требуют маршаллинга, поэтому с помощью доменов нельзя выделять мелкие или критичные к быстродействию компоненты.
Внутри домена в .NET загруженные сборки выгружать нельзя, и они даже не могут быть собраны GC (в отличие от классов в Java).
C>>В OSGi оно энфорсится с помощью classloader'ов. N>Это для изоляции, а не для динамизма — одновременная линковки с разными версиями. Для динамики там надо события контейнера мониторить в callback-ax и имеративно отписываться/приписывать себя к сервисам. Ничего не знаю про DS — может там чего и поинтересней придумали.
Classloader'ы дают и изоляцию.
Здравствуйте, novitk, Вы писали:
N>Здравствуйте, LaPerouse, Вы писали:
N>>>>>вывода типов нет, LP>>Есть. В Java есть вывод типов для шаблонов генериков: N>Никакого вывода типов переменных здесь не увидел.
Ты ничего не говорил про переменные Есть вывод типов параметров дженериков. Без него ты бы вынужден был бы написать:
List<T> list = emptyList<T>();
Сокращает запись как видишь, особенно если параметров много.
N>>>>>замыканий нет, LP>>есть. Inner classes — полноценные замыкания. N>Соглашусь, есть, но говно, ибо слишком много писанины.
Что есть.
N>>>>>кортежей нет, LP>>>>есть N>>>нет LP>>Не знаю как у тебя, а у меня есть: N>Соглашусь, есть. Хочу в стандартной библиотеке.
OpenJDK открыта для коммитов. Может, появится и в официальной версии
N>>>>>генераторов нет, LINQ-a/list comprehension нет... LP>>>>Нет и не надо. N>>>надо LP>>Лучше бы сделали дженерики. N>Лучше бы, но сие ортогонально.
Это реально востребовано, потому что это затрагивает вопросы проектирования, а генераторы — быдлокодогенерацию. Разница огромна. Первое — системообразующая вещь. Вторая — деталь реализации.
LP>> скорость разработки не от языка зависит в основном, а от наличия библиотек/инструментария. Есть ли что-либо под солнцем сравнимое по этому показателю с java? N>Приведи пример библиотек для явы не имеющих аналогов в Питоне, кроме UI. Только не надо про IDE — я пишу в IPython/EmacsREPL в полной динамике с чем не может тягаться никакой статический анализатор.
Я как бы не знаток Путона. И честно говоря, подумываю завершать эту олимпиаду Спать пора.
Социализм — это власть трудящихся и централизованная плановая экономика.
Здравствуйте, LaPerouse, Вы писали:
N>>Не при чем. Я просто показал, что никакой hotswap с uptime-ом OSGi обеспечить не может. LP>Может.
Пример? Eclipse как мы уже разобрались не тянет...
N>>Я так же указал единственное на мой взгляд решение, где это реально работает — Ерланг. LP>И как это по-твоему работает в эрланг?
Супервайзер с перезапуском
N>>Все остальное, что есть в OSGI давно уже есть как в .NET, так и в Питоне (eggs) и никто по этому поводу особо не кипишится. LP>Нет его там и близко. Ты сам это подтвердил.
Хрень которая есть в OSGi реализуется в 20-ти строчках Питона. Только оно не нужно никому.
Здравствуйте, Cyberax, Вы писали:
C>В .NET оно немного другое. Есть app-домены, но кросс-доменные вызовы требуют маршаллинга, поэтому с помощью доменов нельзя выделять мелкие или критичные к быстродействию компоненты. Внутри домена в .NET загруженные сборки выгружать нельзя, и они даже не могут быть собраны GC (в отличие от классов в Java).
Согласен. Я не сказал, что в .NET лучше, я сказал, что там оно тоже есть.
C>Classloader'ы дают и изоляцию.
Именно это я и имел ввиду. Classloader-ы там используются для изоляции, а не для hotswap-a (который я обозвал 1/4 функционалом ОSGi, которого нет в дотнете).
Здравствуйте, Cyberax, Вы писали:
C>>>Нету. Я имею в виду, что можно прямо в работающем приложении отредактировать файл, и изменения сразу будут подхвачены. IT>>Ах вот для чего. А если код криво подправил? C>Ну так ещё раз поправишь. Это для разработки прежде всего важно.
А работающее приложение при этом работающим останется?
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, novitk, Вы писали:
C>>Classloader'ы дают и изоляцию. N>Именно это я и имел ввиду. Classloader-ы там используются для изоляции, а не для hotswap-a (который я обозвал 1/4 функционалом ОSGi, которого нет в дотнете).
Ну так hotswap невозможен без изоляции.
Здравствуйте, IT, Вы писали:
C>>>>Нету. Я имею в виду, что можно прямо в работающем приложении отредактировать файл, и изменения сразу будут подхвачены. IT>>>Ах вот для чего. А если код криво подправил? C>>Ну так ещё раз поправишь. Это для разработки прежде всего важно. IT>А работающее приложение при этом работающим останется?
Необязательно, хотя очень вероятно. Но это же разработка, тут пофиг на редкие падения.
Здравствуйте, Cyberax, Вы писали:
C>>>Classloader'ы дают и изоляцию. N>>Именно это я и имел ввиду. Classloader-ы там используются для изоляции, а не для hotswap-a (который я обозвал 1/4 функционалом ОSGi, которого нет в дотнете). C>Ну так hotswap невозможен без изоляции.
На самом деле я немного запутал терминологию и ты молодец, что меня поправил. Нормальной изоляции (как AppDomain в .NET) в OSGi просто нет. Classloader-ы там просто для многоверсионной загрузки пакетов, а весь hotswap абсолютно кооперативен.
M>> M>> а сообщать админу об ошибках мылом? и не об ошибках тоже? M>> Ну и как он определит причину, по которой стоит отсылать мыло? И что за мыло он пришлет?
AB>Весь stderr на сколько я помню (но поскольку не пользуюсь ибо меня завалит тогда спамом, могу и ошибаться).
Lf? yj меня не интересует stderr меня могут интресовать весьма специфические моменты
M>> AB>Скриптик — зачотный трэшак M>> Трэшак-не трэшак, но он работает. Причем так, как надо.
AB>У меня просто бэкап мускуля умещается в 33 строчки — по этому мне несколько не по себе от подобной портянки, которая "может все".
дело в том, что я не осилю даже эти 33 строчки (что тоже до хрена).
Здравствуйте, Vamp, Вы писали:
N>>Как научил меня IT — NDA V>Что, кстати, чушь. NDA — это запрет на разглашение подробностей того, чем ты занимался на рабочем месте — публикация исходных кодов, например. Ни одна компания не требует от штатныъх сотрудников скрывать факт того, что ты на нее работаешь.
Не только, напрмиер используемые технологии и инструменты также могут попасть под NDA
Здравствуйте, fddima, Вы писали:
F>Идея в том, что бы не создавать промежуточных файлов.
В смысле, из БД сразу на амазон?
KV>>кстати, вместо SQL server objects можно использовать готовый аналог mysqldump: http://getmssqldump.codeplex.com/ F> Во-первых — это читерство!
Это почему еще? Все по-честному
F> Во-вторых — 'Using this script you can dump your database content into a file in a form of INSERT INTO statements.' — это заранее не примемлимо, мы же вроде о бэкапе говорим.
Бэкап вообще-то — это что угодно, из чего можно восстановить сотояние БД на определенный момент времени
F>Или pg_dump/mysqldump возвращает тоже в таком виде?
mysqldump — именно так, за pg не скажу — в глаза не видел.
F>Что-то приходит на память только оракловый тэйбл дамп или как оно там (но оно всё равно не бэкап...) — но там были файлы явно не текстового вида.
Здравствуйте, LaPerouse, Вы писали:
WH>>Остается выяснить с какого перепугу в простой предметной области сложные задачи... LP>Угу. 80 процентов энтерпрайза.
Это не ответ на вопрос.
... << RSDN@Home 1.2.0 alpha 4 rev. 1305>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, LaPerouse, Вы писали:
LP>Модули, которые могут быть установлены, удалены или обновлены в любой момент без перезапуска приложения. Они полностью динамические. В каждый конкретный момент времени они могут быть, а могут и не быть. На то собственно расчитан весь lifecycle.
ASP.NET вроде как так умеет.
LP>Это открытый стандарт?
Это часть FW 4.0 и одновременно open source проект.
Даже по сравнению с довольно простым выводом типов шарпа это слабое подобие правой руки. И, учитывая гавенность дженериков, не факт что тут вообще вывод типов имеется
LP>В java 7 сделают то же самое для конструкторов
Вот когда сделают, тогда и поговорим. Потому что в C# 5 тоже много чего полезного сделают.
LP>есть. Inner classes — полноценные замыкания.
То же самое — слабое подобие правой руки. Замыкаться нужно уметь прежде всего на локальный контекст, а не на внешний класс.
LP>
LP>public class Pair<T1, T2>
LP>{
LP> public T1 object1;
LP> public T2 object2;
LP> public Pair(T1 object1, T2 object2)
LP> {
LP> this.object1 = object1;
LP> this.object2 = object2;
LP> }
LP>}
LP>
И код с такими мегаклассами превращается в малочитаемое гавно.
LP> скорость разработки не от языка зависит в основном, а от наличия библиотек/инструментария.
Скорость разработки зависит и от того, и от другого, причем на разных задачах пропорции разные.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Даже по сравнению с довольно простым выводом типов шарпа это слабое подобие правой руки. И, учитывая гавенность дженериков, не факт что тут вообще вывод типов имеется
Имеется. Это единственное место, где дженерики в Java более мощные — они могут выводить тип возвращаемого результата.