Re: А не залудить ли нам свой язык для дотнета?
От: mihailik Украина  
Дата: 10.12.03 08:01
Оценка: 12 (1)
VD>В качестве прообраза взять Шарп и добавить в него те фичи что посчитаем нужными.
VD>Для начала просто воспоизвести Шарп 2.0. А потом зняться наворотами.

Многовато работы — компилятор писать, разве что на весь сайт устроить PR-компанию.

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


Только вот найти бы такого человека-изучателя.

Ты, Влад, наверное, не захочешь, сам ведь на загруженность жаловался. Тут нужен какой-то доброволец. А вы его за это стимулируйте какими-нибудь невещественными факторами. Ну, там журнал ему бесплатно присылайте, или шапку какую-нибудь с логотипом, прославить посулите на всю страну и т.п. Конечно, SSCLI и Mono на болванку такому кадру тоже слить стоило бы.

У меня таких знакомых нету. Это уж вы там в RSDN в новостях устройте анонсы. Главное, лести не жалейте! Чтоб качественный target на это дело купился
... << RSDN@Home 1.1.0 stable >>
Re[4]: А не залудить ли нам свой язык для дотнета?
От: Dr_Sh0ck Беларусь  
Дата: 10.12.03 08:18
Оценка:
Здравствуйте, Yury_Malich, Вы писали:

Y_M>Хорошо. Таким образом, так как в настоящей спецификации c# модификатор readonly нельзя применять к функциям, вроде как есть необходимость его реализовать. Только вот сделать это мне кажется нельзя, так как спецификация dotNet IMO не позволяет readonly-функции. Или я ошибаюсь?


Дык а на фиг тогда свой язык, есди он будет следовать _только_ спецификации и все

Y_M>Хотя, конечно, можно попробовать сделать свой собственный атрибут, и, если повезёт, разработчики других языков программирования тоже его поддержат.


Насколко я понимаю, все ето ляжет только лишь на компайл-тайм. Хотя, конечно... вобщем тут думать надо
Do not fake yourself ;)
ICQ#: 198114726
Re[6]: А не залудить ли нам свой язык для дотнета?
От: ForestLabs Россия  
Дата: 10.12.03 08:43
Оценка:
Здравствуйте, Ведмедь, Вы писали:

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


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


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


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


В>Вопрос только в том, нужен ли "чистый компилятор" или же какие то надстройки над C# для возможности добавления различных фич в синтаксис C#


Вот-вот! Здесь уже зерно есть. Может, что-то типа препроцессора, который на данный момент отсутствует. А внизу — обязательно шарп от MS. Пусть будет 2-я, 3-я версия, препроцессор мало изменится. А можно и постпроцессор! От!
Re[7]: А не залудить ли нам свой язык для дотнета?
От: ForestLabs Россия  
Дата: 10.12.03 08:47
Оценка:
Здравствуйте, ForestLabs, Вы писали:

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


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


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


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


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


В>>Вопрос только в том, нужен ли "чистый компилятор" или же какие то надстройки над C# для возможности добавления различных фич в синтаксис C#


FL>Вот-вот! Здесь уже зерно есть. Может, что-то типа препроцессора, который на данный момент отсутствует. А внизу — обязательно шарп от MS. Пусть будет 2-я, 3-я версия, препроцессор мало изменится. А можно и постпроцессор! От!


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

Таким вот образом.
Re[5]: А не залудить ли нам свой язык для дотнета?
От: Yury_Malich Германия http://malich.ru
Дата: 10.12.03 08:56
Оценка:
Здравствуйте, Dr_Sh0ck, Вы писали:

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


D_S>Дык а на фиг тогда свой язык, есди он будет следовать _только_ спецификации и все


