Ладно, скажу и вам: я начал-таки делать свой язык программирования, о котором я тут периодически писал, наверное, лет с пяток.
Он начался с того, что по работе понадобился транслятор с языка 1С и будет он примерно таким:
- ключевые слова в кириллице, заточен на русскоязычных пользователей
 - работает через трансляцию в Cl
 - семантика от CL. Пока мало сделано, постепенно буду достраивать мосты до недостающих частей. Но некоторые вещи в семантике CL не годятся и будут заменены (модули, #., на другие пункты будем смотреть)
 - RAII - подобные конструкции
 - опциональная статическая типизация
 - элементы ФП: декларации для контроля мутабельности. Замыкания.
 - eval, REPL
 - опциональные типы примерно как в Rust
 - исключения и отладчик как в лиспе (вызов отладчика до раскрутки стека, во многих случаях возможность выкрутиться из ошибочной ситуации и продолжить выполнение)
 - треды
 - пошаговая отладка отдельных тредов, а также трассировка в лог или на экран
 - лицензия - пока не знаю. Скорее всего MIT, но нужно понять, как всё это соотносится с местным законодательством
 - файлы описания интерфейсов отделены от реализации этих интерфейсов, как в С (спасибо за участие в обсуждении)
 - горячая замена кода, естественно
 - сборка мусора
 - парсер линза, т.е. сразу создаётся фундамент под средства обработки исходников, как в CLang
 - совместное развитие среды, языка и инструментов - для этого я и запилил clcon
 - интерфейс к C (с ограничениями на применение сигналов и тредов в библиотеках)
 - встроенные sql запросы и вообще возможность встраивания других синтаксисов без специального закавычивания - с поддержкой со стороны среды
 - гуй на tcl/tk по технологии клиент-сервер. После версии 1.0 можно обсуждать Qt, но вряд ли будет слой переносимости между разными GUI. Возможно, будет генерация tcl/tk из крупных блоков по метаданным (это для бизнес-приложений скорее).
 - базовая реализация CL - SBCL (из-за лицензии).
 
На данный момент есть работающий пример вот такого сорта (только заменил пару ключевых слов, которые в реальности пишутся по-другому):
// -*- package :S2TEST ; coding : utf-8 ; encoding : utf-8 ; -*-
/*
(in-package :s2test)
(named-readtables:in-readtable :buddens-readtable-a)
модуль Пример1;
*/
клсс к () ;
  а : строка = "базя" ;
  б ; 
кнцклсс
клсс к2 (к) ;
  в ; 
кнцклсс 
// здесь полные слова, потому что редкое слово
ГлобальнаяПеременная э;
фнкц МояСтраница() : строка ; 
 перем рез;
 ПостгресСОтдельнымПодключениемВДаннойНити();
 ПостгресПодключиться("db1","pguser","uio123","192.168.184.128");
 //ВОтладчик("ура!");
 рез = "<html><body>Поля глоб. перем. э k2</p>";
 рез = рез + ПоляИЗначенияЭкземпляра (э);
 рез = рез + "<p>" + строка(ПостгресЗапрос("select * from ошибка")) + "
 </p>";
 рез = рез + "<br><a href=""/"">Домой</a></body></html>";
 ПостгресОтключиться();
 Возврат рез;
кнцфнкц
ЗапуститьВебСервер(2425);
ВебСерверГлотатьОшибки(1);
СоздатьГенерируемуюВебСтраницу("/ura",смвл("S2TEST::МояСтраница"));
э = СоздатьОбъект(смвл("к2"));
э.б = 2; 
э.в = 3;
Если найду тех, кто будет пилить со мной или, ещё лучше, даст денег на разработку - открою исходники.












