metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2010-08-04 10:14 am

DLR, IronPython, etc

Наткнувшись в процессе проектирования проги на то, что мне одновременно необходимы фичи обычного C# со статической типизацией и фичи динамических языков, полез смотреть на IronPython/DLR и тому подобное. Ну, с ходу того, что меня интересует (адекватная интеграция с DBMS) я не нашел, GUI сложнее чем MessageBox("Hello, world"); тоже и в связи с этим возник вопрос:
На кого рассчитаны все нововведения в .NET 3.5/4.0?
Всякие там LINQ to SQL/Entity Framework/Expression Trees/DLR и прочее, причем production статус этого всего совершенно непонятен, неизвестно, что отомрет, что будет использоваться, итд. Все примеры для этого, которые я видел, они, мягко выражаясь, на уровне "select * from Customers -> УРА, Я ЗНАЮ SQL".

DLR, Expression Trees - рассчитаны на дизайнеров языков, причем в проекте IronScheme от DLR отказались ("but decided to abandon this idea because the DLR branch the project used became out of sync with the trunk, and also because the DLR, according to the developers, could not support the majority of the Scheme's requirements"). Как будто и так языков мало.

В общем, это все выглядит каким-то откровенным гиковством со стороны Microsoft, похоже там всякие выпускники CS факультетов затрахали в мозг менеджмент до состояния "пусть теребят свои монады как хотят, абы нас не трогали".


Это все при том, что высокоуровневые фичи в .NET как были кривые, так и остались, типа медленной отрисовки DataGridView или over-architected мрака в System.ComponentModel.

[identity profile] w00dy.livejournal.com 2010-08-04 03:16 pm (UTC)(link)
lamp и linq вещи абсолютно ортогональные

[identity profile] zamotivator.livejournal.com 2010-08-04 04:19 pm (UTC)(link)
Конечно.
LAMP стоит пару десятков долларов, а для запуска LINQ нужно отслюнявить пару тыщ баксов.
Это если повезёт)

[identity profile] w00dy.livejournal.com 2010-08-04 04:56 pm (UTC)(link)
это как повезёт, компания, в которой я работал, отслюнявила всего 300$ по BizSpark-у.

[identity profile] zamotivator.livejournal.com 2010-08-04 04:59 pm (UTC)(link)
Вот и нафига такое везение?

[identity profile] w00dy.livejournal.com 2010-08-04 05:25 pm (UTC)(link)
Давай подойдём с другого конца. .net и lamp - это две различные платформы. На .net можно писать програмные комплексы, на lamp - нет.

PS за 300 баксов они получили перманентные лицензии на почти весь (или весь) софт MS (серверные винды, дев тулзы и офисный софт, в частности) с возможностью использовать в продакшене. Я считаю что это нашару :)

[identity profile] zamotivator.livejournal.com 2010-08-04 05:26 pm (UTC)(link)
Давай подойдём с другого конца. .net и lamp - это две различные платформы. На .net можно писать програмные комплексы, на lamp - нет.
Расскажите про это facebook.

PS за 300 баксов они получили перманентные лицензии на почти весь (или весь) софт MS (серверные винды, дев тулзы и офисный софт, в частности) с возможностью использовать в продакшене. Я считаю что это нашару :)
Именно поэтому, видимо, Facebook оплатил разработку XtraBackup, да?
Oracle хотел деньги за каждую установленную копию.
Клёво, правда?

[identity profile] w00dy.livejournal.com 2010-08-04 05:59 pm (UTC)(link)
Эм... давай уточним терминологию: lamp - linux, apache, mysql, php. Что-то мне слабо верится что у фейсбука всё написано на php, скорее всего у них там какая-то ядрённая смесь из перла, питона, C и ещё чего-то, тобишь у них уже не lamp, а lampppc какой-нить (мне лень искать как у них на самом деле, но думаю что я недалеко ушёл от правды :)

У нас же всё (подчёркиваю, всё, это сайт, два веб-приложения, три настольных приложения, парочка web-сервисов, десятки утилит разной степени важности) написаны сугубо на c#/.net, за исключением разве что десятка шеловских скриптов для поддержки различных линупсов, *bsd и солярок. Естественно это всё построено на единой кодовой базе. Сомневаюсь что lamp такое может ;)

[identity profile] zamotivator.livejournal.com 2010-08-04 09:37 pm (UTC)(link)
То-то я вижу, как у них там PHP и MySQL нету, ага
Ссылки сами найдёте или показать где у них форк пыха и mysql лежит?
wizzard: (Default)

[personal profile] wizzard 2010-08-04 10:27 pm (UTC)(link)
>> форк пыха и mysql

Это, по-моему, уже является достаточной красной лампочкой, почему ни то, ни другое использовать в продакшене НЕЛЬЗЯ - раз без допиливания сорцов нормально работать не получается - а форк и мейнлайн рано или поздно разойдутся, и приехали.

[identity profile] w00dy.livejournal.com 2010-08-04 10:50 pm (UTC)(link)
а как же по другому то. Все участвуют в развитии и одновременно нет виноватых. тут в комментах хорошо расписно о мускуле, особенно нравится совет "Ищите" ;)

[identity profile] zamotivator.livejournal.com 2010-08-04 10:58 pm (UTC)(link)
А никакой другой помощи по такой скудной информации я дать не могу.

[identity profile] zamotivator.livejournal.com 2010-08-04 10:56 pm (UTC)(link)
не сильно-то расходятся.
работают через патчи.
все исправления - улучшение производительности

[identity profile] thedeemon.livejournal.com 2010-08-05 01:39 am (UTC)(link)
Facebook cебе вон чего сделал, это уже не lamp:

HipHop programmatically transforms your PHP source code into highly optimized C++ and then uses g++ to compile it. HipHop executes the source code in a semantically equivalent manner and sacrifices some rarely used features — such as eval() — in exchange for improved performance. HipHop includes a code transformer, a reimplementation of PHP's runtime system, and a rewrite of many common PHP Extensions to take advantage of these performance optimizations.

HipHop allows us to write the logic that does the final page assembly in PHP and iterate it quickly while relying on custom back-end services in C++, Erlang, Java, or Python to service the News Feed, search, Chat, and other core parts of the site.
http://developers.facebook.com/blog/post/358

HipHop compiles a subset of PHP to C++, which can be compiled to an executable. The executable contains a Web Server, so the resulting code is not used with any existing web server framework
http://www.dancryer.com/2010/02/hiphop-the-facebook-php-compiler