Design: 程序集文本格式。

创建于 2017-12-07  ·  31评论  ·  资料来源: WebAssembly/design

我认为 S 表达式是 Lisp。
但是,WebAssembly 是汇编语言。
请使用文本格式的标准汇编语言。

最有用的评论

他妈的

所有31条评论

例子:

https://github.com/hsk/vscode-debugger-simple-asm/blob/master/dist/ocaml/parser.mly

这是非常简单的汇编语言格式。
我认为汇编语言应该用非常简单的 BNF 来定义。

虽然可以理解为如果写成S公式处理起来很容易,但S表达式却很难理解。
你没有从 XHTML 中学到任何东西吗?

WebAssembly 文本格式作为一种新语法有什么问题? 你说难懂,有例子吗?

对我来说,拥有专用语法是件好事,因为 WebAssembly 与 Lisp 或 Assembly 文本格式无关。

你能告诉我们更多关于 XHTML 的信息吗?

XHTML 是非常简单的格式。 但是,HTML5 现在不是 XHTML。
因为 XHTML 对人类来说是不可读和不可用的。
我认为 S 表达式对人类来说也不可读和不可用。
由于web程序集是标准格式,文本格式必须采用通常的汇编语言格式。

XHTML 对人类来说是不可读和不可用的。

我不同意,人类可以阅读它,甚至用来写它。

S 表达式对于人类来说也是不可读和不可使用的。

我不同意,与 XHTML 的评论相同。

WebAssembly 不使用现有的语法标准,它是为特定目标而设计的,这就是为什么它具有自定义语法,恕我直言更好。

文本格式必须采用通常的汇编语言格式

我会反对的。 需要注意的是WebAssembly是一个开放的群体,他们没有做某些事情(像使用现有的标准,因为你说,它有一个类似的语法)。

免责声明:我的观点是我自己的,而不是 WebAssembly 的。

我知道了。
谢谢你。

S表情美观实用。
祝你好运。

但,...

xtuc:

WebAssembly 不是标准格式,它是为特定目标而设计的,这就是为什么它具有自定义语法,恕我直言更好

好吧,wasm 会在几年内成为一种标准,不是吗?

@ROBERT-MCDOWELL 抱歉,我不是故意写的,当然 WebAssembly 是一种标准格式。 我的意思是它不使用现有的标准语法(因为他们创建了自己的)。

LLVM格式是S表达式吗?
X86汇编格式是S表达式吗?
是 Arm,68000,PowerPC...
我第一次看到 WebAssembly 很美。
但是,我的动力下降了。
我想,我不喜欢 S 表达式语法汇编语言。

到目前为止没有必要写括号。
但是我们需要括号。
我觉得这不是很开心。

他妈的

到目前为止,我并不讨厌 WebAssembly。
但我现在讨厌 WebAssembly。

从 lisper 的角度来看,webassembly 是划时代的。
伟大的。 我是这么认为的,我觉得也是简单快捷。

webassembly的快速移动也很棒。

但是,我不是 Lisper。
我可以看到括号。
我讨厌括号,我不喜欢那样。

我认为 WebAssembly 是 lisper 的利己语言。

WebAssembly 是 S 公式的中间代码吗?
互联网终于赶上了 Lain。
好吧,也许 HTML 也适用于 S 公式。

我认为我不需要使用 C 或 C++ 是非常好的。
但是,如果我编写 TypeScript,我希望您在使用本机编写或使用 JS 编写之间做出选择……

WebAssembly 现在很热!

然而,他是涩谷的lisp男孩。

@hsk通常不打算让人们实际直接读取或写入 S 表达式格式。

相反,您将使用更高级别的语言编写代码,然后将其编译为 WebAssembly。

通过使用源映射,您甚至可以使用高级语言进行调试,因此您永远不需要查看 WebAssembly S 表达式。

因此,在 99+% 的情况下,文本格式是什么并不重要,因为您永远不会看到它。

我喜欢文本格式输出编译器。
我写编译器,99+% 的时间,我读和写都是浪费。

他试图比较对应于我过去在 Emscripten 制作的 wasm 的表演
https://qiita.com/toyoshim/items/e714cb4d00eace2f4d97

批评家总是好的,让一个项目发展起来。 但是,我们必须考虑到构建当今互联网的多年代码层,并避免每次发生演变时都重新发明轮子......

我知道您对 s 表达式感到沮丧。 我也不是粉丝,接受文本格式对整个 WebAssembly 并不重要这一点感到安慰。 确实,二进制格式很重要。 我们只需要一些文本格式用于低级显示和基本测试,唯一被认真提出并推进的就是这个。 它让一些人很高兴有 s 表达式,所以这对他们来说很好。 对我来说,它类似于使用 XML:它丑陋且难以阅读,但实际上并不重要。

文本格式的历史有些久远,这里不再赘述。 当我们有 AST 时,s 表达式是有意义的,但现在我们有一个堆栈机,所以至少我们使用 s 表达式是一个古怪的历史事实。

很棒的是,您可以创建自己的 WebAssembly 文本格式。 我们为自己的测试

话虽如此,我非常喜欢您在这里现场录制的逐个播放实现。 👍

谢谢你,了解我的问题。
s-表达很好。 发展很快。
我知道调用直接 LLVM 库很快,WebAssembly 也是如此。
调用直接库比 AST 基础编译器快。
但是,库绑定是其他语言之间的区别。
由于我是业余程序员,我希望简单的 AST。
我们使用 C++、JavaScript、Rust、OCaml、Haskell、SML、Coq、Scala、Scheme、Common lisp 等......任何语言。
我不希望你很快陪它,但我想让你考虑一下。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

thysultan picture thysultan  ·  4评论

chicoxyzzy picture chicoxyzzy  ·  5评论

mfateev picture mfateev  ·  5评论

badumt55 picture badumt55  ·  8评论

void4 picture void4  ·  5评论