Code Monkey home page Code Monkey logo

Comments (17)

satgo1546 avatar satgo1546 commented on June 18, 2024

你去看看Free Pascal用户手册有多少页,你就知道Pascal一样玩不起了。

from vm-76.

satgo1546 avatar satgo1546 commented on June 18, 2024

这ASM76又没挑调试工具,指令集又不那么好用(别人一个MOV在这里被拆成了十几种指令),架构又鬼畜……写ASM76已经可以写到吐了,不弄个高级语言看样子是不行了。

from vm-76.

bobcao3 avatar bobcao3 commented on June 18, 2024

写个RGSS脚本编辑器等级的高级语言吧

(其实别人的mov也是拆开的,只是拆分的工作交给assembler了

from vm-76.

bobcao3 avatar bobcao3 commented on June 18, 2024

你会发现mov $eax, $ebx和mov [0x100c], $eax编译出来是两条不同的指令

from vm-76.

satgo1546 avatar satgo1546 commented on June 18, 2024

Ruby好像更玩不起……

别人的MOV确实是分开的,但是它们都叫MOV啊。这里不仅叫MOV,还叫DAT、MVP……

我觉得我们只能再造一个autocode级别的语言了

from vm-76.

bobcao3 avatar bobcao3 commented on June 18, 2024

搞个nasm如何(

from vm-76.

satgo1546 avatar satgo1546 commented on June 18, 2024

高级汇编语言没必要了,因为已经有个ASM76官配汇编器了233
至少得是结构化的,要不然好意思叫高级语言吗……
想来想去还是觉得类似C那种级别的“高级汇编”比较靠谱。
(C++76?不可能。我觉得CMM76就可以了——C Minus Minus 76之类的。
语法弄得越简单越好,比如说前缀表达式什么的都可以,要不然parser不会写就很滑稽了。

from vm-76.

bobcao3 avatar bobcao3 commented on June 18, 2024

建议参考语言 FORTRAN 77

https://en.wikibooks.org/wiki/Fortran/Fortran_examples

from vm-76.

satgo1546 avatar satgo1546 commented on June 18, 2024

这examples看了两天,感觉太复杂(啥都复杂还是ASM最好了

from vm-76.

bobcao3 avatar bobcao3 commented on June 18, 2024

不不不我们不去实现FORTRAN 90+的特性
FORTRAN 77的就很适合这个项目,毕竟是最接近汇编的编程语言了

from vm-76.

satgo1546 avatar satgo1546 commented on June 18, 2024

其实只是我看得有点晕,不过反正自己造个语言,造成什么样都无所谓了,说参考Fortran 77什么的也只是吸收一下这种精神就好了……

from vm-76.

bobcao3 avatar bobcao3 commented on June 18, 2024

我觉得Fortran 77 这样的语言写操作系统至少不会像C++一样到处蛋疼

from vm-76.

bobcao3 avatar bobcao3 commented on June 18, 2024

嗯我毕业了有空把这项目捡起来继续玩了…… 要不把这个虚拟机独立出去?我觉得比较切实际的是为它写一个Lisp编译器。Lisp的语法相当固定,而且也方便解析(1958年的语言…… 比FORTRAN还清晰,所以能被用到现在吧……)

from vm-76.

satgo1546 avatar satgo1546 commented on June 18, 2024

惊了,捡坑还行
Lisp语法是很好看(嗯,好看),就是方言太多了(于是不在乎多加一个VM76Lisp dialect 233
其实选啥语言实现没有那么大关系啦(?),就算自己造一种语言也可以的,目前这个VM的当务之急不是ASM76的语法根本就太丑了吗23333 所以才会想要做个高级语言的嘛。

from vm-76.

bobcao3 avatar bobcao3 commented on June 18, 2024

而且ASM76汇编器的bug有点严重……在扫描tags的时候它会把所有行都算进instruct的大小,然后如果代码里有非代码的内容tag就会错位,刚刚修了。我觉得要不把tag的机制改成一次性直接编译,在编译时检查到tag就留0x0000并把这个tag引用加入替换表。在整个程序编译完再根据替换表把tag放回去

from vm-76.

bobcao3 avatar bobcao3 commented on June 18, 2024

顺便在ASM76 repo里已经完成了VMc和VMexec,成功地完成了一个Hello World,嗯……

我在想,我们是准备硬核一点,用ASM76写这个LISP编译器还是用C写……有点想用ASM76写

from vm-76.

satgo1546 avatar satgo1546 commented on June 18, 2024

用ASM76 emmmmm...
我觉得可以

from vm-76.

Related Issues (15)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.