/tmp/duangsuse.sock
23 subscribers
303 photos
3 videos
92 files
337 links
从 duangsuse::Echo (@dsuse) 跟进出来的分支,将在作者恢复原帐号访问的时候合并删除。
Download Telegram
Forwarded from 大 逗逼
永久封存 | Yuuta 台 | 😷 #Pray4Wuhan
https://t.me/status_is_changing/26417 🌚
对了,今天有点修改。 #PLT

1. 方括号改成纯语法括号了,圆括号必须仅用于函数调用。

[fun name () body] 具名闭包
[fun () body] 匿名闭包
[val name init] 值命名
[var name init] 变量命名
[set name e] 变量赋值

[do e1 e2 e3 ...] 顺序执行
[cond [p1 e1] [p2 e2] ...] 分支
[for name in expr body]
[while p body]
两个都是循环,目前我还没找到进一步抽提 do while 的方法
目前已知 do while 这个控制结构,为其专门引入 do 关键字是个余赘。
do while 一般用于 while condition 需要先执行循环体一遍的情况,为简化代码引入。
个人觉得,可以有 (do-while (. hasNext () itr) [fun () (. add (itr) list)] )
……怎么看其实也不太好看的

[do () e1 e2 e3 ...] 这,lambda 表达式(迫真
注意,和 [fun () body] 一起处理,它是 [fun () [do e1 e2 e3 ...]] 的语法糖
咱直接给 () ... ] 这个子模式抽提出来,解决词法作用域的问题。

2. 关于解析器的实现,Observer 现在仅用于 辅助 了

其实这个解析器本来就打算写自顶向下读取的……

这么说来,其实 REPL 呢,用的 CharIterator

我的意思,其实是说 Parser#readFile 之前,我们用 readObserver = AstObserver( onExpr = op )
可以实现一个比较简单的,回调,来实现这个 REPL,注意没有 scheduler, dispatcher 那么麻烦的,因为我们只是用 Observer 的接口。

其实不用的话,while (input.hasNext()) println(input.readFile().eval()) 也是可以的,我在考虑这样的 Observer 是不是应该换成 Event…… 能叠加就好了 好像 Observer 的确是可以叠加?
C++ CSharp Java Python PHP Perl…… 🤔
repositories {
maven { url = "http://jetpack.io" }
}
dependencies {
implementation "org.telegram.telegrambots:4.6"
}

<dependency>
<groupId>org.telegram
<artifactId>telegrambots
<version>4.6

open class org.telegram.telegrambots.bots.TelegramLongPollingBot

// Example taken from https://github.com/rubenlagus/TelegramBotsExample
public class Main {
public static void main(String[] args) {
ApiContextInitializer.init();
TelegramBotsApi telegramBotsApi = new TelegramBotsApi();

telegramBotsApi.registerBot(new ChannelHandlers());


catch (TelegramApiException e)
Forwarded from 小蓝频道 | ChannelBlue
灾难发生几个小时后,石墨芯仍在燃烧,但苏联能源部副部长阿列克谢·马库欣给苏共中央秘密发出的“紧急报告”说,工作人员正在处理现场,没有疏散附近城市人口的必要。
#不许联想
https://twitter.com/miemiekurisu/status/1220250619803365377
#Haha #China #Low 😂 以其人之道还治其人之身
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (Yuuta | Nya⠀)
#China #Low 我比你更清楚中国网络社交有何敏感词 🌚
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (玉米狐狸)
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (Yuuta | Nya⠀)
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (Yuuta | Nya⠀)
考虑了一下压参数的问题
CDEF 是后参先压,如果说机器栈的地址是往下增长,最后的参数在最高的地址
Java 是先参先压,实现上可能和本地表重叠,不直接与机器堆栈相关

计算上 frameBase + (i-k) -1 是实际的变量索引,k 是本层参数数量、frameBase 是第一个参数起始位置, -1 是为了让最后一个参数对上 index 0

好吧,其实是 frameBase+ ( (k-1) - i )
<!DOCTYPE xml version="4.0" encoding="utf-8">
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!DOCTYPE XML version="4.0" encoding="UTF-8">
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XML-SchemaInstance"
xsi:schemaLocation="http://maven.apache.org/schema/pom-4.0.0.xsi">
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/xsd/maven-4.0.0.xsd"