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