Разработка и внедрение языка программирования. Каков следующий шаг? - PullRequest
0 голосов
/ 30 мая 2009

Итак, я разработал языки программирования и получил достаточно далеко, чтобы написать пример кода и начал писать BNF. Я хочу знать, есть ли контрольный список вещей, которые я мог бы сделать, прежде чем писать остальную часть моего БНФ? что мне делать потом? Я боюсь, что реализация займет много времени (это так же сложно, как и, возможно, больше, чем C ++). Что я должен сделать или что я должен рассмотреть?

Ответы [ 2 ]

2 голосов
/ 30 мая 2009

Получите экспертную оценку того, что вы уже сделали. Языковой дизайн - жесткий - вполне вероятно, что дополнительная пара глаз (или несколько) поможет найти области, в которых вы могли бы улучшить ее до того, как зайдет слишком далеко в сторону реализации. (В частности, если это сложнее, чем C ++, вы уверены, что это необходимо?)

1 голос
/ 30 мая 2009

Если он сложнее, чем C ++, он, вероятно, нуждается в редизайне. Большая сложность C ++ возникает из-за необходимости обеспечить совместимость с C и, таким образом, привить особенности, помимо самого замечательного синтаксиса объявления C. Если вам не нужно поддерживать интересный язык, трудно понять, как такая сложность может быть оправдана.

Разработав и внедрив несколько языков самостоятельно, я рекомендую инверментальный подход:

  • дизайн небольшого подмножества
  • реализовать это
  • используйте это

С учетом извлеченных уроков создайте несколько большее подмножество и повторите.

...