Re[6]: Компилятор F#-а...
От: VladD2 Российская Империя www.nemerle.org
Дата: 26.12.10 23:06
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>Еще сложно планировать. Вот скажу я сейчас, что займусь. Начну штудировать MSIL, экспериментировать с ним. Когда я разберусь в нем на достаточном для написания уровне прогнозировать очень сложно. У меня серьезные пробелы в понимании: SecurityPermissions, отличий в разных рантаймах, возможностей и ограничений внутренней системы типов в CLR.


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

Возможно так же найдутся поморники которые возьмут на себя часть работы. Да и вообще проще разбираться в группе.

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


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

Я пока не могу всем этим заняться хотя бы по тому, что занят правкой багов в текущей версии компилятора.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Компилятор F#-а...
От: Воронков Василий Россия  
Дата: 27.12.10 09:47
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Кстати, может тоже присоединишься к проекту? За одно на базе немерловой технологии для свое Елы сделаешь компилятор.


А что за технология такая? Планируется свой бэкенд делать?
Re[6]: Компилятор F#-а...
От: Воронков Василий Россия  
Дата: 27.12.10 10:26
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Простой он только с первого взгляда. А когда дело доходит до практики, то не все так просто. С метаданными там не мало заморочек, плюс много тонкостей в реализации паттернов высокоуровневых языков.


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

А компиляция явно ж не в лоб делается. Т.е. те самые высокоуровневые паттерны должны транслироваться во что-то промежуточное и менее высокоуровневое. У вас, как я понимаю, и сейчас есть такое промежуточное АСТ.
Re[7]: Компилятор F#-а...
От: VladD2 Российская Империя www.nemerle.org
Дата: 27.12.10 13:09
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

VD>>Кстати, может тоже присоединишься к проекту? За одно на базе немерловой технологии для свое Елы сделаешь компилятор.


ВВ>А что за технология такая? Планируется свой бэкенд делать?


Мы планируем сделать компилятор как набор компонентов. Так что на его базе будет относительно легко создавать компиляторы других языков. Собственно это делается для упрощения ДСЛ-естроения. Но можно и как высокоуровневый бэкэнд для своего языка использовать.

Вот сейчас первый этап начинаем. Нужно выбрать средство работы с метаданным и IL-ом. Кандидаты: CCI Metadata, Mono Cecil, AbsIL из F#.

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

Если хочешь — подключайся.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Компилятор F#-а...
От: VladD2 Российская Империя www.nemerle.org
Дата: 27.12.10 13:18
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

ВВ>А компиляция явно ж не в лоб делается. Т.е. те самые высокоуровневые паттерны должны транслироваться во что-то промежуточное и менее высокоуровневое. У вас, как я понимаю, и сейчас есть такое промежуточное АСТ.


Наличие типизированного АСТ ничего не меняет. Все равно его преобразования в ИЛ происходит не 1 в 1. Есть определенные паттерны которые нужно генерировать. При этом возникает туча тонкостей.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Компилятор F#-а...
От: _Eter_ http://mnazarov.ru
Дата: 27.12.10 14:09
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Ну, не умею — это не аргумент. Все по началу ничего не умеют. Это наоборот — опыт. При том очень ценный (даже вне рамок компилятора).


VD>Другое дело, что нет интереса. Тут ничего не поделаешь. К сожалению эта задача мало кого возбуждает. Но кому-то ее нужно решать.


VD>ЗЫ


VD>Как бы не получилось так, что все захотят делать одни и те же ультра-интересные задачи и забьют на менее интересные.


Меня интересует данная задача.

Очень давно интересует тема разработки компиляторов. Однако, к сожалению, мне не случалось участвовать в реальных проектах подобного рода.

И еще, я мало знаком с Nemerle, тоже как-то не было возможности использовать его в своих проектах, хотя язык мне нравится. Есть некоторое представление о ФП, разбирался с Haskell.

Если возьмете попробовать свои силы, буду очень рад.
Re[6]: Компилятор F#-а...
От: VladD2 Российская Империя www.nemerle.org
Дата: 27.12.10 14:17
Оценка:
Здравствуйте, _Eter_, Вы писали:

_E_>Меня интересует данная задача.


_E_>Очень давно интересует тема разработки компиляторов. Однако, к сожалению, мне не случалось участвовать в реальных проектах подобного рода.


_E_>И еще, я мало знаком с Nemerle, тоже как-то не было возможности использовать его в своих проектах, хотя язык мне нравится. Есть некоторое представление о ФП, разбирался с Haskell.


_E_>Если возьмете попробовать свои силы, буду очень рад.


