Предлагаю создать отдельный каталог Parsers
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.10 16:05
Оценка: 1 (1) +2
Что-то у нас стало много парсеров и наблюдается хаотичность в их расположении.

Предлагаю в peg-parser оставить только проект макроса, а все парсеры переложить в каталог Parsers, который расположить непосредственно в сниппетах.

Развания можно дать и другие. Но главное чтобы парсеры разных языков находились в одном месте и не пересекались с кодом генератора парсеров.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Предлагаю создать отдельный каталог Parsers
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 10.12.10 16:20
Оценка: +1
Здравствуйте, VladD2, Вы писали:

+1

И я бы предложил более структурировать содержимое репозитория в части, касающейся библиотек и сниппетов (вон, народ ругается, что там свалка — отчасти правы ведь). Например: /lib переименовать в /Libraries/Standard, macros — в /Libraries/Macros, /Linq в /Libraries/Linq, перетащить из сниппетов все, относящееся к powerpack в /Libraries/PowerPack, перетащить из сниппетов все, что является законченными reusable-библиотеками в /Libraries/Misc, а /snippets вместе со всем оставшимся в нем переименовать в /Examples.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[2]: Предлагаю создать отдельный каталог Parsers
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 10.12.10 16:22
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

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


KV>+1


KV>И я бы предложил более структурировать содержимое репозитория в части, касающейся библиотек и сниппетов (вон, народ ругается, что там свалка — отчасти правы ведь). Например: /lib переименовать в /Libraries/Standard, macros — в /Libraries/Macros, /Linq в /Libraries/Linq, перетащить из сниппетов все, относящееся к powerpack в /Libraries/PowerPack, перетащить из сниппетов все, что является законченными reusable-библиотеками в /Libraries/Misc, а /snippets вместе со всем оставшимся в нем переименовать в /Examples.


Соответственно: сам PEG перетянуть в /Libraries/PegParser, а парсеры в /Libraries/Parsers или в /Libraries/PegParser/Parsers
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[2]: Предлагаю создать отдельный каталог Parsers
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.10 17:12
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>И я бы предложил более структурировать содержимое репозитория в части, касающейся библиотек и сниппетов (вон, народ ругается, что там свалка — отчасти правы ведь). Например: /lib переименовать в /Libraries/Standard, macros — в /Libraries/Macros, /Linq в /Libraries/Linq, перетащить из сниппетов все, относящееся к powerpack в /Libraries/PowerPack, перетащить из сниппетов все, что является законченными reusable-библиотеками в /Libraries/Misc, а /snippets вместе со всем оставшимся в нем переименовать в /Examples.


Вот lib в Libraries точно не надо переименовывать. В этом нет никакого практического смысла.

А вот вынести тесты из каталога компилятора не помешало бы. Они там лишние.

snippets в Examples еще хуже. Может snippets и плохо подходит для того что там лежит. Но Examples совсем не подходит. Там ведь не примеры, а (за частую) совершенно рабочий код лежит.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Предлагаю создать отдельный каталог Parsers
От: Ziaw Россия  
Дата: 10.12.10 17:25
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Что-то у нас стало много парсеров и наблюдается хаотичность в их расположении.


Подозреваю, что навеяно моим комитом Я хотел сразу в снипетах, как и csharp-parser, но у меня не получилось включить в солюшен пег с макросами. Проблема была в том, что я их пытался добавить в солюшен фолдер и все ломалось (уж не знаю, воспроизводим ли баг, но ломалось вплоть до невозможности загрузки референсящих проектов). Не разобравшись сразу в причине я их засунул в папку к пегу, так оно и осталось, комитил на скорую руку, нужно было бежать.

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

Может создать зеркало исходников на github? Там очень легко форкаеатся проект, что-то спокойно делается у себя в форке, потом законченную фичу в одно движение мерджат обратно. Еще есть очень приятная фича — запрос на пул, любой желающий может сделать фичу в своем форке и оформить заявку на мердж ее в транк, заявка видна публична, доступен кодревью и т.п.

Много серьезных опенсорс проектов уже переползают на github ради этих возможностей. Из языков там хостят код как минимум Ruby, Erlang, Haskell, Boo (некоторые просто зеркалом).

Полностью переползать не нужно, только зеркало для начала, правда все изменения оттуда будут заливаться обратно в свн под одним пользователем. Уж не знаю насколько это критично.

Из минусов git — не зная его легко отстрелить себе ногу. Меркуриал нечто среднее, он умеет почти все, что git, оставаясь при это юзер френдли не менее сабвершена.

VD>Предлагаю в peg-parser оставить только проект макроса, а все парсеры переложить в каталог Parsers, который расположить непосредственно в сниппетах.


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

VD>Развания можно дать и другие. Но главное чтобы парсеры разных языков находились в одном месте и не пересекались с кодом генератора парсеров.


+1
Re[3]: Предлагаю создать отдельный каталог Parsers
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.10 17:34
Оценка: +1
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Соответственно: сам PEG перетянуть в /Libraries/PegParser, а парсеры в /Libraries/Parsers или в /Libraries/PegParser/Parsers


Мне кажется это уже лишнее. К тому же на peg-parser есть куча ссылок в интернете.

Каталог lib содержит стандартностью библиотеку. Вот пусть и дальше это делает. Пихать туда все расширения не нужно.

snippets структурировать не мешало бы. Можно выделить из него расширенные библиотеки и переместить их в другой каталог который назвать как-то вроед LibsExt (чтобы рядом с Lib был). Перенести туда все библиотеки, а всякие примеры оставить snippets.

Конечная структура будет такой:
boot\
boot-4.0\
doc\
ExternalDependences\
Lib\
LibsExt\
LibsExt\Linq\
LibsExt\Peg\
LibsExt\Peg\Nemerle.Peg
LibsExt\Peg\Nemerle.Peg.Macros
LibsExt\Parsers\Calculator
LibsExt\Parsers\JSParser
LibsExt\Parsers\CSharpParser 
LibsExt\Nemerle.Diff\
LibsExt\Nemerle.Web.Mvc\
LibsExt\Nemerle.Xml\
LibsExt\...
macros\
misc\
ncc\
NccTests\
patchs\
snippets\
tools\
VsIntegration\


Правда
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Предлагаю создать отдельный каталог Parsers
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.10 17:43
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>Подозреваю, что навеяно моим комитом


В общем, да, но дело конечно не в нем. Просто число парсеров растет и с их структурированием нужно что-то делать.

Z>Я хотел сразу в снипетах, как и csharp-parser, но у меня не получилось включить в солюшен пег с макросами. Проблема была в том, что я их пытался добавить в солюшен фолдер


Солюшен-фолдоры вообще нельзя использовать. Они не поддерживаются в "экспрессе". Да и не нужны они для такой задачи.

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


Нужно было просто подключить ProjectReference на проекты peg-а.

Z>Может создать зеркало исходников на github?


Не надо. Дублирование — это не наш метод. К тому же твоя проблема явно не из-за SVN. Он тут вообще не причем.

Z>Там очень легко форкаеатся проект, что-то спокойно делается у себя в форке, потом законченную фичу в одно движение мерджат обратно.


С этим и в СВН-не особых проблем нет. Создавай брэнчи и возись с ним. Толь причем тут это?

Z> Еще есть очень приятная фича — запрос на пул, любой желающий может сделать фичу в своем форке и оформить заявку на мердж ее в транк, заявка видна публична, доступен кодревью и т.п.


Тебе не кажется, что ты пошел что-то другое обсуждать?

VD>>Предлагаю в peg-parser оставить только проект макроса, а все парсеры переложить в каталог Parsers, который расположить непосредственно в сниппетах.


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


Что за либа? Насколько мне известно peg-parser в инсталлятор добавлен.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Предлагаю создать отдельный каталог Parsers
От: Ziaw Россия  
Дата: 10.12.10 18:25
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Тебе не кажется, что ты пошел что-то другое обсуждать?


