Проект R#
От: Чистяков Влад (VladD2) Российская Империя www.nemerle.org
Дата: 28.01.04 15:27
Оценка: 646 (13) +1
Статья:
Проект R#
Автор(ы): Чистяков Влад (VladD2)
Дата: 28.01.2004


Авторы:
Чистяков Влад (VladD2)

Аннотация:
Что и как

29.04.04 18:31: Перенесено модератором из 'RSDN Research' — VD
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Проект R#
От: Сергей Выдров  
Дата: 29.01.04 06:19
Оценка:
Здравствуйте, Чистяков Влад (VladD2), Вы писали:

ЧВV>Статья:



Безумству храбрых поем мы славу!..
Re: Проект R#
От: konst  
Дата: 29.01.04 08:27
Оценка:
Здравствуйте, Чистяков Влад (VladD2), Вы писали:

Очень интересно. Но всё же поутру не очень понял, какие задачи призван решать R#? Совершенно серьёзно хотелось бы пару примеров или как-то попроще что ли объяснили "зачем"...
Re[2]: Проект R#
От: Eugals Россия  
Дата: 29.01.04 08:45
Оценка:
Здравствуйте, Сергей Выдров, Вы писали:

СВ>Безумству храбрых поем мы славу!..


Ага, вот именно храбрых. Народ вступает в конкуренцию с M$, причем на их же поле и на их условиях игры
Весь этот проект целиком зависит от доброй воли парней из Редмонда. Если они решат его похоронить, им будет достаточно внести в следующий стандарт C# какое-нибудь мелкое дополнение кардинально несовместимое с семантикой R#-а и всё рассыплется
... << RSDN@Home 1.1.0 stable >>
Re: Проект R#
От: Eugals Россия  
Дата: 29.01.04 08:57
Оценка:
А не кажется господам разработчикам, что они ставят телегу впереди лошади?
Может быть, чем заниматься написанием очередного клона C#, с последующим героическим расширением его синтаксиса с тем, чтобы добавить в него заявленные в манифесте фичи (кодогенераторы, трансляторы, xslt и т.п.), стоило бы начать именно с полноценного "универсального" парсера, а C# сделать его всего лишь одним из его модов? Очень сомневаюсь, что код сгенеренный CocoR-ом (хотя, я его не видел ) может служить хорошей основой для последующей сколько-нибудь серьезной модификации (если только полностью переписывать). К тому же синтаксис C# довольно плотен и может так получиться, что значительную часть времени, при расширении парсера, вам придется тратить на заботу о том, чтобы в нем что-нибудь не отвалить?

ЗЫ. Всё что я выше спросил следует воспринимать именно как вопрос (который меня очень интересует), а не попытку кого-нибудь оскорбить или поставить под сомнение умственные способности
... << RSDN@Home 1.1.0 stable >>
Re[2]: Проект R#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.01.04 09:07
Оценка:
Здравствуйте, Eugals, Вы писали:

E>стоило бы начать именно с полноценного "универсального" парсера, а C# сделать его всего лишь одним из его модов?


Универсальный парсер это миф. Если такой и сделать то он будет тормознутым и глючным.

E>Очень сомневаюсь, что код сгенеренный CocoR-ом (хотя, я его не видел ) может служить хорошей основой для последующей сколько-нибудь серьезной модификации (если только полностью переписывать).


Вот посмотри, а потом будешь выводы делать.

E> К тому же синтаксис C# довольно плотен


Чего простите?

E> и может так получиться, что значительную часть времени, при расширении парсера, вам придется тратить на заботу о том, чтобы в нем что-нибудь не отвалить?


То есть ты никогда не пользовался компиляторами компиляторов, так? Автогенеренный код никто не правит, правят описание грамматики. Грамматика описывается в EBNF.

E>ЗЫ. Всё что я выше спросил следует воспринимать именно как вопрос (который меня очень интересует), а не попытку кого-нибудь оскорбить или поставить под сомнение умственные способности


