All Projects → w41ter-l → LL-Script

w41ter-l / LL-Script

Licence: MIT license
Simple script

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
Makefile
30231 projects
objective c
16641 projects - #2 most used programming language

Projects that are alternatives of or similar to LL-Script

Compiler Util
An NX utility, responsible for executing code in the context of an object.
Stars: ✭ 130 (+242.11%)
Mutual labels:  compile
Snapdragon
snapdragon is an extremely pluggable, powerful and easy-to-use parser-renderer factory.
Stars: ✭ 180 (+373.68%)
Mutual labels:  compile
documentify
Modular HTML bundler
Stars: ✭ 47 (+23.68%)
Mutual labels:  compile
Runtimecompiledcplusplus
Change C++ code at runtime
Stars: ✭ 1,843 (+4750%)
Mutual labels:  compile
Compileflow
core business process engine of Alibaba Halo platform. best engine for trade Scenes
Stars: ✭ 179 (+371.05%)
Mutual labels:  compile
xconfigure
High-Performance configuration patterns and recipes.
Stars: ✭ 42 (+10.53%)
Mutual labels:  compile
Lazy Compile Webpack Plugin
Boost webpack startup time by lazily compiling dynamic imports
Stars: ✭ 106 (+178.95%)
Mutual labels:  compile
qcor
C++ compiler for heterogeneous quantum-classical computing built on Clang and XACC
Stars: ✭ 78 (+105.26%)
Mutual labels:  compilers
Improvexamarinbuildtimes
Tips and tricks on how to speed up the time it takes to compile a Xamarin app
Stars: ✭ 180 (+373.68%)
Mutual labels:  compile
BOHM1.1
Bologna Optimal Higher-Order Machine, Version 1.1
Stars: ✭ 45 (+18.42%)
Mutual labels:  compilers
Handlebars Helpers
Related projects
Stars: ✭ 2,024 (+5226.32%)
Mutual labels:  compile
Discovery
Discoveries on Sustainable Loading research
Stars: ✭ 174 (+357.89%)
Mutual labels:  compile
go-recipes
🦩 Tools for Go projects
Stars: ✭ 2,490 (+6452.63%)
Mutual labels:  compilers
Handlebars Webpack Plugin
Renders your html-template at build time
Stars: ✭ 135 (+255.26%)
Mutual labels:  compile
golden
a benchmark for compile-time and/or runtime Nim 🏆
Stars: ✭ 28 (-26.32%)
Mutual labels:  compile
Shadow Rs
A build-time information stored in your rust project.(binary,lib,cdylib,dylib)
Stars: ✭ 117 (+207.89%)
Mutual labels:  compile
Kotlin Compile Testing
A library for testing Kotlin and Java annotation processors, compiler plugins and code generation
Stars: ✭ 245 (+544.74%)
Mutual labels:  compile
jet
A Fast C and Python like Programming Language that puts the Developer first. WIP
Stars: ✭ 41 (+7.89%)
Mutual labels:  compilers
Decaf-Compiler
Compiler for Decaf Programming Language
Stars: ✭ 36 (-5.26%)
Mutual labels:  compilers
suicide
LLVM pass that detects one undefined behavior, and emits code to delete your hard drive
Stars: ✭ 33 (-13.16%)
Mutual labels:  compilers

介绍

simple script, just for fun.

详细设计访问介绍

Syntax

Here

Intro

基础类型: integer, float, string, hash table, lambda

基础语句: if, while, return, break, continue

工作流程图:

lexer -> parser -> SSA IR -> reg alloc -> code gen -> OPCODE -> vm

Example

function fib(n) {
  if (n <= 2) {
    return 1;
  }
  else {
    return fib(n - 1) + fib(n - 2);
  }
}

let n = to_integer(input("please input value:"));
let result = fib(n);

output("the result of fib(", n, ") is :", result, "\n");

FFI

提供了与C语言交互的简单方式:

// on `lib.cpp`

Object lib_output(VMState * state, size_t paramsNums);

static Lib libs[] = {
	{ "output", lib_output },
  // ...
	{ nullptr, nullptr }
};

Object lib_output(VMState * state, size_t paramsNums)
{
	VMScene *scene = state->getScene();
	for (size_t idx = scene->paramsStack.size() - paramsNums;
		idx < scene->paramsStack.size(); ++idx) {
		Object arg = scene->paramsStack[idx];
		DumpObject(arg);
	}
	return CreateNil();
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].