易语言吧 关注:266,353贴子:1,663,151
  • 12回复贴,共1

2021-3-16 编程语言的设计和代码生成

只看楼主收藏回复

多年前没有完成的一个项目 现在来写写


1楼2021-03-16 11:11回复
    目前的思路是 先设计词法和语法 然后用lex和yacc来写


    2楼2021-03-16 23:28
    回复
      目前考虑的是写一个面向过程的语言。


      3楼2021-03-17 09:20
      回复
        由于考虑到临时变量的生成,临时变量统一以$X$来表示,而用户声明的变量不允许有$字符。


        4楼2021-03-17 09:22
        回复
          该语言应该是支持for,while,do while,if else这些的。目前考虑的问题,输入输出应该固定到语言层次吗?或者通过system call来实现。变量类型,先就写个int以及Int数组。


          5楼2021-03-17 09:25
          回复
            语言设计好之后,就分4个阶段吧,词法分析,语法分析,中间代码生成,然后写个中间码的解释器,编译的话,后面再想想。


            6楼2021-03-17 09:28
            回复
              位运算& | ~
              逻辑运算 && || !
              数值运算 + - * / % ^
              整数 -*[1-9][0-9]*
              0
              其他的一些token {},[]();
              关键字
              If else while do for
              剩下的再补充
              现在应该还不会支持指针。


              7楼2021-03-17 09:35
              回复
                程序的话,对于递归应该是支持的。局部变量和全局变量应该也可以支持。


                8楼2021-03-17 09:36
                回复
                  中间语言的话,应该是采用一种类似汇编的语言。


                  9楼2021-03-17 09:37
                  回复
                    先取名为Z语言


                    10楼2021-03-17 09:40
                    回复

                      词法分析器的一部分。


                      11楼2021-03-17 09:53
                      回复
                        。。。


                        IP属地:广东来自iPhone客户端12楼2021-03-17 13:40
                        回复
                          怎么联系


                          IP属地:河南来自Android客户端13楼2023-11-08 01:56
                          回复