Leia lotes e mantenha-o simples
Projetar um novo idioma é difícil. Muito difícil. Mas, no final das contas, é muito satisfatório se tornar popular e realmente resolver um problema que as pessoas estão enfrentando de maneira elegante.
Como mencionei nos comentários, recomendo que você leia os Idiomas Específicos do Domínio de Martin Fowler pelos seguintes motivos:
- Ele tem muita profundidade prática sobre por que você deve criar uma linguagem
- Há detalhes sobre como fazê-lo (analisadores, analisadores lexicais, bancadas de idiomas etc.)
- Existem instruções detalhadas de implementação sobre como a sintaxe escolhida pode ser feita para lidar com conceitos como fechamentos, anotações, listas literais, recepção dinâmica etc.
Quanto a como escrever sua especificação, pense no seu público. Obviamente, antes de colocar o dedo no teclado para projetar seu idioma, você terá pensado cuidadosamente sobre o que ele pretende fazer.
Se for uma linguagem nova e interpretada para substituir o JavaScript, você precisará de uma abordagem muito laissez faire para alcançar os desenvolvedores da Web com um tempo de atenção limitado e um desejo de resultados imediatos - ou mais rápido, se possível.
Se ele for usado na próxima missão para Titan, então especificações extremamente detalhadas mostrando provas formais exatas do comportamento de cada componente serão o nível mínimo de entrada.
Portanto, não é uma coisa simples. Para abordar a especificação, provavelmente seria melhor ganhar muita experiência na criação de seus idiomas e também trabalhar com aqueles que realmente os usam no dia a dia. Se você tem vítimas dispostas ... er ... desenvolvedores, no trabalho, que podem levar algum tempo para aprender seu idioma, eles podem dar um feedback sobre o que é necessário para fazê-los usá-lo.
Em resumo, mantenha-o simples e mais pessoas o usarão.