我目前正在设计和实现一种小型编程语言,作为我正在上课的额外学分项目。我的问题是该语言具有三种数字类型:Long、Double 和 Fraction。分数可以用语言写成真分数或假分数(例如“2 1/3”或“1/2”)。这一事实导致词法分析器无法正确处理“2/3.5”(长/双)和“2/3”(长/长)等问题。我看到的最佳解决方案是更改除法运算符。到目前为止,我认为“\”是最好的解决方案,因为“//”开始评论。
如果您正在设计语言,您会选择“\”吗?
你会选别的吗?如果是这样,是什么?
注意:改变分数的书写方式是不可能的。
在此先感谢您的帮助,
-编辑-
目前的运营商有:
**(力量)
*(乘)
%(模数)
+(添加)
-(减法和否定法)
~(互惠的)
!(不是)
>(更大)
<(较少的)
>=(大于等于)
<=(不等)
==(平等)
<>(不等式)
&(和)
|(或者)
^(异或)
??(零合并)
=(任务)
注意:我的老师没有严格的约束要求;然而,我基本上说服了他,我可以把一个简单的分数计算器变成一种语言。更改分数的语法会违背分数计算器的分数语法,最好避免这种情况。