От чего же не взять? Возьмем конечно. Что получится, то получится.

Для начала нужно прислать гугль-мыло или гугль-экаунт (создается на http://code.google.com).
Кроме того имеет смысл начать изучать документацию и примеры CCI Metadata.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Компилятор F#-а...
От: _Eter_ http://mnazarov.ru
Дата: 27.12.10 14:39
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>От чего же не взять? Возьмем конечно. Что получится, то получится.


VD>Для начала нужно прислать гугль-мыло или гугль-экаунт (создается на http://code.google.com).

VD>Кроме того имеет смысл начать изучать документацию и примеры CCI Metadata.

Гугль-мыло отправил через личное сообщение. Буду изучать документацию.
Re[7]: Компилятор F#-а...
От: WolfHound  
Дата: 27.12.10 14:42
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>От чего же не взять? Возьмем конечно. Что получится, то получится.

+1

VD>Для начала нужно прислать гугль-мыло или гугль-экаунт (создается на http://code.google.com).

Не надо. Пусть сидит в клоне.
Если будет хорошо получаться то разрешим комитить в основную ветку.
И вообще вычисти ту армию мертвых душ что ты здесь развел.
Больше половины того списка уже дано ничего не комитили.
Там должны быть только проверенные люди.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[8]: Компилятор F#-а...
От: VladD2 Российская Империя www.nemerle.org
Дата: 27.12.10 15:24
Оценка:
Здравствуйте, _Eter_, Вы писали:

_E_>Гугль-мыло отправил через личное сообщение. Буду изучать документацию.


Добавил в коммитеры.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Компилятор F#-а...
От: VladD2 Российская Империя www.nemerle.org
Дата: 27.12.10 15:34
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


VD>>От чего же не взять? Возьмем конечно. Что получится, то получится.

WH>+1

VD>>Для начала нужно прислать гугль-мыло или гугль-экаунт (создается на http://code.google.com).

WH>Не надо. Пусть сидит в клоне.

Согласен. Пока работы ресерчные их вообще в клонах нужно делать.

Но чтобы сидеть в клоне экаунт все равно не помешает. К тому же я не хочу быть мержилкой для всех. Сделает что-то приличное... дадим добро... закомитит (сам).

WH>Если будет хорошо получаться то разрешим комитить в основную ветку.


Не фига навязывать тут солдафонщину. Будем жить ровно по обратном приципу. Если человек не адекватен, будем отлучать от комита. Пока что особых проблем с этим не было.

WH>И вообще вычисти ту армию мертвых душ что ты здесь развел.


Они тебе мешают?

WH>Больше половины того списка уже дано ничего не комитили.

WH>Там должны быть только проверенные люди.

Некотороый народ возвращается даже через пол года. Мне проще залить всех чем разбираться кто есть кто. Ты свой то экаунт видел? Как по нему понять что это ты? У других не лучше.

Короче не надо искать проблем там где их нет. В овнерах только те кому есть полное доверие. Тебя еще надо добавить, кстати. А комитетом может стать любой.

Лучше будем прививать культуру путем приучения к правилам.

Первое правило — делать работу в клоне и перед комитом запрашивать ревью.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Компилятор F#-а...
От: VladD2 Российская Империя www.nemerle.org
Дата: 27.12.10 23:08
Оценка:
Здравствуйте, _Eter_, Вы писали:

_E_>Гугль-мыло отправил через личное сообщение. Буду изучать документацию.


Да, дальнейшее обсуждение лучше проводить здесь
Автор: VladD2
Дата: 26.12.10
.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: Компилятор F#-а...
От: BogdanMart Украина  
Дата: 05.01.11 00:30
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Первое правило — делать работу в клоне и перед комитом запрашивать ревью.


Это типа создать клон ссылкой на сайте, чтобы оно там его сгенрило и в нем уже ревю делать?
Re[10]: Компилятор F#-а...
От: VladD2 Российская Империя www.nemerle.org
Дата: 05.01.11 02:17
Оценка:
Здравствуйте, BogdanMart, Вы писали:

VD>>Первое правило — делать работу в клоне и перед комитом запрашивать ревью.


BM>Это типа создать клон ссылкой на сайте, чтобы оно там его сгенрило и в нем уже ревю делать?


Вот здесь есть кнопка "create a clone". С ее помощью надо создать клон. Этот клон будет виден всем. Далее делаешь все в нем попутно обновляя данные из основного репозитория (чтобы работать с последними исходниками). Далее когда что-то получается пишешь сюда и показываешь что получается. Если все ОК, то сливаешь свой репозиторий с основным (или это делает кто-то еще).
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.