Ну так нам вроде надо корректную обеспесить работу в межязыковой среде DotNet или как? Уже существует один ReadOnlyAttribute(bool ), он применяется для свойств. Если его использовать, надо убедиться, что конфликтов не будет. Я попробовал такой код.
        [ReadOnly(true)]
        int Get1()
        {
            return 1;
        }

        int a=0;

        [ReadOnly(true)]
        void Set1()
        {
            a=1;
        }

        private void button1_Click(object sender, System.EventArgs e)
        {
            Get1();
            Set1();
        }

Ошибок компиляции не даёт.
В общем, здесь придётся изучить все возможные последствия.
"Практика — критерий истины" (c) Маркс
Re: А не залудить ли нам свой язык для дотнета?
От: VBez  
Дата: 10.12.03 11:03
Оценка: 5 (2)
Кстати здесь за <b>adding experimental features to the compiler(s) and runtime</b>(правда все это нужно в Роторе делать) даже денег дают.
Re[4]: А не залудить ли нам свой язык для дотнета?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 10.12.03 14:21
Оценка: +2
Здравствуйте, IT, Вы писали:

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


Не въехал в чем фишка
... << RSDN@Home 1.1.2 beta 2 >>
AVK Blog
Re[6]: А не залудить ли нам свой язык для дотнета?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 10.12.03 14:31
Оценка: +1
Здравствуйте, c-smile, Вы писали:

CS>Влад, вы бы хоть сами прочитали эти статьи...

CS>Как задача приближенная к реальной жизни, так вот и результат...

Java в 2 раза быстрее шарпа? Действительно похоже на туфту или криворукость.
... << RSDN@Home 1.1.2 beta 2 >>
AVK Blog
Re[5]: А не залудить ли нам свой язык для дотнета?
От: Silver_s Ниоткуда  
Дата: 10.12.03 14:31
Оценка:
Здравствуйте, VladD2, Вы писали:

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

M>>Дык, а может тогда что-нить реально полезное создадите? Я бы спасибо сказал :)
VD>Мне это будет реально полезно. А спасибо мне рельно бесполезно. ;)

И каким путем пойдем? Cначала сделаем фичи и потом будем думать полезные они или нет.
Или сначала придумаем каких фич сейчас не хватает, и потом будем думать как их привинчивать.
А то уже взялись за редактор, IDE, а что делать не придумали.
Re[4]: А не залудить ли нам свой язык для дотнета?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.03 15:50
Оценка:
Здравствуйте, IT, Вы писали:

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


IT>Ok. А с чего это тебя вдруг понесло?


Долгая история... Захотелось как-то по чеоловечески распарсить код...

А получить некий C#++ или R[SRN]# давненько хотелось. Не может моя душа мериться с отсуствием напрашивающихся фич.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: А не залудить ли нам свой язык для дотнета?
От: IT Россия linq2db.com
Дата: 10.12.03 15:53
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Не въехал в чем фишка


В ясности. Тот же самый код в лоб:

ILGenerator il = methodBuilder.GetILGenerator();

il.BeginExceptionBlock();

il.Emit(OpCodes.Newobj, GetDefaultConstructor(type));
il.Emit(OpCodes.Stloc_1);

il.BeginCatchBlock(typeof(Exception));

il.Emit(OpCodes.Stloc_0);
il.Emit(OpCodes.Ldloc_0);
il.EmitCall(OpCodes.Call, typeof(MapDescriptor).GetMethod("HandleException", BindingFlags.Static | BindingFlags.NonPublic));
il.Emit(OpCodes.Ldnull);
il.Emit(OpCodes.Stloc_1);

il.EndExceptionBlock();

il.Emit(OpCodes.Ldloc_1);
il.Emit(OpCodes.Ret);
Если нам не помогут, то мы тоже никого не пощадим.
Re[6]: А не залудить ли нам свой язык для дотнета?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 10.12.03 16:11
Оценка:
Здравствуйте, IT, Вы писали:

Да нет, ты что конкретно сделал? Препроцессор?
... << RSDN@Home 1.1.2 beta 2 >>
AVK Blog
Re[7]: А не залудить ли нам свой язык для дотнета?
От: IT Россия linq2db.com
Дата: 10.12.03 16:33
Оценка: 24 (1) +1 :)
Здравствуйте, AndrewVK, Вы писали:

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


AVK>Да нет, ты что конкретно сделал? Препроцессор?


Зачем? Старый плюсовый трюк:

class MapGenerator
{
    // ...

    public MapGenerator stloc_3 
    { 
        get 
        {
            m_gen.Emit(OpCodes.Stloc_3);
            return this; 
        } 
    }

    public MapGenerator stfld(FieldInfo fi) 
    {
        m_gen.Emit(OpCodes.Stfld, fi); 
        return this; 
    }

    // ...
}
Если нам не помогут, то мы тоже никого не пощадим.
Re[8]: А не залудить ли нам свой язык для дотнета?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 10.12.03 16:45
Оценка: :)))
Здравствуйте, IT, Вы писали:

IT>Зачем? Старый плюсовый трюк:


Понятно. Извращенец
... << RSDN@Home 1.1.2 beta 2 >>
AVK Blog
Re[6]: А не залудить ли нам свой язык для дотнета?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.03 18:54
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>имелась в виду подсветка своих дополнений, списки методов и проч.


Ну, как минимум есть кастом-ключевые слова. Можно и эддин сделать. Было бы к чему.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: А не залудить ли нам свой язык для дотнета?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.03 18:54
Оценка:
Здравствуйте, Ведмедь, Вы писали:

В>Вопрос только в том, нужен ли "чистый компилятор" или же какие то надстройки над C# для возможности добавления различных фич в синтаксис C#


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

Да и интересно это. Причем не факт, что копаться в мсил-е (в случае надстройки над МС C#) будет в конечном счете проще, чем создать свой компилятор.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: А не залудить ли нам свой язык для дотнета?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.03 18:54
Оценка:
Здравствуйте, ForestLabs, Вы писали:

FL>Вот-вот! Здесь уже зерно есть. Может, что-то типа препроцессора, который на данный момент отсутствует. А внизу — обязательно шарп от MS. Пусть будет 2-я, 3-я версия, препроцессор мало изменится. А можно и постпроцессор! От!


Препроцесор не даст тех возможностей, что нужны. К тому же усложнится отладка. Ну, а что такое постпроцессор, я даже не знаю. Менять готовую сборку, что ли?
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: А не залудить ли нам свой язык для дотнета?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.03 18:54
Оценка:
Здравствуйте, Silver_s, Вы писали:

S_>И каким путем пойдем? Cначала сделаем фичи и потом будем думать полезные они или нет.

S_> Или сначала придумаем каких фич сейчас не хватает, и потом будем думать как их привинчивать.
S_> А то уже взялись за редактор, IDE, а что делать не придумали.

О том, что делать я уже сказал в теме. Про редактор и ИДЕ — это уже флуд. Народу просто потрепаться охота.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: А не залудить ли нам свой язык для дотнета?
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.12.03 18:54
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Влад, вы бы хоть сами прочитали эти статьи...


И не собираюсь. Так же как не собираюсь читать и другую пропаганду. Я имел попыт программирования и на Яве, и на С++, и на Шарпе. И могу адекаватно оценивать предлагаемую мне информацию.

Такие результаты можно получить только использую некорректные сравнения (разные алгоритмы, ошибки и т.п.).

Ну, еще просто подтасовав результаты.

CS>Как задача приближенная к реальной жизни, так вот и результат...

CS>http://rsdn.ru/article/devtools/perftest.xml#XSLTSECTION137145120120
Автор(ы): Владислав Чистяков


Спешно. Что еще можно сказать? Верь в этот бред и дальше. Я не буду.

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

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

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

В>Полность поддерживаю.


Если реализуем, то о чем я говорю АОР будет самым меньшим, что мы получим.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.