llvm-qbasic:基于llvm的QBASIC编译器

时间:2021-05-14 22:10:35
【文件属性】:
文件名称:llvm-qbasic:基于llvm的QBASIC编译器
文件大小:99KB
文件格式:ZIP
更新时间:2021-05-14 22:10:35
C++ #llvm-qbc-基于llvm的qbasic编译器 llvm-qbc是QBASIC编译器,也是静态链接的运行时库。 为什么选择BASIC? 要回答这个问题,您需要问,为什么不使用BASIC? 有多种原因。 首先,目前还没有功能完善的跨平台BASIC编译器。 更糟糕的是,如果不先分发程序的解释器,就无法分发程序。 大多数商业BASIC口译员的再分配额度有限,这一事实弥补了这一问题。 还有什么其他选择? 编译程序? 没有允许调用C函数的函数。 没有可用的C库,我们可以用BASIC做什么? 更糟的是,没有所有编译器都同意的BASIC标准。 目标 [1] Complete QBASIC support [3] Pointer support [2] Call C functions as easily as possible [4] Highly optimized [5] Built-in
【文件预览】:
llvm-qbasic-master
----basic.kdev4(46B)
----llvm-qbasic.vcxproj(7KB)
----llvm-qbasic.sln(887B)
----doc()
--------ast.dot(1KB)
--------ast.svg(26KB)
----CMakeLists.txt(2KB)
----test()
--------test7.bas(272B)
--------test.bas(189B)
--------fib_stackless.bas(407B)
--------fib.lua(153B)
--------fib_stackless.c(363B)
--------fib.go(171B)
--------fib.py(117B)
--------test9.bas(296B)
--------test2.bas(159B)
--------compare.txt(1KB)
--------test3.bas(142B)
--------CMakeLists.txt(1B)
--------test6.bas(282B)
--------test8.bas(239B)
--------test4.bas(241B)
--------test5.bas(291B)
--------fib.bas(188B)
----README.md(3KB)
----NEWS(869B)
----llvm-qbasic-vc110.sln(868B)
----.gitignore(37B)
----compiler()
--------ast.cpp(4KB)
--------operator.cpp(11KB)
--------location.hh(5KB)
--------parser.ypp(12KB)
--------position.hh(5KB)
--------type.hpp(19KB)
--------stack.hh(4KB)
--------parser.cpp(57KB)
--------qblex.cpp(66KB)
--------codegen.cpp(15KB)
--------type.cpp(12KB)
--------CMakeLists.txt(2KB)
--------qblex.ll(7KB)
--------llvmwrapper.hpp(1KB)
--------main.cpp(5KB)
--------parser.hpp(15KB)
--------ast.hpp(10KB)
--------llvmwrapper.cpp(5KB)
--------qbc.h(1KB)
----LICENSES(105B)
----llvm-qbasic.vcproj(6KB)
----brt()
--------mm.cpp(1KB)
--------CMakeLists.txt(100B)
--------README.md(923B)
--------qbarray.cpp(2KB)
--------print.cpp(1KB)

网友评论