duangsuse::Echo
719 subscribers
4.28K photos
130 videos
583 files
6.49K links
import this:
美而不丑、明而不暗、短而不凡、长而不乱,扁平不宽,读而后码,行之天下,勿托地上天国。
异常勿吞,难过勿过,叹一真理。效率是很重要,盲目最是低效。
简明是可靠的先验,不是可靠的祭品。
知其变,守其恒,为天下式;穷其变,知不穷,得地上势。知变守恒却穷变知新,我认真理,我不认真。

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
Ruby 对 Integer 是值传参的
不过或许可以加个元编程功能可以有个不能完全正常工作的解决方案(

(-> += (# (s v)
(~> args._^.s (+ s v))))

(-> a 1)
(+= a 3) ;a=1+3

(不过查询展开前的表达式可以有, += 这样的还是算了,还好 (self::a= #t) (self.args.b.name= 'ss) 这样的代码还能工作(Hash 是引用传递) 🌑

不过:

(-> a 1)
(a.++) ;... bad..... QAQ (-> a (++ a))
(b::a= 1)
(b::a.++) ; (-> b::a (++ 1)) 虽然好像在这里没有问题(b::a 稍后会被找到,不会使用 OO 语法)
(p b::a)

所以这样(原生类型)的实现只能使用元编程 API 并且是部分安全的,算是个语法糖.... (self 不是 Hash)
要不然可以将原生类型包装起来便可以安全的使用 🌑
Ruby 这样的话,说不定会造成平台差异,还好 Native 实现计划传引用的...
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from neoFelhz's Channel | 山雨欲来风满楼 (neo喵 | 鶸 | 蒟蒻 | 说我是大佬的人都是大佬 | 🐈)
https://t.me/lynote/1937
当时霍金先生是来华做了“膜的新奇世界”科普演讲后和江主席见面的。
#emmm 霍金的死因找到了 🐸🌑
(这不好,还是改名算了 2333
duangsuse::Echo
(这不好,还是改名算了 2333
lime-macro 反正这个是宏编程语言....
Forwarded from Poshangka
This media is not supported in your browser
VIEW IN TELEGRAM
我觉得做这些事实在是太麻烦了
This media is not supported in your browser
VIEW IN TELEGRAM
duangsuse::Echo
我觉得做这些事实在是太麻烦了
根本没碰和 Lime 设计有半点关系的... 🌑
好了好了,现在先继续写文档
Ruby 解释器的已经创了
^ 我现在有个习惯,就是短时间不会动的项目就不建
GeekApk 当初 11 个 Repo, 其实后来能用的未必有几个
现在 GeekApk 我有用的只有三个
duangsuse::Echo
https://github.com/lime-macro
都说自己是 Lisp 方言,有 sexp 就是?
.... 反正我这个就当是了
先亲定是这样的:
() 是 nil, 展开时 look-ahead 判断(且长度为 0 的list 展开时会被展开为 nil) (但是, `( )` 就是空列表)
(abcd_efg ) sexp 中第一项永远只能是 Symbol 或 sexp
(sym_bol)
((symbol ()) ()) [[:symbol, []], nil]
('' ) `'` 到 `'` 之间的部分是 Symbol, 但如果括号中第三个字符(`'` 后面那个)是空白字符,`'` 视为普通符号

字符串语法:
'abc_defg "abc defg"
'abc_defg' "abc defg"
(以 `'` 起始,以空白字符或 `'` `)` 终止,之间的 _ 视为空白字符)
"abcdefg" "abcdefg"
"abcdefg #{a}" (+ "abcdefg " a)
"abcd #{b} efg" (+ "abcd " (+ b " efg"))
(以 `"`起始,以 `"` 终止,之间支持 `#{}` 简写 )

符号语法:
:a (: a)
:'abc' :abc
:"abc" :abc

填充语法:
#t true
#f false
#n nil
#g 1
#e 0
#l -1
#h 新建 Hash 对象
#i 新建 List 对象(空 s-表达式)

数字语法:
032
434
23.2
0x1
0b1
0o1
0x123i32
0x32f64
数字以 0-9 起始,以空白字符或 ) 结束

表达式其他地方出现的任何不以
' " 0-9 # : ( 开头的都作为符号,以空白字符或 ) 终止
This media is not supported in your browser
VIEW IN TELEGRAM
好了好了,文档都在这里发布
写代码最重要