release 0.1.0

This commit is contained in:
rus07tam 2026-05-06 12:21:06 +03:00
commit 30d94536a9
90 changed files with 7722 additions and 0 deletions

32
modules/core/ffi.owa Normal file
View file

@ -0,0 +1,32 @@
(namespace ffi
(def unload builtins.ffi.unload)
(def ctypes [
:i8 :i16 :i32 :i64
:u8 :u16 :u32 :u64
:f32 :f64
:ptr
:str
])
(defmacro extern [name libname]
(namespace $name
(builtins.ffi.load $libname)
(fn call [symbol signature args]
(builtins.ffi.call $libname symbol signature args)
)
)
)
(defmacro native [name libname]
(namespace $name
(builtins.ffi.load $libname)
(defmacro fn [name symbol args ret]
(def '$name #(builtins.ffi.call $libname '$symbol ['$args '$ret] %&))
)
$%&
)
)
(extern ucrtbase "ucrtbase.dll")
)