Re[13]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 21.12.08 22:58
Оценка:
Здравствуйте, Кэр, Вы писали:

Кэр>Не так давно наблюдал за обсуждением разговора "а почему бы не добавить сишные макросы в C#" в локальной переписке. Eric Lippert (насколько я понимаю, один из наиболее отвественных разработчиков этой фичи в C# 5.0) ответил вполне четко: мы еще толком не знаем, на что будет похоже мета-программирование в C# 5.0, но это гарантировано не будут сишные макросы. Просто потому с компилятором можно общаться на гораздо более высоком уровне, чем скриптовый язычок, который генерит строки кода. По его мнению, которое я полностью поддерживаю, от сишных макросов вреда больше, чем пользы. Так что они специально сопротивляются такой "фиче" C#.


Правильно делают, что сопротивляются.

Что касается "мы еще толком не знаем, на что будет похоже мета-программирование в C# 5.0", то уже пора (пока не стало поздно) посмотреть на Nemerle. Сколько уже граблей в язык засунули. Зачем еще одни стругать десятелетиями?

Так что все у кого есть связи с командой C# тычте их носом в этот язык.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 21.12.08 23:00
Оценка:
Здравствуйте, AndrewVK, Вы писали:

IT>>Получится как в Немерле.


AVK>Не факт.


Думаю, IT под "как" имел в виду "не хуже чем" или "не намного хуже чем".
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Совсем чуть чуть про C# 5
От: IT Россия linq2db.com
Дата: 21.12.08 23:42
Оценка:
Здравствуйте, VladD2, Вы писали:

IT>>О процессе вмешиваться в процесс компиляции во время самой компиляции там ни слова. Этого я не слышал ни у Хейльсберга, ни в этой презентации. Если я ошибаюсь дайте временную отметку в презентации, я послушаю ещё раз.


VD>Смотри внимательно слайды (последние). Там все очевидно.


Может мы разные слайды смотрим?

IT>>А объектная модель может понадобиться и для run-time генерации кода.


VD>В рантайме есть рефлексия и городить еще оден огород смысла нет. Там явно показано, что компилятор будет предоставлять АСТ во время компиляции.


Ещё раз повторяю. Про компиляцию там ни слова. А объектная модель есть уже сейчас, см. System.Linq.Expressions. Можно набить дерево и даже его скомпилировать и выполнить. Только это не compile-time.
Если нам не помогут, то мы тоже никого не пощадим.
Re[13]: Совсем чуть чуть про C# 5
От: Andrei F.  
Дата: 22.12.08 03:39
Оценка:
Здравствуйте, AndrewVK, Вы писали:

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

C>>Неужели они посмотрели-таки на Nemerle??

AVK>К счастью, они смотрели не только на него.

http://rsdn.ru/Forum/Message.aspx?mid=3215457&only=1
Автор: AndrewVK
Дата: 15.12.08

Во первых — это неправда, во вторых — довольно грязный флэймбейт. Нехорошо
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[9]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 22.12.08 07:40
Оценка: +1 :)
Здравствуйте, IT, Вы писали:

IT>Может мы разные слайды смотрим?


Может. Но это чертовски было бы трудно добиться.
Правильную ссылку на афишник дал Дотенетер. Вот она:
http://rsdn.ru/forum/message/3218095.1.aspx
Автор: dotneter
Дата: 17.12.08


IT>Ещё раз повторяю. Про компиляцию там ни слова. А объектная модель есть уже сейчас, см. System.Linq.Expressions. Можно набить дерево и даже его скомпилировать и выполнить. Только это не compile-time.


Смотри 50-ую минуту и далее. Где-то на 50"25' идут слова "все это требует поддержки со стороны компилятора". Перед этим речь шла о мета-программировании, ДСЛ-ях, АСП-нэт и т.п. 55"7" звучит фраза, что залезть в современный компилятор нельзя... "...т.е. получить от него какие-то там деревья, а это необходимо. И это причина почему мы переписываем компилятор на менеджед-коде, на C#-е... Для того чтобы открыть это черный ящик..." — (51"24' — тут крышка ящика, олицетворяющего компилятор, открывается и из него вверх выезжает дерев отчетливо похожее на AST) — "и дать вам, всем, тем кто хочет иметь доступ к внутненним стркутурам компилятора и сделать возможными такие вещи как: мета-программирование, интерактивный цикла..." — имеется в виду REPL (Read-Eval-Print-Loop) — "...встраивание DSL... чтобы можно было читать программы на C#-е, писать свои рефакторинги и так далее...". Далее пошла демонстрациыя прототипа компилятора в которой нихрена из описанного доступа к внутренностям компилятора показано не было.

В общем, нужно быть объективными. Слова и картинки об открытии внутренностей компилятора прозвучали и кто хотел, тот их услышал. Слова конечно скомканные и невнятные. Но уже кое что. Очевидно, что у них пока что почти ничего нет (кроме прототипа менеджед-компилятора). И сейчас у них стадия эксперементов которая затянется еще минимум на 4-5 лет.

Думаю куцость новшеств которые мы будем наблюдать в 4-ом фрэймворке как раз и обусловлена работой над менеджед-компилятором.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: Совсем чуть чуть про C# 5
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 22.12.08 11:19
Оценка:
Здравствуйте, IT, Вы писали:

IT>Ещё раз повторяю. Про компиляцию там ни слова. А объектная модель есть уже сейчас, см. System.Linq.Expressions.


Она очень куцая, хуже даже CodeDOM. В 4 версии ее расширят под потребности DLR, но все равно это очень и очень маленький кусочек от того, что требуется. А требуется 100% покрытие всех фич шарпа.
... << RSDN@Home 1.2.0 alpha 4 rev. 1132 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[10]: Совсем чуть чуть про C# 5
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 22.12.08 11:19
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Думаю куцость новшеств которые мы будем наблюдать в 4-ом фрэймворке как раз и обусловлена работой над менеджед-компилятором.


Здесь ты не прав. Куцость обусловлена значительным объемом работ по рефакторингу студии. На то, чтобы еще параллельно и большое количество новых фич ширпа поддержать просто нет ресурсов. Собственно, именно поэтому были выкинуты extension everything — в компиляторе это реализовано было, а вот интеллисенс и рефакторинг студийный дорабатывать не стали.
... << RSDN@Home 1.2.0 alpha 4 rev. 1132 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[14]: Совсем чуть чуть про C# 5
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 22.12.08 11:19
Оценка:
Здравствуйте, Andrei F., Вы писали:

AF>Во первых — это неправда


У тебя есть информация, говорящая о том, что смотрели только на Nemerle?

AF>, во вторых — довольно грязный флэймбейт. Нехорошо


Т.е. предположение о том, что Nemerle это не единственный возможный вариант считается "грязным флеймбейтом" (ХЗ че такое, но звучит препохабно)?
... << RSDN@Home 1.2.0 alpha 4 rev. 1132 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[7]: Совсем чуть чуть про C# 5
От: Воронков Василий Россия  
Дата: 22.12.08 11:59
Оценка: -1
Здравствуйте, Sinix, Вы писали:

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


На самом деле они сами же фактически убедили основную фишку платформы — многоязычность. Постепенно приходим к тому, что у нас есть один C# to rule them all. А потому он одновременно и мейнстрим, и не-мейнстрим и язык для расширения офиса, и черт знает для чего.

Хотя казалось бы развития нескольких языков, каждый из которых имел бы свою собственную специализацию, было бы идеальным решением. Развитие C# можно было бы сконцентрировать на ООП и вообще не вводить в него даже кучу фишек, которые есть сейчас — это был бы "высокоуровневый" язык для описания всяких объектных моделей и "склеивания" кода.

А уж какие-то отдельные задачи можно было бы и решать на более специализированных языков. Тут и тому же выбенету вполне бы место нашлось — хотя бы как языка, наиболее удобного для всяких интеропов.
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[8]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 22.12.08 12:29
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

ВВ>На самом деле они сами же фактически убедили основную фишку платформы — многоязычность. Постепенно приходим к тому, что у нас есть один C# to rule them all. А потому он одновременно и мейнстрим, и не-мейнстрим и язык для расширения офиса, и черт знает для чего.


Они не мало делают для подедржки разных языков. Тот же DLR как раз сдерство поддержки скриптов. То что они обратили внимание на F# может подтолкнуть развитие функциональных фич и оптимизаций. Так что не все так плохо.

