Имею желание разработать язык следующего, за С++, поколения, являющегося его идейным потомком и его же убийцей.
Идейную наследственность вижу в кардинальном усилении метапрограммной составляющей. Одновременное, с этим, кардинальное удаление С рудиментов должно породить язык необычайной выразительной мощи.
Ищу единомышленников, которые помогут мне в моих грандиозных планах
Разработка будет открытая (всё по BSD), основной язык имплементации С++, название языка 'Tany'
Здравствуйте, Cpphater, Вы писали:
C>Имею желание разработать язык следующего, за С++, поколения, являющегося его идейным потомком и его же убийцей. C>Идейную наследственность вижу в кардинальном усилении метапрограммной составляющей. Одновременное, с этим, кардинальное удаление С рудиментов должно породить язык необычайной выразительной мощи.
Боюсь, ты опоздал. Есть Ruby, Nemerle, Template Haskell, Scheme, D и т.д. Зачем тебе ещё один?
Здравствуйте, Awaken, Вы писали:
C>>Разработка будет открытая (всё по BSD), основной язык имплементации С++, название языка 'Tany'
A>назови его VladD2++
Это лишнее. По моему — Язык-убийца Тани — вполне нормально
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Здравствуйте, konsoletyper, Вы писали:
K>Здравствуйте, Cpphater, Вы писали:
C>>Имею желание разработать язык следующего, за С++, поколения, являющегося его идейным потомком и его же убийцей. C>>Идейную наследственность вижу в кардинальном усилении метапрограммной составляющей. Одновременное, с этим, кардинальное удаление С рудиментов должно породить язык необычайной выразительной мощи.
K>Боюсь, ты опоздал. Есть Ruby, Nemerle, Template Haskell, Scheme, D и т.д. Зачем тебе ещё один?
И че все убийцы?
Побеждающий других — силен,
Побеждающий себя — Могущественен.
Лао Цзы
Здравствуйте, AndrewVK, Вы писали:
K>>Боюсь, ты опоздал. Есть Ruby, Nemerle, Template Haskell, Scheme, D и т.д. Зачем тебе ещё один?
AVK>Очевидно, у них у всех есть фатальный недостаток.
Я, я знаю какой Ну спросите, спросите меня
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Здравствуйте, Коваленко Дмитрий, Вы писали:
КД>Здравствуйте, AndrewVK, Вы писали:
K>>>Боюсь, ты опоздал. Есть Ruby, Nemerle, Template Haskell, Scheme, D и т.д. Зачем тебе ещё один?
AVK>>Очевидно, у них у всех есть фатальный недостаток. КД>Я, я знаю какой Ну спросите, спросите меня
Спрашиваем, но сами тоже ответим
Ни один из них не является идейным потомком С++. Одни подслащают жизнь в отдельных областях, другие делают кодирование безопасным, третьи вообще чисто функциональные. Ни один из них не может рассматриваться как революционный шаг вперёд. Ни один из них не эффетивен как С. Продолжение будет следовать...
Здравствуйте, Cpphater, Вы писали:
C>Разработка будет открытая (всё по BSD), основной язык имплементации С++, название языка 'Tany'
С++ очень плохо подходит для разработки компиляторов.
И вобще ИМХО язык нужно писать на самом себе.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, Cpphater, Вы писали:
C>Ни один из них не является идейным потомком С++. Одни подслащают жизнь в отдельных областях, другие делают кодирование безопасным, третьи вообще чисто функциональные. Ни один из них не может рассматриваться как революционный шаг вперёд. Ни один из них не эффетивен как С. Продолжение будет следовать...
Ну, C++ в таком случае тоже не был революционным. Типа, ООП придумали не в нём (МП — тоже). И по поводу идейности непонятно. Если под идеей C++ подразумевается высокая эффективность при сохранении достаточно высокого уровня, то тут масса последователей: Java, C#, Nemerle, OCaml. Если под идеей подразумевается сложность написания программ — тогда тебе прямая дорога к branfuck. Если сложность изучения — то Perl. Если трахи с метапрораммными наворотами — то прямая дорога к Haskell без Template.
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, Cpphater, Вы писали:
C>>Разработка будет открытая (всё по BSD), основной язык имплементации С++, название языка 'Tany' WH>С++ очень плохо подходит для разработки компиляторов. WH>И вобще ИМХО язык нужно писать на самом себе.
Здравствуйте, Glagolev, Вы писали:
G>ага, прям сразу на самом себе
Ну например компилятор Java написан на Java...
И вобще это весьма распространенная практика.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, Cpphater, Вы писали:
C>Имею желание разработать язык следующего, за С++, поколения, являющегося его идейным потомком и его же убийцей. C>Идейную наследственность вижу в кардинальном усилении метапрограммной составляющей. Одновременное, с этим, кардинальное удаление С рудиментов должно породить язык необычайной выразительной мощи. C>Ищу единомышленников, которые помогут мне в моих грандиозных планах C>Разработка будет открытая (всё по BSD), основной язык имплементации С++, название языка 'Tany'
А чем D конкретно не устраивает в качестве могильщика?
Чем могильщица Таня будет принципиально лучше?
Здравствуйте, c-smile, Вы писали:
WH>>С++ очень плохо подходит для разработки компиляторов. CS>Чё так?
Ни алгебраических типов.
Ни сравнения с образцом.
Ни нормальных макросов.
Ни сборщика мусора.
...
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, c-smile, Вы писали:
CS>Здравствуйте, Cpphater, Вы писали:
C>>Имею желание разработать язык следующего, за С++, поколения, являющегося его идейным потомком и его же убийцей. C>>Идейную наследственность вижу в кардинальном усилении метапрограммной составляющей. Одновременное, с этим, кардинальное удаление С рудиментов должно породить язык необычайной выразительной мощи. C>>Ищу единомышленников, которые помогут мне в моих грандиозных планах C>>Разработка будет открытая (всё по BSD), основной язык имплементации С++, название языка 'Tany'
CS>А чем D конкретно не устраивает в качестве могильщика? CS>Чем могильщица Таня будет принципиально лучше?
Идет явная путанница между терминами "убийца" и "могильщик". Может быть D и хорош как могильщик, но не как убийца В D, например, есть встроенный GC, что является недопустимым для True потомка С++. GC может быть только библиотечным.
Не "Таня", а Tany. Или вы и Ruby называете по-свойски Рубиком?
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, Cpphater, Вы писали:
C>>Разработка будет открытая (всё по BSD), основной язык имплементации С++, название языка 'Tany' WH>С++ очень плохо подходит для разработки компиляторов. WH>И вобще ИМХО язык нужно писать на самом себе.
Согласен. И отчасти это будет так.
Обобщая различные концепты С++, я пришел к выводу, что язык должен иметь "микроядерную" архитектуру. Микроядро будет относительно простым и написанным на С++. На нём, но в терминах языка будут вводиться имплементации таких понятий как пространства имён, классов, функций и их взаимосвязей. Собственно микропрограммы могут писаться по-разному, соответственно порождая разные диалекты Tany. Например TanyJ, TanyC, Tany# которые могут рассматриваться как метапрограммные надстройки над Java, C++, C#. Но меня в первую очередь интересует создание TanyC как замена С++. Результатои работы компилятора Tany, для первых версий компилятора, будет код на С/C++ (для TanyJ был бы Java).
Здравствуйте, Cpphater, Вы писали:
C>Обобщая различные концепты С++,
Чего простите? C>я пришел к выводу, что язык должен иметь "микроядерную" архитектуру.
Что такое микроядерная архитектура ядра? Lisp? C>Микроядро будет относительно простым и написанным на С++.
Никокого С++. Язык нужно писать на самом себе.
См http://nemerle.org/svn/nemerle/trunk C>На нём, но в терминах языка будут вводиться имплементации таких понятий как пространства имён, классов, функций и их взаимосвязей.
Те каждый раз писать свой язык? C>Собственно микропрограммы могут писаться по-разному, соответственно порождая разные диалекты Tany.
Кошмар. Сказку про Вавилонскую башню помнишь?
Кстати одна из главных проблем С++ это куча диалектов.
Но С++ уже большой и хоть с трудом но это переживает. А вот твой язык сдохнет сразу. C>Например TanyJ, TanyC, Tany# которые могут рассматриваться как метапрограммные надстройки над Java, C++, C#. Но меня в первую очередь интересует создание TanyC как замена С++. Результатои работы компилятора Tany, для первых версий компилятора, будет код на С/C++ (для TanyJ был бы Java).
Смотри R# http://rsdn.ru/projects/rsharp/article/rsharp_mag.xml
Проект умер... ибо тупик.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, Cpphater, Вы писали:
C>>Обобщая различные концепты С++, WH>Чего простите?
кирпичики языка, понятия, те же неймспейсы, классы, функции, внутренние алгоритмы поиска имён, автоматичесикх преобразований и т.п.
C>>я пришел к выводу, что язык должен иметь "микроядерную" архитектуру. WH>Что такое микроядерная архитектура ядра? Lisp?
я сам ввел термин "микроядерная архитектура языка", не знаю существует ли что-то подобное, уже введённое для языков до меня . Но это какая-то аналогия с микроядерной архитектурой ОС. Отличие — микрокод это часть основного языка, но подавляющая часть имплементации языка является библиотекой на микрокоде. Микрокод у меня — функциональный язык темплейтов.
C>>Микроядро будет относительно простым и написанным на С++. WH>Никокого С++. Язык нужно писать на самом себе. WH>См http://nemerle.org/svn/nemerle/trunk
будет так, но не сразу.
C>>На нём, но в терминах языка будут вводиться имплементации таких понятий как пространства имён, классов, функций и их взаимосвязей. WH>Те каждый раз писать свой язык?
Что значит каждый раз? это будет базовая библиотека типа как СТЛ для С++. пишется один раз для диалекта, а затем только подправляется
C>>Собственно микропрограммы могут писаться по-разному, соответственно порождая разные диалекты Tany. WH>Кошмар. Сказку про Вавилонскую башню помнишь?
не вижу аналогии WH>Кстати одна из главных проблем С++ это куча диалектов.
диалекты — это, по сути, разные языки. Да и вообще, это пока далёкая тема, если такая проблема станет иметь место, то это уже будет означать успех языка
WH>Но С++ уже большой и хоть с трудом но это переживает. А вот твой язык сдохнет сразу.
Успех языка будет напрямую зависеть от возможности гораздо долее быстрого (по сравнени с имеющимися языками) написания на нём различных приложений. Если это будет продемонстированно, то народ подтянется и обеспечит ему не столь короткую жизнь.
C>>Например TanyJ, TanyC, Tany# которые могут рассматриваться как метапрограммные надстройки над Java, C++, C#. Но меня в первую очередь интересует создание TanyC как замена С++. Результатои работы компилятора Tany, для первых версий компилятора, будет код на С/C++ (для TanyJ был бы Java). WH>Смотри R# http://rsdn.ru/projects/rsharp/article/rsharp_mag.xml WH>Проект умер... ибо тупик.
Мне сложно понять что являлось там тупиком, но по крайней мере С++ вначале был тоже кодокенератором С кода.