Re: А не залудить ли нам свой язык для дотнета?
От: IT Россия linq2db.com
Дата: 09.12.03 23:30
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>В качестве прообраза взять Шарп и добавить в него те фичи что посчитаем нужными.


Хачу развитие AOP
Сейчас атрибуты можно читать только с помощью рефлекшин всякими интерсепторами. Хочу, чтобы с помощью атрибутов можно было встраивать в методы куски кода.
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: А не залудить ли нам свой язык для дотнета?
От: TK Лес кывт.рф
Дата: 10.12.03 00:03
Оценка: 43 (3)
Hello, "IT"
>
> Хачу развитие AOP
> Сейчас атрибуты можно читать только с помощью рефлекшин всякими интерсепторами. Хочу, чтобы с помощью атрибутов можно было встраивать в методы куски кода.

XC# (не так давно вышла бета версии 2.0) http://www.resolvecorp.com/
Posted via RSDN NNTP Server 1.8 beta
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re: А не залудить ли нам свой язык для дотнета?
От: Stoune  
Дата: 10.12.03 00:08
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>В качестве прообраза взять Шарп и добавить в него те фичи что посчитаем нужными.

....
VD>Это не окончательный список, да и можно обсудить детали/необходимость предложенных мной фич.

А мне хорошего аддина для рефакторинга хочется, а то Xtreme C# Refactory что-то не очень.
Маємо те що маємо. Л.Кравчук:E... << RSDN@Home 1.1.2 beta 1 >>
Re[3]: А не залудить ли нам свой язык для дотнета?
От: c-smile Канада http://terrainformatica.com
Дата: 10.12.03 00:13
Оценка: 4 (1)
Здравствуйте, VladD2, Вы писали:

CS>>Написать свою компактную VM,


VD>У... Это уже не реальная программа действий. И главное не нужная.


Хорошо что я этого не знал... http://terra-informatica.org/j-smile


Кстати вот инетересные результаты по быстродействию Java/С# на реальной задаче.
http://www.garret.ru/~knizhnik/dybase/doc/dybase.html#comparison
Re[3]: А не залудить ли нам свой язык для дотнета?
От: IT Россия linq2db.com
Дата: 10.12.03 01:24
Оценка:
Здравствуйте, TK, Вы писали:

TK>XC# (не так давно вышла бета версии 2.0) http://www.resolvecorp.com/


Классная штука, надо будет на досуге поиграться. Они что-то там в факе говорили про доступность исходников, не знаешь где качнуть?
Если нам не помогут, то мы тоже никого не пощадим.
Re[4]: А не залудить ли нам свой язык для дотнета?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.03 02:06
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Хорошо что я этого не знал... http://terra-informatica.org/j-smile

CS>

И большой срос?

CS>Кстати вот инетересные результаты по быстродействию Java/С# на реальной задаче.

CS>http://www.garret.ru/~knizhnik/dybase/doc/dybase.html#comparison

Это чушь, а не сравнение.

Можешь сравнить с нашим: http://rsdn.ru/summary/590.xml
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: А не залудить ли нам свой язык для дотнета?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.03 02:06
Оценка:
Здравствуйте, IT, Вы писали:

IT>Хачу развитие AOP

IT>Сейчас атрибуты можно читать только с помощью рефлекшин всякими интерсепторами. Хочу, чтобы с помощью атрибутов можно было встраивать в методы куски кода.

Я это называю "мета-языка позволяющего генерировать код во время компиляции создавая тем самым новые языковые конструкции". Короче п. 3.

Так, что присоеденяйтесь коллега.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: А не залудить ли нам свой язык для дотнета?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.03 02:06
Оценка:
Здравствуйте, TK, Вы писали:

TK>XC# (не так давно вышла бета версии 2.0) http://www.resolvecorp.com/


Что-то я там в упон не нашел генерации кода в компайлтайме. Но тем не менее ясно, что я не один с подбными идеями.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: А не залудить ли нам свой язык для дотнета?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.03 02:06
Оценка:
Здравствуйте, Stoune, Вы писали:

S>А мне хорошего аддина для рефакторинга хочется, а то Xtreme C# Refactory что-то не очень.


Будет в Видби. И без аддинов.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: А не залудить ли нам свой язык для дотнета?
От: IT Россия linq2db.com
Дата: 10.12.03 02:39
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Так, что присоеденяйтесь коллега.


