c# – 解释自定义语言
发布时间:2020-12-16 01:40:10 所属栏目:百科 来源:网络整理
导读:我需要开发一个应用程序,它将读取和理解文本文件,在其中我将找到描述操作列表的自定义语言(即烹饪配方).此语言尚未定义,但可能采用以下形式之一: C代码 (此代码是随机生成的,仅用于示例目的): beginrepeat(10){ bar(toto,10,1999,xxx);}result = foo(xxxx,
我需要开发一个应用程序,它将读取和理解文本文件,在其中我将找到描述操作列表的自定义语言(即烹饪配方).此语言尚未定义,但可能采用以下形式之一:
> C代码 (此代码是随机生成的,仅用于示例目的): begin repeat(10) { bar(toto,10,1999,xxx); } result = foo(xxxx,10); if(foo == ok) { ... } else { ... } end > XML代码 (此代码是随机生成的,仅用于示例目的): <recipe> <action name="foo" argument"bar,toto,xxx" repeat=10/> <action name="bar" argument"xxxxx;10" condition="foo == ok"> <true>...</true> <false>...</false> </action> </recipe> 无论选择哪种语言,都必须处理简单的条件,循环. 我从来没有做过这样的事情,但初看起来,我认为将这些操作描述为XML将更简单但功能更少. 在浏览StackOverFlow之后,我发现了一个名为“ANTLR”的工具的聊天…我开始阅读“The Definitive ANTLR Reference”,但由于我从未做过那种东西,我发现很难知道它是不是真的那种我需要的工具…… 换句话说,我需要读取文本文件,正确解释它并在我的C#代码中执行操作.这些操作将通过以下简单条件进行交互: >如果operation1失败,我执行operation2 else operation3. 什么是最好的语言来描述那些文本文件(XML,我自己的)?这些发展过程中的关键点是什么? 我希望我很清楚:) 非常感谢您的帮助和建议! 解决方法
XML非常适合以冗长的方式存储关系数据.但是,我认为这是编写程序等逻辑的可怕候选者.
您是否考虑过使用现有的语法/脚本语言,而不是编写自己的语言/脚本语言?例如: LUA Python (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |