Re[6]: Совсем чуть чуть про C# 5
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 18.12.08 23:37
Оценка:
Здравствуйте, IT, Вы писали:

IT>Как ты сам понимаешь, между использованием API для компиляции кода в run-time и расширением компилятора для генерации кода в compile-time огромная разница.


Как ты сам понимаешь, между тем, что есть сейчас, и тем что будет в релизной Dev11 огромная разница.

IT> Пока, как видно из презентации, речь идёт исключительно о первом. К сожалению, для второго не достаточно переписать компилятор на C#. Но, надеюсь, мы доживём и до этого Они там сами говорят, что у них уже у самих слюнки текут, а если втянутся (а они втянутся), то есть надежда на то, что рано или поздно мы получим полноценное метапрограммирование в compile-time.


Только далеко не факт что в итоге у них получится Nemerle.
... << RSDN@Home 1.2.0 alpha 4 rev. 1127 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[5]: Совсем чуть чуть про C# 5
От: yumi  
Дата: 19.12.08 00:55
Оценка:
Здравствуйте, IB, Вы писали:

IT>>То, что продемонстрировано должно было появится ещё в 2002-м году, если бы компилятор писался на самом себе и имел нормальную модульную архитектуру.

IB>Ну вот они и переписывают компилятор на самом себе с модульной архитектурой. Как следствие, фича получается нахаляву.

Когда же будет следующий этап, когда они напишут микро-ядро, а все остальные фичи будут реализовывать поверх с помощью макросов? Вроде же говорили, мол есть спрос, многие заказчики требуют такие-то языковые фичи, но всем не угодишь... Дабы не превращать язык в помойку, логичнее было бы сделать язык с минимумом базовых вещей, а остальное по желанию пусть эти самые заказчики и делают сами.
Lisp is not dead. It’s just the URL that has changed:
http://clojure.org
Re[6]: Совсем чуть чуть про C# 5
От: Sinix  
Дата: 19.12.08 03:17
Оценка: +2
Здравствуйте, yumi, Вы писали:

Y>Когда же будет следующий этап, когда они напишут микро-ядро, а все остальные фичи будут реализовывать поверх с помощью макросов? Вроде же говорили, мол есть спрос, многие заказчики требуют такие-то языковые фичи, но всем не угодишь... Дабы не превращать язык в помойку, логичнее было бы сделать язык с минимумом базовых вещей, а остальное по желанию пусть эти самые заказчики и делают сами.


Меня щас справедливо запинают, но добавлять возможность произвольного расширения мейнстрим-языка... оверкилл получается

Если дело ограничится развитием идеи Code Contracts с генерацией кода по атрибутам — я только за.

Не лучше разнести — мейнстрим-язык пусть себе живёт, для ыкзотики — язык с макросами?
Re[7]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 04:11
Оценка: :))) :)
Здравствуйте, Sinix, Вы писали:

S>Меня щас справедливо запинают, но добавлять возможность произвольного расширения мейнстрим-языка... оверкилл получается


S>Если дело ограничится развитием идеи Code Contracts с генерацией кода по атрибутам — я только за.


Они даже на это не пойдут (скорее всего).


S>Не лучше разнести — мейнстрим-язык пусть себе живёт, для ыкзотики — язык с макросами?


Да, лучше. Дайте денег!
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 04:14
Оценка:
Здравствуйте, IT, Вы писали:

IT>Здравствуйте, Cyberax, Вы писали:


C>>А можно подробнее? У меня Silverlight (повбывав бы, нет чтоб обычный flash использовать ) на моём компьютере не работает


IT>Подробнее — eval из javascript. Но выглядит прикольненько.


Вообще-то АВК явно не про динамические фичи говорил, а про последние слайды презентации (не доступные в авишниках). Там говорится об объектной модели компилятора и о возможности вмешиваться в процесс компиляции.

В общем — это идеи давно опробированные в Яве и Boo. Ксати, в Boo от них отказались в пользу макросов (после того как поглядели на Немерле).
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 04:19
Оценка:
Здравствуйте, Andrei F., Вы писали:

