duangsuse::Echo
也不是,因为 GalScript 还是有很多『超集』的语言特性的 sublanguage 因为我 Scheme 不好很浪费时间,Scheme 的特色就是元编程了,不过我基本不用 Scheme...
我直接因为 Scheme 自带函数太少所以不会写 Scheme
伸出手就缺 Common Lisp 里自带的函数,太难受了
伸出手就缺 Common Lisp 里自带的函数,太难受了
duangsuse::Echo
啊,超的部分不是靠内化实现的吗(
不是啊,那只是一种实现方式而已,GalScript 取材于 JavaScript, Ruby, ES6, Scala, Kotlin, C++,但不打算当任何一个的『子集』
你可以看看这个,不过 Gal 的... 我这周可能想办法发一点...
你可以看看这个,不过 Gal 的... 我这周可能想办法发一点...
Telegram
/tmp/duangsuse.sock
实现的难点在学校里已经考虑过了,我觉得是时间问题
难点一方面在解析器上,它是 2D syntax,支持缩进语义所以非常灵活
一方面是在新的 reverse pattern matching 上面,我下了好大功夫设计,而且还很难实现(但是一些基础的 reverse pattern 不难实现)
譬如上面那个 match x + 1 = n 这个,n=1
此时解释实现需构造一个 MixPattern 对象 MixPattern(+1, Unknown("x")) 就可以了,它接受一个输入,然后把输入 -1…
难点一方面在解析器上,它是 2D syntax,支持缩进语义所以非常灵活
一方面是在新的 reverse pattern matching 上面,我下了好大功夫设计,而且还很难实现(但是一些基础的 reverse pattern 不难实现)
譬如上面那个 match x + 1 = n 这个,n=1
此时解释实现需构造一个 MixPattern 对象 MixPattern(+1, Unknown("x")) 就可以了,它接受一个输入,然后把输入 -1…
好,这样就最自由不过了。
啊对了,我看下来,首先是倍感不急了:要这样的话就应该慢慢做,保证质量。
未来可能要考虑 Geekapk 改名。或许可以先看看 Fuchsia OS 的安装包后缀名叫啥了。
啊对了,我看下来,首先是倍感不急了:要这样的话就应该慢慢做,保证质量。
未来可能要考虑 Geekapk 改名。或许可以先看看 Fuchsia OS 的安装包后缀名叫啥了。
duangsuse::Echo
我直接因为 Scheme 自带函数太少所以不会写 Scheme 伸出手就缺 Common Lisp 里自带的函数,太难受了
自带函数不是问题,问题是不会写 Haskell 也不可能会写 Scheme (跑
主要是 Racket 的 pattern matching... 总觉得没有 Haskell 的好用
而且字符串处理什么的 都是要 string->list, list->string 的,如果不会 car/cdr/null? 很麻烦
Racket 还是 R*RS 加了一大堆 cdddr cddaar cdar, ddd 我到没意见,aaa 是什么意思,难不成 head 还能取 N 次?
主要是 Racket 的 pattern matching... 总觉得没有 Haskell 的好用
而且字符串处理什么的 都是要 string->list, list->string 的,如果不会 car/cdr/null? 很麻烦
Racket 还是 R*RS 加了一大堆 cdddr cddaar cdar, ddd 我到没意见,aaa 是什么意思,难不成 head 还能取 N 次?
duangsuse::Echo
我直接因为 Scheme 自带函数太少所以不会写 Scheme 伸出手就缺 Common Lisp 里自带的函数,太难受了
(cons/c any/c (cons/c pair? any/c))你居然是这样的
(x0 : (a : b))
cdaar,受教了。car . car . cdr.... NP毕竟高中没时间啊 GeekSpec 的也有了,就怕你不会写... 不管怎么样好像是必须得有的(因为可以吹,跑)
这周一共设计了三四个,包含 GeekSpec, Tang preprocessor, GalScript, GMarks
这周一共设计了三四个,包含 GeekSpec, Tang preprocessor, GalScript, GMarks
我觉得参考性比较强的案例是 Julia,它想解决现代统计学所用语言的问题。GalScript 应该是想解决普遍化的 C/S 服务的开发吧?
duangsuse::Echo
我觉得参考性比较强的案例是 Julia,它想解决现代统计学所用语言的问题。GalScript 应该是想解决普遍化的 C/S 服务的开发吧?
不对,它唯一的用处是给极安娘当幕后操纵者(也不对,不是唯一的用途
duangsuse::Echo
可以啊,用啥实现~
无所谓,我建议 Java 8 不管怎么样这几周我会断续把 spec 完成(不过下周就放假 8 天...
duangsuse::Echo
我觉得参考性比较强的案例是 Julia,它想解决现代统计学所用语言的问题。GalScript 应该是想解决普遍化的 C/S 服务的开发吧?
讲个笑话,C/S 架构很多应用程序也用不到 Gal 的反向模式匹配,所以主要是做给我玩的
val m, n : Nat32
match [*n.show!, ' ', *m.show!] = std.argv[0]
duangsuse::Echo
可… 只有反向模式匹配的话,用 preprocessor 转成正向的就能搞定了(
不必 preprocessor,但是可以直接在 transform 的时候换成正向计算
解释的话也可以直接执行逆向计算
解释的话也可以直接执行逆向计算
duangsuse::Echo
好… 确定下来要做的话,这将会是个需要一两年的项目。
不一定,因为一两年我已经经历过了
duangsuse::Echo
#Java 希望能够重写 SuicideBot 并且为之加上启动 / 退出的 Autosave (user -> time map) 功能,同时,也打算记录退出时间,来自动释放一些用户 那就加一个自杀排行榜吧(啊啊啊啊 啊,才发现定时是 Telegram 自己管理的 直播请在 tmp 观看
很不幸的是,我最终因为拖延症没能完成,我决定剩下的时间,完成一点文字工作。祝好。