Ну тогда попробуй почитать про теорию формальных грамматик для начала. Объяснять подобное в рамках форума крайне тяжко.
... << RSDN@Home 1.1.3 beta 2 >>
AVK Blog
Re[3]: Проект R#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.01.04 09:07
Оценка:
Здравствуйте, Eugals, Вы писали:

E>Весь этот проект целиком зависит от доброй воли парней из Редмонда. Если они решат его похоронить, им будет достаточно внести в следующий стандарт C# какое-нибудь мелкое дополнение кардинально несовместимое с семантикой R#-а и всё рассыплется


Например?
... << RSDN@Home 1.1.3 beta 2 >>
AVK Blog
Re[3]: Проект R#
От: Eugals Россия  
Дата: 29.01.04 09:47
Оценка:
Здравствуйте, AndrewVK, Вы писали:

E>>стоило бы начать именно с полноценного "универсального" парсера, а C# сделать его всего лишь одним из его модов?

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

E>>Очень сомневаюсь, что код сгенеренный CocoR-ом (хотя, я его не видел ) может служить хорошей основой для последующей сколько-нибудь серьезной модификации (если только полностью переписывать).

AVK>Вот посмотри, а потом будешь выводы делать.
А как же его посмотреть, если вы доступ к CVS (на чтение) закрыли?

E>> К тому же синтаксис C# довольно плотен

E>> и может так получиться, что значительную часть времени, при расширении парсера, вам придется тратить на заботу о том, чтобы в нем что-нибудь не отвалить?
AVK>То есть ты никогда не пользовался компиляторами компиляторов, так? Автогенеренный код никто не правит, правят описание грамматики. Грамматика описывается в EBNF.
Пользовался. Я именно про EBNF и говорю. Вот захотите вы добавить в язык какое-нибудь свой оператор (или даже просто ключевое слово) и придется перечитывать стандарт C#, на предмет того нельзя ли случайно такую же лексему получить комбинацией стандартных. А если попытаться добавить туда не просто оператор, а целую новую конструкцию (что-нибуть вроде "for <i> in <list> reverse" — наобум сказал), то вообще кирдык, это я и назвал "плотностью" синтаксиса

AVK>Ну тогда попробуй почитать про теорию формальных грамматик для начала. Объяснять подобное в рамках форума крайне тяжко.

Я и не просил
... << RSDN@Home 1.1.0 stable >>
Re[4]: Проект R#
От: Eugals Россия  
Дата: 29.01.04 09:47
Оценка:
Здравствуйте, AndrewVK, Вы писали:

E>>Весь этот проект целиком зависит от доброй воли парней из Редмонда. Если они решат его похоронить, им будет достаточно внести в следующий стандарт C# какое-нибудь мелкое дополнение кардинально несовместимое с семантикой R#-а и всё рассыплется

AVK>Например?
Например такое же ключевое слово, как и у вас, но означающее совсем другое. Да мало ли способор привести в негодность чужую грамматику, если ты имеешь возможность менять стандарт, который она обязалась поддерживать ...
... << RSDN@Home 1.1.0 stable >>
Re[5]: Проект R#
От: Воронков Василий Россия  
Дата: 29.01.04 09:51
Оценка:
> Например такое же ключевое слово, как и у вас, но означающее совсем другое. Да мало ли способор привести в негодность чужую грамматику, если ты имеешь возможность менять стандарт, который она обязалась поддерживать ...

Ну знаешь живут же как-то расширения стандартов других языков. Можно все "нестандартные" ключевые слова начинать с двойного подчеркивания, напр. "__gc"
Posted via RSDN NNTP Server 1.8 beta
Re[6]: Проект R#
От: Eugals Россия  
Дата: 29.01.04 10:14
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

