A Compact embeddable JIT compiler that reads C headers and compiles to x86 machine code. Executes directly in memory or creates DLLs and EXE files. Supports overloading and OOP. Currently available for MS platforms.


Direct:
print "Hello World!"


Function:
function greet(string name) as string
  return "Hello " name "!"
end function

print greet "World"


Object Oriented:
class entity
  '
  string name
  '
  method greet(entity*p)
    print "Hello " p.name "!"
  end method
  '
end class

entity I={"Charles"}
entity all={"World"}

I.greet all

Oxygen Basic






Alpha Downloads

Gallery

Games

Reference

Forum



Introducing Oxygen Basic

Oxygen Basic (O2H) is a compiler assembler and linker, deployed in a single DLL that takes source code strings and creates executable binary in memory. This implementation can be embedded in any application to provide high performance programmability. The compiler can also generate conventional 32/64 bit executables and dynamic link libraries.

Oxygen supports Object Oriented Programming with multiple inheritance and also single inheritance modes, more suited to COM. In addition to this O2H supports customised operators for classes. It can also build secondary binaries from source code strings at run time with its dynamic compile() function.

The built-in function set is small. but contains the necessary tools to build class / function libraries to any scale.

In addition to understanding Basic in the QBasic genre, Oxygen can read sufficient C syntax to deal with most C headers directly, eliminating the need to translate them into Basic.

Charles E V Pegge. 2010-2017