标签:block 表达 想法 实例 开始 就是 函数声明 character cte
YY 一个自己的语言(主要是语法啦)。
今天开了个旧程序——PureBasic,看了它的帮助文件,发现文件扩展名那样表示的类型。然后就 YY 了这个。然后在文档的 Structure 的实例字段引用中看到了类似的东西。
nothing.
name -- 就是 identifiers
完整格式类似文件路径,我用 / (PureBasic 用 \ )。上下文约束下,可以简略。可以这么简略:
.na/me
.foo/bar
或者这么简略:
./foo/bar
最后我想,这么省略:
nothing.看下面
这么省略:就直接写了,有和 keyword 之类的东西冲突时,再用“当前路径”区别:
./here/name
直接写就好,有用户标识符冲突了就让用户标识符用“当前路径”的格式表示。
想到这里有了新想法——看下面。
看:
/runtime/这是/runtime/路径
这是用户标识符的完全路径表达式,/runtime/ 后的部分是用户标识符。
然后,就有了下面的东西——语言路径。
就像是 Java 的 java.lang 包那种感觉的东西。
至于具体是怎么样、要怎么样,没细想。
格式:
name.type
PureBasic 是这样的:.b .c .w 等,分别表示 Byte, Character, Word。
于是,问题来了。我的 name 都是路径的格式表示的,如果是:.type 这样的后缀形式表示,写起来不是爆炸?
于是想了想……不是有上下文吗,所以没问题,反正只是表示当前能看的到的符号的别名而已。我想,编译器应该会帮我解决其他的问题……嗯。是这样的。
格式:
func name.rtype.ptype1.ptype2...
sub name.ptype1.ptype2...
(func 和 sub 是 keyword。)
done.
标签:block 表达 想法 实例 开始 就是 函数声明 character cte
原文地址:https://www.cnblogs.com/GCxokoA/p/12266929.html