ВВ>Ну знаешь живут же как-то расширения стандартов других языков. Можно все "нестандартные" ключевые слова начинать с двойного подчеркивания, напр. "__gc"

от карательных действий мелкософта это вряд ли спасет
...хотя, я вам желаю в этом деле успеха
честно
... << RSDN@Home 1.1.0 stable >>
Re[4]: Проект R#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.01.04 10:20
Оценка:
Здравствуйте, Eugals, Вы писали:

E>Именно поэтому я и взял слово "универсальный" в кавычки , если не понятно, то можно заменить термин на "парсер допускающий достаточно единообразное и лаконичное описание большинства современных типовых языков программирования".


И чем это отличается от Coco? Имеем на входе грамматику, на выходе парсер. Делать тоже самое в рантайме? Зачем?

AVK>>Вот посмотри, а потом будешь выводы делать.

E>А как же его посмотреть, если вы доступ к CVS (на чтение) закрыли?

cocotools.sscli.net никто не закрыл.

AVK>>То есть ты никогда не пользовался компиляторами компиляторов, так? Автогенеренный код никто не правит, правят описание грамматики. Грамматика описывается в EBNF.

E>Пользовался. Я именно про EBNF и говорю. Вот захотите вы добавить в язык какое-нибудь свой оператор (или даже просто ключевое слово) и придется перечитывать стандарт C#, на предмет того нельзя ли случайно такую же лексему получить комбинацией стандартных. А если попытаться добавить туда не просто оператор, а целую новую конструкцию (что-нибуть вроде "for <i> in <list> reverse" — наобум сказал), то вообще кирдык

Не знаю я где ты там кирдык нашел.
... << RSDN@Home 1.1.3 beta 2 >>
AVK Blog
Re[5]: Проект R#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.01.04 10:20
Оценка:
Здравствуйте, Eugals, Вы писали:

E>Например такое же ключевое слово, как и у вас, но означающее совсем другое.


Ты не прочитал внимательно описание проекта. Все расширения должны быть синтаксически совместимы с шарпом.
... << RSDN@Home 1.1.3 beta 2 >>
AVK Blog
Re[6]: Проект R#
От: Eugals Россия  
Дата: 29.01.04 10:43
Оценка:
Здравствуйте, AndrewVK, Вы писали:

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

Его новые реализации МС выпускает (и будет выпускать) каждый год. Шарп — дольно капризная особа , вы может быть и хотите, чтобы ваши "расширения" хорошо с нею "стыковались", только вот захочет ли этого она...
... << RSDN@Home 1.1.0 stable >>
Re[7]: Проект R#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.01.04 11:00
Оценка:
Здравствуйте, Eugals, Вы писали:

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

E>Его новые реализации МС выпускает (и будет выпускать) каждый год. Шарп — дольно капризная особа , вы может быть и хотите, чтобы ваши "расширения" хорошо с нею "стыковались", только вот захочет ли этого она...

В любом случае расширения МС будут стыковаться с предыдущими версиями шарпа, а значит и с нашими.
... << RSDN@Home 1.1.3 beta 2 >>
AVK Blog
Re[8]: Проект R#
От: Eugals Россия  
Дата: 29.01.04 11:48
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>В любом случае расширения МС будут стыковаться с предыдущими версиями шарпа, а значит и с нашими.

Довольно спорный силлогизм

ЗЫЖ ...ладно, прекращаю флеймить...
... << RSDN@Home 1.1.0 stable >>
Re[5]: Проект R#
От: Eugals Россия  
Дата: 29.01.04 11:48
Оценка: +1
Здравствуйте, AndrewVK, Вы писали:

E>>Именно поэтому я и взял слово "универсальный" в кавычки , если не понятно, то можно заменить термин на "парсер допускающий достаточно единообразное и лаконичное описание большинства современных типовых языков программирования".

