yang:可嵌入的 C++ 脚本语言

时间:2024-06-23 10:10:55
【文件属性】:

文件名称:yang:可嵌入的 C++ 脚本语言

文件大小:139KB

文件格式:ZIP

更新时间:2024-06-23 10:10:55

C++

Yang是一种脚本语言,旨在轻松嵌入 C++ 程序。 一些特点: 除了一流的函数和闭包之外,该语言的感觉大多像 C。 静态类型检查,使用向量类型和用户类型(原始或引用计数)。 程序可以编译一次,但可以多次实例化。 一个程序可以用作其他程序的函数库。 相当不错的错误消息。 Yang 使用 LLVM 作为后端,因此编译后的程序运行速度非常快。 脚本代码和主机代码之间自然的、类型安全的、无样板的互操作。 值可以在 C++ 和 Yang 之间来回传递。 一个定义的函数可以从另一个调用。 引用计数(如果适用)仅适用于两种语言。 一些计划的功能: 结构接口:定义包含一些成员函数的接口类型。 任何类型为具有匹配成员函数的用户类型的值,或具有匹配导出函数的任何程序实例,都可以转换为接口类型。 合理的线程安全保证? 一些缺点: 使用 Yang 涉及将您的程序与一个体面的 LLVM 块


【文件预览】:
yang-master
----.gitignore(87B)
----README.md(2KB)
----.gitmodules(789B)
----tests()
--------test_trampolines.cpp(5KB)
--------tests.cpp(4KB)
--------test_user_types.cpp(6KB)
--------test_interfaces.cpp(2KB)
--------test_apis.cpp(17KB)
--------test_exhaustive.cpp(17KB)
--------tests.h(1KB)
--------test_refcounting.cpp(8KB)
--------test_errors.cpp(20KB)
--------test_semantics.cpp(11KB)
--------test_functions.cpp(7KB)
----docs()
--------source()
----LICENSE(2KB)
----include()
--------yang()
----dependencies()
--------flex()
--------llvm()
--------googletest()
--------byacc()
--------makelib()
--------Makefile(3KB)
--------sphinx()
--------pygments()
----src()
--------program.cpp(5KB)
--------type.cpp(7KB)
--------log.h(1KB)
--------table.h(5KB)
--------category.cpp(4KB)
--------walker.h(4KB)
--------yang.y(15KB)
--------ircommon.cpp(17KB)
--------category.h(3KB)
--------irval.cpp(19KB)
--------context.cpp(8KB)
--------irgen.h(3KB)
--------refcounting.cpp(7KB)
--------function.cpp(969B)
--------yang.l(7KB)
--------irgen.cpp(56KB)
--------static.cpp(44KB)
--------ircommon.h(3KB)
--------static.h(4KB)
--------tools()
--------memory.cpp(769B)
--------irval.h(6KB)
--------ast.cpp(11KB)
--------instance.cpp(3KB)
--------memory.h(864B)
--------ast.h(6KB)
----Makefile(6KB)

网友评论