Что значит кажется? Я прямым текстом начал обсуждать несложную возможность бесплатно упростить жизнь разработчикам немерла. Бранчи в свн, очень смешно, да. Много их в проекте? Ни о чем не говорит? Моя исходная проблема может и не в этом, но комитить код в снипеты я не хотел именно изза того, что это в свн. Работать неудобно. Нельзя форкаться, делая эксперименты, нельзя что-то исправить на работе, комитнуться не закончив, продолжить дома.

Да и просто комититься перед каждым рефакторингом это нормальная процедура! Я ее лишен в свне.

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

Я могу сделать свой личный миррор, но официальный был бы удобнее, от него есть смысл форкаться другим. Другие свой мирор делать не будут просто для того чтобы поучаствовать в проекте.

Тем кому достаточно svn github никак бы не мешал.

VD>>>Предлагаю в peg-parser оставить только проект макроса, а все парсеры переложить в каталог Parsers, который расположить непосредственно в сниппетах.


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


VD>Что за либа? Насколько мне известно peg-parser в инсталлятор добавлен.


Для использования пег парсера нужны: Nemerle.Peg.dll в референсах и Nemerle.Peg.Macros.dll в макрорефернсах. Первая есть в дистрибутиве, второй нет.
Re[4]: Предлагаю создать отдельный каталог Parsers
От: Visor2004  
Дата: 10.12.10 18:30
Оценка:
Здравствуйте, VladD2, Вы писали:

Я так понял, что snippets — это своего рода примеры + демонстрационные решения, может стоит переименовать их просто в Samples?
Помните!!! ваш говнокод кому-то предстоит разгребать.
Re[3]: Предлагаю создать отдельный каталог Parsers
От: Visor2004  
Дата: 10.12.10 18:32
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>snippets в Examples еще хуже. Может snippets и плохо подходит для того что там лежит. Но Examples совсем не подходит. Там ведь не примеры, а (за частую) совершенно рабочий код лежит.


Так может отделить примеры от рабочего кода и назвать как-нить типа: Examples и Framework
Помните!!! ваш говнокод кому-то предстоит разгребать.
Re[4]: технический оффтоп о работе с гитом
От: Jack128  
Дата: 10.12.10 18:58
Оценка:
Здравствуйте, Ziaw, Вы писали:

если ты будешь работать через гитхаб, то твои изменения на гугл код попадут?? есть какой-нить нормально работающий В ОБЕ СТОРОНЫ транспорт гит <-> свн ?
Re[4]: Предлагаю создать отдельный каталог Parsers
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.10 19:02
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>Что значит кажется? Я прямым текстом начал обсуждать несложную возможность бесплатно упростить жизнь разработчикам немерла. ...Тем кому достаточно svn github никак бы не мешал.


Предлагаю не подменять тему.

VD>>Что за либа? Насколько мне известно peg-parser в инсталлятор добавлен.


Z>Для использования пег парсера нужны: Nemerle.Peg.dll в референсах и Nemerle.Peg.Macros.dll в макрорефернсах. Первая есть в дистрибутиве, второй нет.


Странно. Видимо это баг. Наверно когда переименовывали Nemerle.Peg.Macros.dll забыли поправить инсталлятор. Они обе должны быть в инсталляторе.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: технический оффтоп о работе с гитом
От: Ziaw Россия  
Дата: 10.12.10 19:04
Оценка:
Здравствуйте, Jack128, Вы писали:

J>если ты будешь работать через гитхаб, то твои изменения на гугл код попадут?? есть какой-нить нормально работающий В ОБЕ СТОРОНЫ транспорт гит <-> свн ?


Есть конечно. git-svn работает в обе стороны. Единственное но, либо ему придется давать пароли на гуглкоде всех комитеров в гите либо все пойдет под одним аккаунтом.
Re[4]: Предлагаю создать отдельный каталог Parsers
От: hardcase Пират http://nemerle.org
Дата: 10.12.10 19:04
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>Для использования пег парсера нужны: Nemerle.Peg.dll в референсах и Nemerle.Peg.Macros.dll в макрорефернсах. Первая есть в дистрибутиве, второй нет.


Это потому что публичный инсталлятор сейчас отстал от транка.
/* иЗвиНите зА неРовнЫй поЧерК */
Re[5]: Предлагаю создать отдельный каталог Parsers
От: Ziaw Россия  
Дата: 10.12.10 19:08
Оценка:
Здравствуйте, VladD2, Вы писали:

Z>>Что значит кажется? Я прямым текстом начал обсуждать несложную возможность бесплатно упростить жизнь разработчикам немерла. ...Тем кому достаточно svn github никак бы не мешал.


VD>Предлагаю не подменять тему.


Наболело. А вообще это по теме. Мой комит не в ту папку просто изза нехватки времени. А свн вынуждает меня комититься в транк. В гите этой проблемы нет.
Re[4]: Предлагаю создать отдельный каталог Parsers
От: hardcase Пират http://nemerle.org
Дата: 10.12.10 19:09
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Конечная структура будет такой:

VD>
VD>boot\
VD>boot-4.0\
VD>doc\
VD>ExternalDependences\
VD>Lib\
VD>LibsExt\
VD>LibsExt\Linq\
VD>LibsExt\Peg\
VD>LibsExt\Peg\Nemerle.Peg
VD>LibsExt\Peg\Nemerle.Peg.Macros
VD>LibsExt\Parsers\Calculator
VD>LibsExt\Parsers\JSParser
VD>LibsExt\Parsers\CSharpParser 
VD>LibsExt\Nemerle.Diff\
VD>LibsExt\Nemerle.Web.Mvc\
VD>LibsExt\Nemerle.Xml\
VD>LibsExt\...
VD>macros\
VD>misc\
VD>ncc\
VD>NccTests\
VD>patchs\
VD>snippets\
VD>tools\
VD>VsIntegration\
VD>


Вполне сносно, только я бы назвал LibExt, не так уши режет.
/* иЗвиНите зА неРовнЫй поЧерК */
Re[5]: Предлагаю создать отдельный каталог Parsers
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.10 19:10
Оценка:
Здравствуйте, VladD2, Вы писали:

Z>>Для использования пег парсера нужны: Nemerle.Peg.dll в референсах и Nemerle.Peg.Macros.dll в макрорефернсах. Первая есть в дистрибутиве, второй нет.


VD>Странно. Видимо это баг. Наверно когда переименовывали Nemerle.Peg.Macros.dll забыли поправить инсталлятор. Они обе должны быть в инсталляторе.


Поглядел... вроде бы ссылка на нее есть:
http://code.google.com/p/nemerle/source/browse/nemerle/trunk/misc/packages/wix/src/PowerPack.wxs?r=9419#58

Надо у Кочеткова спросить.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Предлагаю создать отдельный каталог Parsers
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.10 19:20
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>>>Что значит кажется? Я прямым текстом начал обсуждать несложную возможность бесплатно упростить жизнь разработчикам немерла. ...Тем кому достаточно svn github никак бы не мешал.


VD>>Предлагаю не подменять тему.


Z>Наболело.


Ну, так заводи отдельную тему, а не переключа другие.

VD> А вообще это по теме. Мой комит не в ту папку просто изза нехватки времени. А свн вынуждает меня комититься в транк. В гите этой проблемы нет.


Комить в брэнч если считашь работу не законченной. Да и переместить нет никаких проблем.

Ну, а что делать со ссылками я тебе уже отписал. Надо просто сделать прожект-референс. Они относительные пути будут иметь, и все будет ОК.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Предлагаю создать отдельный каталог Parsers
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.10 19:22
Оценка:
Здравствуйте, hardcase, Вы писали:

H>Вполне сносно, только я бы назвал LibExt, не так уши режет.


там ведь не одна библиотека.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Предлагаю создать отдельный каталог Parsers
От: hardcase Пират http://nemerle.org
Дата: 10.12.10 19:23
Оценка:
Здравствуйте, VladD2, Вы писали:

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


H>>Вполне сносно, только я бы назвал LibExt, не так уши режет.


VD> там ведь не одна библиотека.


Тогда ExtLibs — Extension Libraries.
/* иЗвиНите зА неРовнЫй поЧерК */
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.