Delanii / everybodySayHello

Very basic project to explore interoperability with different languages via native shared libraries.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Overview

This is very small, beginner level project to familiarize with techniques to embed programming languages in an C application, just printing message in terminal and exiting.

Project layout

This project is split into three directories:

  • RustInterop: binds Rust directly to C code as dynamically loaded library, then this rust binding is used to connect more languages, currently:

    • luajit: with mlua crate
    • python: with py3o crate
  • DirectInterop: all language interpreters are directly bound to C app via C API. All interpreters are also compiled from source

    • luajit
    • python
    • guile
    • perl
    • cpp
    • haskell
    • clojure

Building

How to build this repository:

About

Very basic project to explore interoperability with different languages via native shared libraries.


Languages

Language:C 76.0%Language:Lua 14.7%Language:HTML 7.0%Language:Makefile 1.3%Language:Batchfile 0.5%Language:CSS 0.2%Language:Roff 0.1%Language:C++ 0.1%Language:Rust 0.0%Language:Haskell 0.0%Language:Python 0.0%Language:Java 0.0%Language:Scheme 0.0%Language:Perl 0.0%