Ok. А с чего это тебя вдруг понесло?
Если нам не помогут, то мы тоже никого не пощадим.
Re[3]: А не залудить ли нам свой язык для дотнета?
От: IT Россия linq2db.com
Дата: 10.12.03 02:54
Оценка: 105 (6)
Здравствуйте, VladD2, Вы писали:

VD>... и System.Reflection.Emit для герерации кода.


О! Кстати о птичках. Я тут уже изобрёл MSIL на C#'. Вот кусочек из RFD:

MapGenerator gen = new MapGenerator(methodBuilder.GetILGenerator());

gen
    .BeginExceptionBlock

    .newobj(GetDefaultConstructor(type))
    .stloc_1

    .BeginCatchBlock_Exception

    .stloc_0
    .ldloc_0
    .call(typeof(MapDescriptor), "HandleException", BindingFlags.Static | BindingFlags.NonPublic)
    .ldnull
    .stloc_1

    .EndExceptionBlock

    .ldloc_1
    .ret();


Дарю

Можно дошлифовать и продавать как Emit с человеческим лицом
Если нам не помогут, то мы тоже никого не пощадим.
Re[3]: А не залудить ли нам свой язык для дотнета?
От: Stoune  
Дата: 10.12.03 04:38
Оценка: +1
Здравствуйте, VladD2, Вы писали:

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


S>>А мне хорошего аддина для рефакторинга хочется, а то Xtreme C# Refactory что-то не очень.


VD>Будет в Видби. И без аддинов.


Поскорее бы, а то был щасливым человеком пока не попользовался IntelliJ IDEA и несмотря на мою неприязнь к Java и IDE базированіх на ней пристрастился к таким штукам.
Маємо те що маємо. Л.Кравчук:E... << RSDN@Home 1.1.2 beta 1 >>
Re[5]: А не залудить ли нам свой язык для дотнета?
От: c-smile Канада http://terrainformatica.com
Дата: 10.12.03 04:53
Оценка:
Здравствуйте, VladD2, Вы писали:

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


CS>>Хорошо что я этого не знал... http://terra-informatica.org/j-smile

CS>>

VD>И большой срос?


CS>>Кстати вот инетересные результаты по быстродействию Java/С# на реальной задаче.

CS>>http://www.garret.ru/~knizhnik/dybase/doc/dybase.html#comparison

VD>Это чушь, а не сравнение.


VD>Можешь сравнить с нашим: http://rsdn.ru/summary/590.xml


Влад, вы бы хоть сами прочитали эти статьи...
Как задача приближенная к реальной жизни, так вот и результат...
http://rsdn.ru/article/devtools/perftest.xml#XSLTSECTION137145120120
Автор(ы): Владислав Чистяков
Re[4]: А не залудить ли нам свой язык для дотнета?
От: TK Лес кывт.рф
Дата: 10.12.03 05:56
Оценка:
Hello, "IT"
>
> TK>XC# (не так давно вышла бета версии 2.0) http://www.resolvecorp.com/
>
> Классная штука, надо будет на досуге поиграться. Они что-то там в факе говорили про доступность исходников, не знаешь где качнуть?

Я там нашел только:

Is XC# open source?
No, the source code for the compiler itself is not provided. However, the source of the compilation attributes (in XCSharp.Attributes.dll) is provided. Also, the source code for the Visual Studio integration is provided (XCSharp.AddIn.dll and XCSharp.VisualStudio.dll). Feel free to use this source code and redistribute it.


т.е. сам компилятор не доступен. открыта только часть внешних интерфейсов. наверное в инсталляторе все должно быть...
вот только смущает один пункт относительно v2.0

(4) Some commercial users have asked about support. Others have asked about
source code. XC# 2.0 will become a commercial product. It will be supported.
The professional version will be priced very competitively (around $200).
The enterprise version will contain the entire source code (around $1000).


XC# 2.0 beta can be downloaded at http://www.resolvecorp.com

Please continue to send your comments and suggestions!
Thanks
Pierre Nallet
xcsharp@resolvecorp.com

Posted via RSDN NNTP Server 1.8 beta
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re[2]: А не залудить ли нам свой язык для дотнета?
От: Ведмедь Россия  
Дата: 10.12.03 06:59
Оценка:
Здравствуйте, IT, Вы писали:

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