AF>А у меня есть нехорошее предчувствие, что метапрограммирование будет только для динамики


В последних слайдах четко показано, что во время компиляции можно будет вмешаться и поиграться с объектным представлением кода (а-ка АСТ). Так что скорее всего ты не прав. Просто Хейльсберг конечно нагнал с дикамикой и мета-программированием по полной. Вот теперь все и шугаются.

AF>И еще всякие неприятные квирки у вариантности не радуют. Типа — List<string> может быть вариантным, а List<int> — нет; IEnumerable вариантный, а IList и ICollection — нет (кто мешал добавить IReadonlyList, чтобы обеспечить безопасность?); вообще непонятно, будет ли работать вариантность при наследовании.

AF>В общем, впечатления двойственные. С одной стороны — суп получается вроде бы вкусный. С другой стороны — мухи там ну совершенно лишние.

Это беспочвенные страхи. В Немерле ко/контр-вариантность для интерфейсов существует уже два года и никаких проблем от этого нет. Что же касается IReadonlyList, то (хотя это к теме отношения не имеет) я считаю, что методы модифицирующие списки вообще лишние в интерфейсах. Но обратного пути уже нет.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 04:20
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>На 2007 год ресурсов на переписывание компилятора не было, в 2008 они появились. Кое какие результаты этой деятельности как раз и можно увидеть в презентации.


А можно как-то законтактировать с теми кто работает над менеджед-компилятором?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 04:22
Оценка:
Здравствуйте, IB, Вы писали:

VD>>Согласен. Презентаха тупо обрезана на середине.

IB>Там первые 10 минут, как видно из названия. Надо скачивать те файлы, ссылку на которые дал AVK, там полная.

Вань, ты меня не слышишь, что ли? Глючит их долбаная авторизация. Я даже зайти не могу. Дай прямую ссылуку или кинь в меня этим файлом, плиз.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 04:57
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Здравствуйте, VladD2, Вы писали:


VD>>Так, что вопрос к тем кто присутствовал на докладе. Что говорилось о двух последених слайдах?


AVK>В конце была демка кусочков нового managed компилятора. Они не записаны?

AVK>Скачал, поглядел — все на месте, видео заканчивается слайдом о розыгрыше призов.

Блин, Андрюш, ты меня просто не хочешь сылшать. Я не могу пройти эту глючную авторизацию на их сайте. Без этого я могу сказчать только вот это:
http://platforma2009.ru/PublicVideo/Day2/DT_211_10min.wmv
Где презентаха обрезана.

В прочем, добрые люди уже решили пробелму:
http://rsdn.ru/forum/message/3218095.1.aspx
Автор: dotneter
Дата: 17.12.08
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 04:59
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Там есть один слайд, который демонстрирует, что сам компилятор тоже будет расширяем.


Но, к сожалению, почти ничего про это сказано не было.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 05:05
Оценка:
Здравствуйте, AndrewVK, Вы писали:

IT>> Пока, как видно из презентации, речь идёт исключительно о первом. К сожалению, для второго не достаточно переписать компилятор на C#. Но, надеюсь, мы доживём и до этого Они там сами говорят, что у них уже у самих слюнки текут, а если втянутся (а они втянутся), то есть надежда на то, что рано или поздно мы получим полноценное метапрограммирование в compile-time.


AVK>Только далеко не факт что в итоге у них получится Nemerle.


Я даже скажу больше. Факт, что у них Nemerle не получится. Для этого язык изначально нужно было проектировать под мета-программирование и поддержку ФП.

Но по любому, будет лучше чем есть сейчас.

Вопрос только насколько это будет удобно. Если они не ввидут квази-цитирования (или чего-то его заменяющего), то говорить о серьезных макросах позволяющих анализировать и переписывать код не пийдется. Можно будет только анализировать дерево типов. Но и это конечно лучше чем ничего.

