Comments (17)
你去看看Free Pascal用户手册有多少页,你就知道Pascal一样玩不起了。
from vm-76.
这ASM76又没挑调试工具,指令集又不那么好用(别人一个MOV在这里被拆成了十几种指令),架构又鬼畜……写ASM76已经可以写到吐了,不弄个高级语言看样子是不行了。
from vm-76.
写个RGSS脚本编辑器等级的高级语言吧
(其实别人的mov也是拆开的,只是拆分的工作交给assembler了
from vm-76.
你会发现mov $eax, $ebx和mov [0x100c], $eax编译出来是两条不同的指令
from vm-76.
Ruby好像更玩不起……
别人的MOV确实是分开的,但是它们都叫MOV啊。这里不仅叫MOV,还叫DAT、MVP……
我觉得我们只能再造一个autocode级别的语言了
from vm-76.
搞个nasm如何(
from vm-76.
高级汇编语言没必要了,因为已经有个ASM76官配汇编器了233
至少得是结构化的,要不然好意思叫高级语言吗……
想来想去还是觉得类似C那种级别的“高级汇编”比较靠谱。
(C++76?不可能。我觉得CMM76就可以了——C Minus Minus 76之类的。
语法弄得越简单越好,比如说前缀表达式什么的都可以,要不然parser不会写就很滑稽了。
from vm-76.
建议参考语言 FORTRAN 77
https://en.wikibooks.org/wiki/Fortran/Fortran_examples
from vm-76.
这examples看了两天,感觉太复杂(啥都复杂还是ASM最好了
from vm-76.
不不不我们不去实现FORTRAN 90+的特性
FORTRAN 77的就很适合这个项目,毕竟是最接近汇编的编程语言了
from vm-76.
其实只是我看得有点晕,不过反正自己造个语言,造成什么样都无所谓了,说参考Fortran 77什么的也只是吸收一下这种精神就好了……
from vm-76.
我觉得Fortran 77 这样的语言写操作系统至少不会像C++一样到处蛋疼
from vm-76.
嗯我毕业了有空把这项目捡起来继续玩了…… 要不把这个虚拟机独立出去?我觉得比较切实际的是为它写一个Lisp编译器。Lisp的语法相当固定,而且也方便解析(1958年的语言…… 比FORTRAN还清晰,所以能被用到现在吧……)
from vm-76.
惊了,捡坑还行
Lisp语法是很好看(嗯,好看),就是方言太多了(于是不在乎多加一个VM76Lisp dialect 233
其实选啥语言实现没有那么大关系啦(?),就算自己造一种语言也可以的,目前这个VM的当务之急不是ASM76的语法根本就太丑了吗23333 所以才会想要做个高级语言的嘛。
from vm-76.
而且ASM76汇编器的bug有点严重……在扫描tags的时候它会把所有行都算进instruct的大小,然后如果代码里有非代码的内容tag就会错位,刚刚修了。我觉得要不把tag的机制改成一次性直接编译,在编译时检查到tag就留0x0000并把这个tag引用加入替换表。在整个程序编译完再根据替换表把tag放回去
from vm-76.
顺便在ASM76 repo里已经完成了VMc和VMexec,成功地完成了一个Hello World,嗯……
我在想,我们是准备硬核一点,用ASM76写这个LISP编译器还是用C写……有点想用ASM76写
from vm-76.
用ASM76 emmmmm...
我觉得可以
from vm-76.
Related Issues (15)
- 是否要引入模型加载库 Assimp HOT 12
- 声音自动销毁和多重instance的。。bug? HOT 4
- Windows上黑屏 HOT 8
- ASM76 HOT 9
- Vulkan : Should we support it? HOT 2
- 添加了RenderBuffer之后又炸了 HOT 12
- 渲染模型新设计 HOT 1
- 纪念用issue(III) HOT 1
- 纪念用issue HOT 3
- VMDE的公开讨论 HOT 3
- 讨论代码命名规范 HOT 1
- 纪念用issue(II) HOT 3
- 令人头痛的构建系统 HOT 2
- 声音模块的float → int之旅 HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vm-76.