Skip to content

Latest commit

 

History

History
63 lines (41 loc) · 1.11 KB

File metadata and controls

63 lines (41 loc) · 1.11 KB

Delta Logo

Delta is a statically typed, imperative language that uses LLVM as its backend.

Features

  • Struct access
  • String allocation / array of chars
  • If statement early return function type matching
  • Array slices?
  • GC

Building

Build source.

dune build

Compile and dump LLVM IR to llvm_bin/output.ll.

dune exec -- delta examples/example.dx

Compile dynamically linked C library.

gcc -shared -fPIC -o libsocket.so socket.c

Generate executable from LLVM IR linked with a specified library.

clang-19 -target x86_64-pc-linux-gnu llvm_bin/output.ll -o llvm_bin/output -L. -lsocket -Wl,-rpath=.

Generate executable from LLVM IR linked with libc.

clang-19 -target x86_64-pc-linux-gnu llvm_bin/output.ll -o llvm_bin/output -lc -Wl,-rpath=.

Format all OCaml and dune files.

opam exec -- dune fmt

Lint opam file(s).

opam lint

Contributing

TBD - Not open for contributions until stable version is implemented.

License

Delta source code is released under the Apache License 2.0.