MyDog--前言和目录(附源码链接)

自己做个新轮子,强类型的脚本语言。

在实际开发中,所有app的设计都可以基于这种模式:

实体->组件->属性和逻辑

实体由组件组成,组件数据就是一个属性集,组件逻辑可以是机器码,也可以是脚本字节码.基于这么个大前提而设计的vm.

  1. mydog是解释型,和lua不一样的是,mydog基于虚拟的属性集和虚拟的寄存器,并不模拟cpu运行.
  2. mydog不支持外部的数据结构.所有数据都在mydog里管理,由属性集描述,所以唯一需要gc的就是属性集,从而性能上比lua优先.(jit除外)
  3. mydog使用C++开发
  4. mydog也支持脚本->源码的导出,这种AOT要做成自动嵌入的,我称之为固化
  5. jit的入侵性太强,前端就不考虑了.服务端只要解释脚本就够用了,维护重启时,将需要高性能的固化即可,如果不想影响在线用户,服务器框架支持冷更(重启服务器,但用户无感)也行啊.所以长期没有jit的打算.

源码MyDog: 一个C++开发的解释型的脚本语言的解释器。基于属性集和缓存buff的设计,并不模拟cpu运行。并不打算支持JIT。理论上优于lua!!!icon-default.png?t=N7T8https://gitee.com/three_less_grass/my-dog.git

使用在另一个项目MakeEditor里。

代码目前是空的,现在博客上写下思路,实现测试后,项目快结束的时候再上传源码。


目录

MyDog--工程项目-CSDN博客

MyDog--类型--浮点数-CSDN博客

MyDog--类型--flag-CSDN博客

MyDog--内存--pool-CSDN博客

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值