ВВ>Хотя казалось бы развития нескольких языков, каждый из которых имел бы свою собственную специализацию, было бы идеальным решением. Развитие C# можно было бы сконцентрировать на ООП и вообще не вводить в него даже кучу фишек, которые есть сейчас — это был бы "высокоуровневый" язык для описания всяких объектных моделей и "склеивания" кода.


Не согласен. Параметры по умолчанию и именованные параметры — это то, что дико не хватало ранее. Собственно платформа поддерживает и язык который всего этого не поддерживает — С++ . Все недовольные могут использовать его.

В общем, на мой взгляд ребята исправили старую проблему и, что еще более важно, признали свои ошибки. Лично мне это нравится.

ВВ>А уж какие-то отдельные задачи можно было бы и решать на более специализированных языков. Тут и тому же выбенету вполне бы место нашлось — хотя бы как языка, наиболее удобного для всяких интеропов.


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

AVK>Здесь ты не прав. Куцость обусловлена значительным объемом работ по рефакторингу студии. На то, чтобы еще параллельно и большое количество новых фич ширпа поддержать просто нет ресурсов. Собственно, именно поэтому были выкинуты extension everything — в компиляторе это реализовано было, а вот интеллисенс и рефакторинг студийный дорабатывать не стали.


Студией занимается другая команда. Изменения в языке микроскопические. Фактически кроме параметров все остальное — это прикручивание фич фрэймворка.
Да и что будут делать люди проевшие плешь на языкостроении в проекте где море голимого ком-интеропа с GUI Студии?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 22.12.08 12:42
Оценка:
Здравствуйте, Andrei F., Вы писали:

VD>>Что же касается IReadonlyList, то (хотя это к теме отношения не имеет) я считаю, что методы модифицирующие списки вообще лишние в интерфейсах. Но обратного пути уже нет.


AF>Ну почему нет? Добавить ридонли-интерфейсы и сейчас можно, просто разработчики не чешутся. Как с другими косяками, вроде enum constraints.


Надо не добавлять, а удалять. Например, интерфейс IList<T> нельзя сделать ковариантным просто потому, что у него есть методы Insert и RemoveAt.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: Совсем чуть чуть про C# 5
От: Воронков Василий Россия  
Дата: 22.12.08 12:50
Оценка:
Здравствуйте, VladD2, Вы писали:

ВВ>>На самом деле они сами же фактически убедили основную фишку платформы — многоязычность. Постепенно приходим к тому, что у нас есть один C# to rule them all. А потому он одновременно и мейнстрим, и не-мейнстрим и язык для расширения офиса, и черт знает для чего.

VD>Они не мало делают для подедржки разных языков. Тот же DLR как раз сдерство поддержки скриптов. То что они обратили внимание на F# может подтолкнуть развитие функциональных фич и оптимизаций. Так что не все так плохо.

Мне кажется они немало делают для того, чтобы привлечь разработчиков на платформу — в т.ч. и разработчиков компиляторов. Но прошло уже достаточно много времени — и до сих всевозможные ХХХ.NET как были так и остались диковинными зверями.
С F# ситуация мне вообще не слишком понятная. Я так и не понял, что с ним будет — он появится in-box вместе со студией и будет поддерживаться MS? Или как? Опять-таки F# уже не вчера появился и то, что они сейчас вдруг неожиданно о нем вспомнили — по ходу вместе 1.5 программистов поручили им заниматься 3.5 — не так уж и показательно.

ВВ>>Хотя казалось бы развития нескольких языков, каждый из которых имел бы свою собственную специализацию, было бы идеальным решением. Развитие C# можно было бы сконцентрировать на ООП и вообще не вводить в него даже кучу фишек, которые есть сейчас — это был бы "высокоуровневый" язык для описания всяких объектных моделей и "склеивания" кода.

VD>Не согласен. Параметры по умолчанию и именованные параметры — это то, что дико не хватало ранее.

Мне так кажется, что если поискать тут флеймы 2002-2003 гг. выпуска, то вполне можно найти заявления авторитетных личностей в стиле, что параметры по умолчанию — это не есть гуд да и вообще не объектно-ориентированно.
Мне не хватало параметров по умолчанию при работе с COM-интеропом. И все. В остальных случаях они не нужны. Да и косвенно вполне могут навязывать порочную практику описания функций — достаточно посмотреть на тот же офис-интероп. У функции не должно быть леса параметров. И тогда без optional очень даже можно обходиться