В общем, им сейчас просо обязательно нужно серьезно изучить опыт Немерле, чтобы не создавать граблей по которым они в дальнешем будут ходить (и что самое противное, по которым они будут водить остальных).
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Совсем чуть чуть про C# 5
От: Sinclair Россия https://github.com/evilguest/
Дата: 19.12.08 05:19
Оценка:
Здравствуйте, AndrewVK, Вы писали:
AVK>Только далеко не факт что в итоге у них получится Nemerle.
Ничего. Managed C# + Reflector спасут джедаев от темных сил
... << RSDN@Home 1.2.0 alpha rev. 677>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[8]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 05:27
Оценка:
Здравствуйте, Sinclair, Вы писали:

AVK>>Только далеко не факт что в итоге у них получится Nemerle.

S>Ничего. Managed C# + Reflector спасут джедаев от темных сил

Можно пояснить, что имелось в виду?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: Совсем чуть чуть про C# 5
От: Sinclair Россия https://github.com/evilguest/
Дата: 19.12.08 05:51
Оценка:
Здравствуйте, VladD2, Вы писали:
VD>Можно пояснить, что имелось в виду?
Поясняю: настояшего джедая отсутствие API для управления компилятором не смутит.
Декомпильнул — подправил — компильнул — и вперед, на танки
... << RSDN@Home 1.2.0 alpha rev. 677>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[10]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 06:22
Оценка: :)
Здравствуйте, Sinclair, Вы писали:

S>Поясняю: настояшего джедая отсутствие API для управления компилятором не смутит.

S>Декомпильнул — подправил — компильнул — и вперед, на танки

Понял. Ну, Релектором компилируемую версию не получить. Править задолбаешся. Проще тогда декомпильнуть в IL с помощью Ildasm-а, а Рефлектором уже выцеплять только значимые функции и их править.

Вот только это будут козьи потягушки, так как в мета-программировании главная проблема — это сложность написания мета-кода. Компилятор не только должен предоставлять возможность влезть в процесс компиляции, но и предоставить очень удобный АПИ для декомпозиции кода распарсенного из файлов и композиции нового.

Так что если в МС не озаботятся этими проблемами, то толку будет мало. Ты ведь и сейчас можешь создать фрэймворк на базе динамик-методов и прочих рефлекшон-эмитов, только что-то оных на 6 лет не нарисовалось.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 08:55
Оценка:
Что смешного в моих словах?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Совсем чуть чуть про C# 5
От: IB Австрия http://rsdn.ru
Дата: 19.12.08 09:19
Оценка: +1
Здравствуйте, yumi, Вы писали:

Y>Когда же будет следующий этап, когда они напишут микро-ядро, а все остальные фичи будут реализовывать поверх с помощью макросов? Вроде же говорили, мол есть спрос, многие заказчики требуют такие-то языковые фичи, но всем не угодишь... Дабы не превращать язык в помойку, логичнее было бы сделать язык с минимумом базовых вещей, а остальное по желанию пусть эти самые заказчики и делают сами.

Тут есть проблема — пока компилятор черный ящик и никто снаружи его не использует — ты можешь корежить его как угодно и ничего тебе за это не будет. А как только ты выставляешь API наружу, то будь любезен его поддерживать, какое бы кривое оно изначально не получилось.
... << RSDN@Home 1.2.0 alpha rev. 673>>
Мы уже победили, просто это еще не так заметно...
Re[6]: Совсем чуть чуть про C# 5
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 19.12.08 12:51
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>А можно как-то законтактировать с теми кто работает над менеджед-компилятором?


Наверное можно, но я сам не знаю кто этим занят. Ты у nikov спроси, он должен быть в курсе.
... << RSDN@Home 1.2.0 alpha 4 rev. 1127 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[12]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 13:29
Оценка:
VD>Что смешного в моих словах?

В общем, такие смехриночки смотрятся или как неуважение, или как зазнайство.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.08 13:33
Оценка:
Здравствуйте, AndrewVK, Вы писали:

VD>>А можно как-то законтактировать с теми кто работает над менеджед-компилятором?


AVK>Наверное можно, но я сам не знаю кто этим занят. Ты у nikov спроси, он должен быть в курсе.


Доклад читал парень из группы ВБ. У меня его контакты вроде бы где-то были. Попробую написать.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.