Czytaj dużo i upraszczaj
Opracowanie nowego języka jest trudne. Naprawdę trudny. Ale ostatecznie bardzo satysfakcjonujące, jeśli stanie się popularne i naprawdę rozwiąże problem, którego ludzie doświadczają w elegancki sposób.
Jak wspomniałem w komentarzach, radzę przeczytać Języki specyficzne dla domeny autorstwa Martina Fowlera z następujących powodów:
- Zagłębia się w wiele praktycznych pytań na temat tego, dlaczego powinieneś zaprojektować język
- Istnieją szczegółowe informacje na temat tego, jak to zrobić (parsery, analizatory leksykalne, stoły robocze języka itp.)
- Istnieją szczegółowe instrukcje dotyczące implementacji, w jaki sposób można wybrać wybraną składnię do obsługi pojęć takich jak zamknięcia, adnotacje, listy dosłowne, dynamiczny odbiór itp.
Jeśli chodzi o pisanie specyfikacji, pomyśl o swoich odbiorcach. Oczywiście, zanim przyłożysz palec do klawiatury, aby zaprojektować swój język, musisz dokładnie przemyśleć, co ma robić.
Jeśli jest to nowy, zinterpretowany język, który zastąpi JavaScript, będziesz potrzebować bardzo uczciwego podejścia, aby dotrzeć do twórców stron internetowych z ograniczonym czasem uwagi i chęcią uzyskania natychmiastowych rezultatów - lub szybciej, jeśli to możliwe.
Jeśli zostanie on wykorzystany podczas następnej misji do Titan, wówczas bardzo szczegółowe specyfikacje pokazujące dokładne formalne dowody zachowania każdego elementu będą stanowić minimalny poziom początkowy.
To nie jest prosta rzecz. Aby zbliżyć się do specyfikacji, lepiej byłoby, gdybyś miał dużo doświadczenia w tworzeniu swoich języków, a także w pracy z tymi, którzy faktycznie z nich korzystają na co dzień. Jeśli masz chętne ofiary ... eee ... programiści, w pracy, którzy mogą poświęcić trochę czasu na naukę języka, mogą udzielić informacji zwrotnych na temat tego, co jest potrzebne, aby mogli z niego korzystać.
Krótko mówiąc, zachowaj prostotę, a więcej osób będzie z niego korzystać.