Но дело даже не в параметрах по умолчанию. Бог с ними, это по большому счету мелочь. Язык развивается по очень странным принципам, как-то "беспредметно" — фактически его начинают затачивать под конкретные задачи, но в то же время он по-прежнему остается универсальным языком. Есть вероятность, что получится "слегка помойка".

Мне кажется было бы куда логичнее, если б C# остался на уровне 1.0 (да еще и минус некоторые фишки вроде делегатов, да и статик можно тоже выкинуть), но при этом был бы полноценный ФП язык и язык поддерживающий мета-программирование.
Мне непонятно — зачем все это смешивать?

VD>Собственно платформа поддерживает и язык который всего этого не поддерживает — С++ . Все недовольные могут использовать его.


Там слишком многа букафф

VD>В общем, на мой взгляд ребята исправили старую проблему и, что еще более важно, признали свои ошибки. Лично мне это нравится.

ВВ>>А уж какие-то отдельные задачи можно было бы и решать на более специализированных языков. Тут и тому же выбенету вполне бы место нашлось — хотя бы как языка, наиболее удобного для всяких интеропов.

VD>ВБ не более специализированный язык. Он вообще копия Шарпа с немного другим синтаксисом. Принципиальных различий между ними почти не осталось.


Теперь — да. На момент выхода отличий на самом деле было не так мало. и никто не мешал сделать его более специализированным и еще больше заточить под конкретные задачи. А так — получается действительно "другой синтаксис" для тех кому не нравятся фигурные скобки.

Помнится, я какой-то блог выбенетчика читал, страдающего дислексией — так вот он старательно всех убеждал, что си-шарп менее читабелен чем бейсик, так как является регистрозависимым, а он, в виду особенностей "графического" восприятия, буквы в разных регистрах различать не может.
В общем странная какая-то специализация у языка получается
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[15]: Совсем чуть чуть про C# 5
От: VladD2 Российская Империя www.nemerle.org
Дата: 22.12.08 13:25
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>У тебя есть информация, говорящая о том, что смотрели только на Nemerle?


Я подозреваю, что на Nemerle, как раз, упорно смотреть не хотят. Что видно, в частности, и из вышеприведенного доклада.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[12]: Совсем чуть чуть про C# 5
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 22.12.08 13:41
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Студией занимается другая команда.


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

VD>Да и что будут делать люди проевшие плешь на языкостроении в проекте где море голимого ком-интеропа с GUI Студии?


Ты, видимо, чего то не понял. В итоге надо получить в обязательном порядке и компилятор, и поддержку в студии. Если нет чего то одного — в релизе ничего не будет.
... << RSDN@Home 1.2.0 alpha 4 rev. 1132 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[10]: Совсем чуть чуть про C# 5
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 22.12.08 13:48
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

ВВ>С F# ситуация мне вообще не слишком понятная.


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

ВВ> Я так и не понял, что с ним будет — он появится in-box вместе со студией


Да.


ВВ> и будет поддерживаться MS?


Да.

ВВ> Или как? Опять-таки F# уже не вчера появился и то, что они сейчас вдруг неожиданно о нем вспомнили — по ходу вместе 1.5 программистов поручили им заниматься 3.5 — не так уж и показательно.


Зато показателен тот факт, что под F#, IronPython и IronRuby дорабатывается BCL и JIT.

ВВ>Мне кажется было бы куда логичнее, если б C# остался на уровне 1.0


Выбираешь соотв. настройку в проекте и наслаждаешься. Делов то.
... << RSDN@Home 1.2.0 alpha 4 rev. 1132 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[11]: Совсем чуть чуть про C# 5
От: Воронков Василий Россия  
Дата: 22.12.08 14:01
Оценка:
Здравствуйте, AndrewVK, Вы писали:

ВВ>>С F# ситуация мне вообще не слишком понятная.

AVK>Интересно — ты не понял, а выводы далеко идущие уже делаешь. Ты уж что нибудь одно — либо интересуйся свежими новостями, либо тогда не пытайся делать предсказания на основании отсутствующей информации.

А можно уточнить, какой я сделал "далекоидущий" вывод? И что я конкретно предсказал?

ВВ>> Я так и не понял, что с ним будет — он появится in-box вместе со студией

AVK>Да.

