Mac*_*zie 8 programming-languages division operator-keyword
我目前正在设计和实现一种小型编程语言作为我正在上课的额外学分项目.我的问题是该语言有三种数字类型:Long,Double和Fraction.分数可以用适当或不正确的分数(例如"2 1/3"或"1/2")用语言书写.这个事实导致诸如"2/3.5"(长/双)和"2/3"(长/长)等问题无法被词法分析器正确处理.我看到的最佳解决方案是更改除法运算符.到目前为止,我认为"\"是最好的解决方案,因为"//"开始评论.
如果你正在设计语言,你会选择"\"吗?
你会选择其他东西吗?如果是这样,什么?
注意:无法更改分数的分配方式.
在此先感谢您的帮助,
-编辑-
目前的运营商是:
**
(功率)
*
(乘)
%
(模数)
+
(加)
-
(减去和否定)
~
(倒数)
!
(不)
>
(更大)的
<
(减)
>=
(大于相等)
<=
(较少-相等)
==
(平等)
<>
(不等式)
&
(和)
|
(要么)
^
(XOR)
??
(空coalesing)
=
(分配)
注意:我的老师没有严格的约束要求; 但是,我基本上让他相信我可以将一个简单的分数计算器变成一种语言.更改分数的语法将违反分数计算器的分数语法,最好避免使用.
你是否允许使用紧凑的if语句
condition ? trueblocks : falseblocks;
Run Code Online (Sandbox Code Playgroud)
在你的语法?如果没有,您可以使用' : '作为除法运算符.毕竟,在这个词的许多(大多数?)地方划分(手工,纸上)的标准数学符号.
我不太确定是什么问题,因为我不懂语法理论.但我会尝试2_1/3
使用下划线而不是空格来改变适当的分数语法,例如.
关于使用\
除法运算符 - 我肯定不喜欢它,因为它在每种语言中用作转义字符.我不会推荐这种意义重叠.
归档时间: |
|
查看次数: |
613 次 |
最近记录: |