我一段时间以来一直在为我的(很深奥的)编程语言开发C++解释器。我注意到的主要事情之一:我从一个灵活的概念开始,而我编写的代码越深( token 化器->解析器->解释器),整个系统的灵活性就越差。
例如:我最初没有实现include
函数,但是解释器已经启动并运行-实现它非常困难,就像稍后“修补某些内容”一样。我的系统很快失去了灵活性。
最佳答案
当然,这不适用于大型项目。但是,如果您的设计是模块化的,那么将项目划分为单独的部分应该没有任何问题。
我一段时间以来一直在为我的(很深奥的)编程语言开发C++解释器。我注意到的主要事情之一:我从一个灵活的概念开始,而我编写的代码越深( token 化器->解析器->解释器),整个系统的灵活性就越差。
例如:我最初没有实现include
函数,但是解释器已经启动并运行-实现它非常困难,就像稍后“修补某些内容”一样。我的系统很快失去了灵活性。
最佳答案