VD>>В качестве прообраза взять Шарп и добавить в него те фичи что посчитаем нужными.


IT>Хачу развитие AOP

IT>Сейчас атрибуты можно читать только с помощью рефлекшин всякими интерсепторами. Хочу, чтобы с помощью атрибутов можно было встраивать в методы куски кода.

Полность поддерживаю.
Да пребудет с тобой Великий Джа
Re[5]: А не залудить ли нам свой язык для дотнета?
От: Ведмедь Россия  
Дата: 10.12.03 07:04
Оценка: +1
Здравствуйте, VladD2, Вы писали:

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


В>>НИ разу не занимался написанием компиляторов. Интересно было бы попробовать или просто рядом постоять, за плечо позаглядывать


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


Вопрос только в том, нужен ли "чистый компилятор" или же какие то надстройки над C# для возможности добавления различных фич в синтаксис C#
Да пребудет с тобой Великий Джа
Re: А не залудить ли нам свой язык для дотнета?
От: Yury_Malich Германия http://malich.ru
Дата: 10.12.03 07:22
Оценка:
VladD2
VD>2. Разрешить модификатор readonly для лакальных переменных и параметров. Никаких зависимостей во вне. Просто контроль программиста на этапе компиялции. Чтобы можно было написать так:
VD>
VD>void F(readonly int i)
VD>{
VD>  readonly int s = i.ToStrint() + " xxx";
VD>    s += " yyy "; // Ошибка времени компиляции
VD>    i++; // Ошибка времени компиляции
VD>}
VD>


Это интересная идея.
Хотелось бы уточнить один момент.
Скажем у меня есть class
class TAAA
{
int i;
int GetNext()
{ 
i++;
return i;
}
}


Вопрос будет ли гипотетически компилироваться такой код?
void F(readonly TAAA aaa)
{
  aaa.i=0;
  int i=aaa.GetNext();
}
"Практика — критерий истины" (c) Маркс
Re[2]: А не залудить ли нам свой язык для дотнета?
От: Dr_Sh0ck Беларусь  
Дата: 10.12.03 07:45
Оценка:
Здравствуйте, Yury_Malich, Вы писали:

Y_M>Это интересная идея.

Y_M>Хотелось бы уточнить один момент.
Y_M>Скажем у меня есть class
Y_M>
Y_M>class TAAA
Y_M>{
Y_M>int i;
Y_M>int GetNext()
Y_M>{ 
Y_M>i++;
Y_M>return i;
Y_M>}
Y_M>}
Y_M>


Y_M>Вопрос будет ли гипотетически компилироваться такой код?

Y_M>
Y_M>void F(readonly TAAA aaa)
Y_M>{
Y_M>  aaa.i=0;
Y_M>  int i=aaa.GetNext();
Y_M>}
Y_M>


Нет, насколько я понимаю.
здесь
aaa.i=0;

Потому как формальный параметр объявлен с мофикатором ридонли.
здесь
int i=aaa.GetNext();

потому как метод GetNext() объявлен без мофикикатора ридонли
Do not fake yourself ;)
ICQ#: 198114726
Re[5]: А не залудить ли нам свой язык для дотнета?
От: Аноним  
Дата: 10.12.03 07:48
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, <Аноним>, Вы писали:


А>>найти бы как редактор свой в студию вмонтировать, а там проще...


VD>Зачем? Там редактор чуть ли не лучший в мире.


имелась в виду подсветка своих дополнений, списки методов и проч.
Re[3]: А не залудить ли нам свой язык для дотнета?
От: Yury_Malich Германия http://malich.ru
Дата: 10.12.03 07:56
Оценка:
D_S>Нет, насколько я понимаю.
....
D_S>здесь
D_S>
D_S>int i=aaa.GetNext();
D_S>

D_S>потому как метод GetNext() объявлен без мофикикатора ридонли
Хорошо. Таким образом, так как в настоящей спецификации c# модификатор readonly нельзя применять к функциям, вроде как есть необходимость его реализовать. Только вот сделать это мне кажется нельзя, так как спецификация dotNet IMO не позволяет readonly-функции. Или я ошибаюсь? Хотя, конечно, можно попробовать сделать свой собственный атрибут, и, если повезёт, разработчики других языков программирования тоже его поддержат.
"Практика — критерий истины" (c) Маркс
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.