• Rc-lang开发周记14 重构与AST Visitor

    非pixiv作品 本周先是解决了上周遗留下来的一个非常头疼的问题,之后重构了Token和AST的定义以及考虑了一下Visitor。之后也编写了建立符号表的代码以及一半转换到vm指令的代码,但是总觉得哪里不太对劲就先停了下来,后续确认无误了再一起...
  • Rc-lang开发周记13 另一些Parser

    pixiv:40165995 本周的内容主要就是添加剩下的一些parser,主要是和类相关的,同时还添加了数组的下标索引。内容稍微少一些,我觉得也没有太多值得讲的,基本上就是确定语法 + 直接写实现。代码写的也不多,花了不少时间在另一篇博客上,...
  • 与CI和链接大战三百回合

    攻撃隊、出撃!Vorwärts! pixiv:54707001 噩梦开始的地方在C#的CI测试中(目前仅开启了ubuntu)DllImport报错DllNotFoundException。而报错的位置是我对自己搞的一个capi做的C#包装 本地...
  • 关于glibc与GLIBC_XX

    是GLIBC的版本多还是miku的版本多? pixiv:67650124 glibc位置这个不同系统不一致,linux中比较多的存在于/lib/libc.so.6 想要查找libc的位置可以通过ldd(linux)/otool(mac)查看依赖...
  • 我原本计划停下一周,然而...

    最近的精神状态愈发差劲,无止境的压力涌入身体,我也没有什么好的排解途径(本文不是讲我状态多差的,但是这些属于所需要了解的上下文,希望不要看到这个就直接关掉了文章)。我觉得不能再这个样子了,因此我想要尝试为期一周的“在家只休息”计划(过于直接的命名) ...
  • Rc-lang开发周记12 部分Parser

    pixiv:95518122 本周内容主要就是parser,而ast的内容会穿插其中 Parser的一些问题换行由于是由换行来分句,我觉得一个头疼的点在于要想清楚哪里要换行,想清楚这个parser都是由什么组成,然后拼接在一起。但是写到这里的时...
  • Rc-lang开发周记11 重构与Lexer

    本周一开始重构了一下vm的部分代码,之后基本上都是在用新语言重写parser的部分。 重构vm目前代码很少,做的重构主要是将一些东西抽象拆分出来 这是之前vm的成员变量 1234567std::shared_ptr<VMInstVisitor&...
  • Rc-lang开发周记10 分支与循环

    开头忏悔,上周因为年会出去玩了三天没写多少东西,加上回来太累了,也就咕了一周,本周会把上周的东西一起写进来 本周更新的内容主要是修复之前的问题以及处理了分支循环 继承与成员变量首先是上周遗留的继承的情况下成员变量id会有问题,我们先来看一下成员变量相...
  • Rc-lang开发周记9 OOP之继承

    本周的内容主要是做了一些继承相关的实现工作,把项目文件结构好好修了一波,还有就是加了一些测试。本周代码我觉得大多比较简单,很多地方就不过多赘述了。关于parser和ast在之前已经写好了,所以就直接进入代码生成和VM的部分 类的符号信息对于之前的类表...
  • Rc-lang开发周记8 OOP之成员函数调用

    本周做的内容不多,主要都是在做基础的成员调用相关工作(也只处理了成员函数,还没处理成员变量),然后就是修复一些问题添加了一些dump设施(目前做的并不好,等做好了可以单独拿一期讲一下),以及学习了解了一些其他语言相关的知识。 成员函数调用的过程我们先...