Ravi is a dialect of Lua, featuring limited optional static typing, JIT and AOT compilers
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Pavel R. 7adbc171f6 changed types to strict (nil disallowed) in lcode.c 5 months ago
..
Makefile issue #204 Code reorg 10 months ago
README.rst issue #203 Doc update 10 months ago
bit.c issue #133 add LuaJIT's bit library so that we can support dynasm 4 years ago
lapi.c Merge branch 'new_type_info' into type-maps 8 months ago
lapi.h issue #204 Code reorg 10 months ago
lauxlib.c issue #157 cleanup 1 year ago
lbaselib.c issue #196 backport generational GC from Lua 5.4 1 year ago
lbitlib.c issue #156 3 years ago
lcode.c changed types to strict (nil disallowed) in lcode.c 5 months ago
lcode.h issue #204 Code reorg 10 months ago
lcorolib.c Removed RAVI_DEFER_STATEMENT define (there are no reasons to disable it) 5 months ago
lctype.c issue #156 3 years ago
lctype.h issue #204 Code reorg 10 months ago
ldblib.c Fixed possibility to initialize empty strings (and booleans) 5 months ago
ldebug.c issue #217 define ravitype_t in terms of the new values 8 months ago
ldebug.h issue #204 Code reorg 10 months ago
ldo.c Removed RAVI_DEFER_STATEMENT define (there are no reasons to disable it) 5 months ago
ldo.h issue #204 Code reorg 10 months ago
ldump.c Bump binary version & smaller sizes for stripped binaries 8 months ago
lfunc.c Removed RAVI_DEFER_STATEMENT define (there are no reasons to disable it) 5 months ago
lfunc.h Removed RAVI_DEFER_STATEMENT define (there are no reasons to disable it) 5 months ago
lgc.c issue #196 reformat 10 months ago
lgc.h issue #204 Code reorg 10 months ago
linit.c issue #198 WIP add interface to RaviCompiler project 1 year ago
liolib.c issue #156 3 years ago
llex.c Removed RAVI_DEFER_STATEMENT define (there are no reasons to disable it) 5 months ago
llex.h Removed RAVI_DEFER_STATEMENT define (there are no reasons to disable it) 5 months ago
llimits.h issue #204 Code reorg 10 months ago
lmathlib.c issue #191 #193 backport random number generator from Lua 5.4 1 year ago
lmem.c issue #156 3 years ago
lmem.h issue #204 Code reorg 10 months ago
loadlib.c issue #198 Updated interface to the compiler lib 11 months ago
lobject.c issue #217 define ravitype_t in terms of the new values 8 months ago
lobject.h added missing optional types opcodes to JIT interface 5 months ago
lopcodes.c added missing optional types opcodes to JIT interface 5 months ago
lopcodes.h Removed RAVI_DEFER_STATEMENT define (there are no reasons to disable it) 5 months ago
loslib.c issue #156 3 years ago
lparser.c Fixed possibility to initialize empty strings (and booleans) 5 months ago
lparser.h Cleanup and Fixes 8 months ago
lprefix.h issue #204 Code reorg 10 months ago
lstate.c Removed RAVI_DEFER_STATEMENT define (there are no reasons to disable it) 5 months ago
lstate.h issue #204 Code reorg 10 months ago
lstring.c issue #156 3 years ago
lstring.h issue #204 Code reorg 10 months ago
lstrlib.c issue #195 lstrlib 10 months ago
ltable.c Finish type maps 8 months ago
ltable.h Finish type maps 8 months ago
ltablib.c issue #156 3 years ago
ltests.c Cleanup and Fixes 8 months ago
ltm.c issue #222 Lua 5.4 change for bitwise ops 7 months ago
ltm.h issue #204 Code reorg 10 months ago
lua.c issue #203 leftover cleanup 10 months ago
luac.c issue #156 3 years ago
lundump.c changed types to strict (nil disallowed) in lcode.c 5 months ago
lundump.h Bump binary version & smaller sizes for stripped binaries 8 months ago
lutf8lib.c issue #195 lexer / utf8 improvements from Lua 5.4 1 year ago
lvm.c added missing optional types opcodes to JIT interface 5 months ago
lvm.h Removed RAVI_DEFER_STATEMENT define (there are no reasons to disable it) 5 months ago
lzio.c issue #156 3 years ago
lzio.h issue #204 Code reorg 10 months ago
ravi_alloc.c issue #151 adopt Doug Lea's allocator 4 years ago
ravi_alloc.h issue #204 Code reorg 10 months ago
ravi_arch.h issue #204 Code reorg 10 months ago
ravi_complib.c Update copyright notices 10 months ago
ravi_def.h issue #204 Code reorg 10 months ago
ravi_jit.c Update copyright notices 10 months ago
ravi_jit.h Update copyright notices 10 months ago
ravi_jitshared.c added missing optional types opcodes to JIT interface 5 months ago
ravi_jitshared.h Update copyright notices 10 months ago
ravi_membuf.c Update copyright notices 10 months ago
ravi_membuf.h issue #204 Code reorg 10 months ago
ravi_mirjit.c Removed RAVI_DEFER_STATEMENT define (there are no reasons to disable it) 5 months ago
ravi_mirjit.h Update copyright notices 10 months ago
ravi_nojit.c Update copyright notices 10 months ago
ravi_profile.c issue #204 Code reorg 10 months ago
ravi_profile.h issue #204 Code reorg 10 months ago

README.rst

This folder has all the Lua and Ravi source files.

The Lua sources begin with the letter ``l``.
The following Lua sources have been enhanced for Ravi.

* lvm.c - this has the Ravi bytecode implementations
* lopcodes.c - definitions of Ravi opcodes
* ldo.c - changes to enable calling JITed function
* lparser.c - parser changes for optional typing
* lcode.c - code generator changes for optional typing
* lfunc.c - changes to support JIT compilation
* linit.c - the Ravi api functions get loaded here
* ltable.c - enhancements for Ravi array types
* lapi.c - enhancements for Ravi array types

Ravi uses Doug Lea's malloc implementation. The implementation is in:

* ravi_alloc.c - Doug Lea's malloc implementation, adapted for Ravi.

## JIT Implementations

* ravi_jit.c - Ravi JIT API definition

Some backends use C as the intermediate language. The common C code generator is in:

* ravi_jitshared.c - this is the C code generator for a given Ravi / Lua function

The MIR JIT implementation is in:

* ravi_mirjit.c - defines the driver functions. The MIR backend has its own C preprocessor, parser and code generator.