А вот здесь:
http://blogs.msdn.com/dsyme/archive/2008/12/10/fsharp-to-ship-as-part-of-visual-studio-2010.aspx
несмотря на "громкое" название утверждается обратное:

Q. Is F# in .NET 4.0?

The current plan of record is that the F# core libraries and compiler will ship as an additional component, not in the .NET Framework itself. We expect this to be available as an F# redistributable package. Referencing this package from a Visual Studio setup project will be sufficient to deploy the core library DLL(s) it to a client machine.


То, что F# можно "подключить" и использовать — как бы не особо "свежая новость".

ВВ>>Мне кажется было бы куда логичнее, если б C# остался на уровне 1.0

AVK>Выбираешь соотв. настройку в проекте и наслаждаешься. Делов то.

А это уже передергивание того, о чем я писал.
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[12]: Совсем чуть чуть про C# 5
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 22.12.08 14:31
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

ВВ>А можно уточнить, какой я сделал "далекоидущий" вывод? И что я конкретно предсказал?


На самом деле они сами же фактически убедили основную фишку платформы — многоязычность. Постепенно приходим к тому, что у нас есть один C# to rule them all.


ВВ>А вот здесь:

ВВ>http://blogs.msdn.com/dsyme/archive/2008/12/10/fsharp-to-ship-as-part-of-visual-studio-2010.aspx
ВВ>несмотря на "громкое" название утверждается обратное:

ВВ>

ВВ>Q. Is F# in .NET 4.0?

ВВ>The current plan of record is that the F# core libraries and compiler will ship as an additional component, not in the .NET Framework itself. We expect this to be available as an F# redistributable package. Referencing this package from a Visual Studio setup project will be sufficient to deploy the core library DLL(s) it to a client machine.


Не находишь, что .NET Framework 4 и VS 2010 это не одно и то же? По твоей же ссылке:

I am now thrilled to announce one result of this investment: F# will ship as part of Visual Studio 2010!

Мне вот интересно — ты просто свою ссылку не читал, или решил что я туда не полезу?

AVK>>Выбираешь соотв. настройку в проекте и наслаждаешься. Делов то.


ВВ>А это уже передергивание того, о чем я писал.


Ничуть. Программировать в рамках C# 1.0 можно на самой последней студии. Это факт.
... << RSDN@Home 1.2.0 alpha 4 rev. 1132 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[13]: Совсем чуть чуть про C# 5
От: Воронков Василий Россия  
Дата: 22.12.08 14:58
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>

На самом деле они сами же фактически убедили основную фишку платформы — многоязычность. Постепенно приходим к тому, что у нас есть один C# to rule them all.


А у тебя другое мнение? Возможно, основанное на широком использовании в проектах других языков, помимо C#?
Это не предсказание, а описание текущей ситуации.

AVK>Не находишь, что .NET Framework 4 и VS 2010 это не одно и то же? По твоей же ссылке:

AVK>

I am now thrilled to announce one result of this investment: F# will ship as part of Visual Studio 2010!

AVK>Мне вот интересно — ты просто свою ссылку не читал, или решил что я туда не полезу?

Ну да, я что-то малость запутался — фреймворк, студия. ОК, F# включается в дистрибуцию студии, а не фреймворка. К слову, там и сейчас не один си-шарп. И какой тут вывод можно сделать? Да никакого.
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[14]: Совсем чуть чуть про C# 5
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 22.12.08 15:12
Оценка: +1 -1
Здравствуйте, Воронков Василий, Вы писали:

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


AVK>>

На самом деле они сами же фактически убедили основную фишку платформы — многоязычность. Постепенно приходим к тому, что у нас есть один C# to rule them all.


ВВ>А у тебя другое мнение?


Да.

ВВ> Возможно, основанное на широком использовании в проектах других языков, помимо C#?


Возможно.

ВВ>Это не предсказание, а описание текущей ситуации.


"Постепенно приходим к тому" это именно что предсказание.

ВВ>Ну да, я что-то малость запутался — фреймворк, студия. ОК, F# включается в дистрибуцию студии, а не фреймворка. К слову, там и сейчас не один си-шарп.


Удивительно.

ВВ> И какой тут вывод можно сделать? Да никакого.


А какой ты хотел сделать?
... << RSDN@Home 1.2.0 alpha 4 rev. 1132 on Windows Vista 6.0.6001.65536>>
AVK Blog
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.