scala 中的 Brainfuck 编译器
想要制作一些领域特定语言(DSL)进行练习,首先想到的是编写 Brainfuck. 第一个想法是重写函数,例如它们将表现为 Brainfuck 命令:">"、"<"、"+"、 …
有史以来最小的编译器
Closed. This question is off-topic. It is not currently accepting answers. 想要改进此问题吗?更新问题,使其关于- Stack Overflow 的主题。 13…
getchar() 获取上一个 printf() 中的最后一个字符?
我正在为深奥的语言 Brainf*ck 编写一个编译器/解释器(我不太确定 StackOverflow 的亵渎政策,所以我会审查自己,直到有人告诉我我不必这样做),然…
如何在BrainFuck中将指针移动任意量?
例如,如果数组类似于 0 0 0 0 ... 0 0[n]somedata 4 9 9 9 9 9 9 8 3 7 ...,如何将指针移动 n,指针移动后不改变 somedata 4 9 9 9 ... ?…
制作 JIT 编译器
我编写了一个 Brainfuck 实现(C++),其工作原理如下: 读取输入 Brainfuck 文件 进行简单的优化 将 Brainfuck 转换为 VM 的机器代码 在 VM 中执行此…
Brainfuck 中简单程序的来源?
Closed. This question is off-topic. It is not currently accepting answers. 想要改进此问题吗?更新问题,使其关于- Stack Overflow 的主题。 12…
如果我在 Haskell / GHC 中使用未装箱类型(如 Int#),我应该注意哪些事情?
我正在尝试编写一个小脚本来解析和执行 Brainfuck 代码,以了解优化的 GHC 选项,我正在尝试优化代码以便更快一点并了解那里发生了什么。 其中一部分…
为什么 GHC 抱怨类型错误?
这个小函数检查(有限)Brainfuck 字符串的有效性。它检查 [ 和 ] 是否平衡。代码非常简单,并且编写为尾递归: -- checks Brainfuck for validity. v…
在 Brainfuck 中实现控制结构
对于外行来说,Brainfuck 是一种图灵完备的语言,只有 8 个命令,所有命令都有C 中的字面等价物: bf c ---------------------- > ++ptr; < --ptr; + …
如何获取一个大整数作为输入并将其存储在内存中
我知道在 Brainfuck 中对大整数执行算术虽然有时可能相当乏味,但完全是可能的。 然而,我想知道的是,普遍接受的最佳实践是什么,用于接受大整数(甚…