AVK>И чем это отличается от Coco? Имеем на входе грамматику, на выходе парсер. Делать тоже самое в рантайме? Зачем?
Затем, что это, имхо, единственная не занятая на сегодня ниша, причем довольно многообещающая. В вашем манифесте упоминалось об автоматических трансляторах и об аналоге XSLT, а для этого удобна (читай: "единственно возможна") именно рантаймовая начинка парсера. Если этого не делать, то максимум чем может стать R#, это аналогом CocoR-а (или бизона) "только круче"...
или же просто очередным клоном C#, с несколько расширенным синтаксисом.
А на этом поле уже есть сильные (и продолжающие расти) игроки: те же самые кокор, бизон, шарп и хмл.

Это конечно всё моё дикое имхо, но гораздо песпективнее был бы транслятор позволяющий в одном коде объединять код написанный сразу на нескольких ("естественных" для каждой конкретной выполняемой задачи) языках, с возможностью программисту самому доопределять набор операторов и конструкций, поддерживаемых его классами!
Во, как загнул...
... << RSDN@Home 1.1.0 stable >>
Re[6]: Проект R#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.01.04 12:08
Оценка:
Здравствуйте, Eugals, Вы писали:

AVK>>И чем это отличается от Coco? Имеем на входе грамматику, на выходе парсер. Делать тоже самое в рантайме? Зачем?

E>Затем, что это, имхо, единственная не занятая на сегодня ниша, причем довольно многообещающая.

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

E> В вашем манифесте упоминалось об автоматических трансляторах и об аналоге XSLT, а для этого удобна (читай: "единственно возможна") именно рантаймовая начинка парсера.


Давай конкретно чем она удобна.

E> Если этого не делать, то максимум чем может стать R#, это аналогом CocoR-а (или бизона) "только круче"...

E>или же просто очередным клоном C#, с несколько расширенным синтаксисом.
E>А на этом поле уже есть сильные (и продолжающие расти) игроки: те же самые кокор, бизон, шарп и хмл.

Ты опять ничего не понял. R# это средство метапрограммирования, эдакие синтаксические макросы. Основное назначение — сложная универсальная кодогенерация. Универсальная, прошу обратить внимание. Одна из задач, которую планируется решить — АОП.

E>Это конечно всё моё дикое имхо, но гораздо песпективнее был бы транслятор позволяющий в одном коде объединять код написанный сразу на нескольких ("естественных" для каждой конкретной выполняемой задачи) языках, с возможностью программисту самому доопределять набор операторов и конструкций, поддерживаемых его классами!


Зачем это надо?
... << RSDN@Home 1.1.3 beta 2 >>
AVK Blog
Re[3]: Проект R#
От: VladD2 Российская Империя www.nemerle.org
Дата: 29.01.04 14:16
Оценка: +2
Здравствуйте, Eugals, Вы писали:

E>Ага, вот именно храбрых. Народ вступает в конкуренцию с M$, причем на их же поле и на их условиях игры

E>Весь этот проект целиком зависит от доброй воли парней из Редмонда. Если они решат его похоронить, им будет достаточно внести в следующий стандарт C# какое-нибудь мелкое дополнение кардинально несовместимое с семантикой R#-а и всё рассыплется

Я буду удовлетворен при любом стечении обстоятельств. Если МС реализует нечто подобное, будет просто замечательно.

Если МС начнет с нами конкурировать, то на следующий день о нас узнает пол мира. Тоже неплохой исход.

Если же МС даже не заметит нас, то мы получим то, что хотим, и будем использовать результата в дальнейший проектах. IT уже обещал переписать RSDN на R#.
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Проект R#
От: VladD2 Российская Империя www.nemerle.org
Дата: 29.01.04 14:16
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

ВВ>Ну знаешь живут же как-то расширения стандартов других языков. Можно все "нестандартные" ключевые слова начинать с двойного подчеркивания, напр. "__gc"


Напомню, что пока нами не введено ни одного нового ключевого слова. И не планируется. В это восбтвенно и суть.
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.