自己手撸了一个语言玩

2015-10-16 10:18:10 +08:00
 bramblex

GayHub 求 start : https://github.com/bramblex/BlxScript

在线测试地址:http://bramblex.github.io/BlxScript

求各种指教 /w\

8249 次点击
所在节点    JavaScript
80 条回复
linux40
2015-10-16 12:18:39 +08:00
先友情支持一下。。。。
ooTwToo
2015-10-16 12:22:46 +08:00
不明觉叼
bramblex
2015-10-16 12:24:11 +08:00
@oott123

thx
bramblex
2015-10-16 12:24:34 +08:00
@Gonster
@cxshun
@linux40

/w\ 感谢各种 star
lzhtony
2015-10-16 12:33:25 +08:00
很棒的样子.支持下.
bramblex
2015-10-16 12:45:13 +08:00
@lzhtony
感谢支持
yxzblue
2015-10-16 12:54:20 +08:00
已 start
sun2920989
2015-10-16 12:55:34 +08:00
这就是编译原理学完了之后不知道这门课能干啥的结果..................o(∩_∩)o 支持一下
bramblex
2015-10-16 12:59:52 +08:00
@sun2920989

话说,其实我都没有按照编译原理来 TnT
firemiles
2015-10-16 13:02:41 +08:00
@bramblex 先 star 支持下,
l := List 1 2 3 4 5 End
print l # => [1, 2, 3, 4, 5]
这个 list 定义好奇怪,为什么选择这么奇怪的写法
bramblex
2015-10-16 13:07:31 +08:00
@firemiles

因为 List 是一个函数。 List 接受一个参数以后,返回一个函数,直到接收的参数是 End 才会中止,并且返回数组。

举个栗子
l1 := List 1 2 3 4 5
l2 := l1 6 7 End
l3 := l1 8 9 End

print l2 # => [1,2,3,4,5,6,7]
print l3 # => [1,2,3,4,5,8,9]
jiyinyiyong
2015-10-16 13:19:43 +08:00
模块方案和对象系统看得人够呛, 嗾使自己造的吗还是说 AMD 改的..
parser 部分还没看明白...
编译代码我当时做过后来干脆用 ES6 AST 直接发到 Babel 编译了, 推荐用 Babel 生成
winkidney
2015-10-16 13:22:10 +08:00
lz 傻逼(好像 kso 的风气并不能带到 v2 哈哈哈
bramblex
2015-10-16 13:23:25 +08:00
@jiyinyiyong

那个 Class.js 还是不要看得好,太多黑科技了不适合观看。模块方案是 AMD 改编,不过这个也不用看啊……

看代码只需要看 src/ 下的就行了。 dist/ 下的都是我用自己的工具包装过的,不适合观看。
nooper
2015-10-16 13:24:15 +08:00
感觉语法很怪异
bramblex
2015-10-16 13:27:34 +08:00
@winkidney 滚粗
bramblex
2015-10-16 13:28:31 +08:00
@nooper

如果你玩过 Haskell ,或者你懂 Lambda 演算。那么你会觉得我的语法很亲切
LancerComet
2015-10-16 13:37:39 +08:00
兹词一个,本人第一反应应该是 GoScript

另外尝试传多个参数的时候报错,然后把例子复制过去也是报错



难道是打开方式不对……
bramblex
2015-10-16 13:43:11 +08:00
@LancerComet

其实,这个语言里面没有中缀运算符……

改成 a := add x y 就好了……
bramblex
2015-10-16 13:45:21 +08:00
@LancerComet

PaserError At Line 2, Char 10 刚好就是那个 + 号。 TnT

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/228459

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX