All Projects → guenchi → Darkart

guenchi / Darkart

Licence: mit
A binary interface let Chez Scheme use Python, Lua, Ruby etc's library

Programming Languages

scheme
763 projects

Labels

Projects that are alternatives of or similar to Darkart

Aim Ik
A Unity-3D library, to procedural orientate character head (and chest) in a direction without using any animation data.
Stars: ✭ 164 (-2.38%)
Mutual labels:  library
Slidingsquareloaderview
Marvelous sliding square loader view
Stars: ✭ 166 (-1.19%)
Mutual labels:  library
Holster
A place to keep useful golang functions and small libraries
Stars: ✭ 166 (-1.19%)
Mutual labels:  library
Gifenc
small C GIF encoder
Stars: ✭ 164 (-2.38%)
Mutual labels:  library
Cdt
C++ library for constrained Delaunay triangulation (CDT)
Stars: ✭ 165 (-1.79%)
Mutual labels:  library
Parliament Svg
Generate parliament charts as virtual-dom SVG
Stars: ✭ 165 (-1.79%)
Mutual labels:  library
Pysnow
Python library for the ServiceNow REST API
Stars: ✭ 162 (-3.57%)
Mutual labels:  library
Twigcs
The missing checkstyle for twig!
Stars: ✭ 166 (-1.19%)
Mutual labels:  library
Ssh2 Python
Bindings for libssh2 C library.
Stars: ✭ 166 (-1.19%)
Mutual labels:  library
React Messenger
Chat UX components built with React, inspired by Facebook Messenger
Stars: ✭ 167 (-0.6%)
Mutual labels:  library
Item Nbt Api
Add custom NBT tags to Items/Tiles/Entities without NMS!
Stars: ✭ 163 (-2.98%)
Mutual labels:  library
Angular Google Maps
Angular 2+ Google Maps Components
Stars: ✭ 1,982 (+1079.76%)
Mutual labels:  library
Cecil
Cecil is a library to inspect, modify and create .NET programs and libraries.
Stars: ✭ 2,112 (+1157.14%)
Mutual labels:  library
Uriparser
🔪 Strictly RFC 3986 compliant URI parsing and handling library written in C89; moved from SourceForge to GitHub
Stars: ✭ 163 (-2.98%)
Mutual labels:  library
Foregroundappchecker
Foreground application detection library for android.
Stars: ✭ 167 (-0.6%)
Mutual labels:  library
Brackeys Ide
👨‍💻 Brackeys IDE is a fast and free multi-language code editor for Android.
Stars: ✭ 154 (-8.33%)
Mutual labels:  library
React Trading Ui
Component library for trading applications 😰📉💸
Stars: ✭ 166 (-1.19%)
Mutual labels:  library
Reference Huffman Coding
Clear implementation of Huffman coding for educational purposes in Java, Python, C++.
Stars: ✭ 167 (-0.6%)
Mutual labels:  library
Mailio
mailio is a cross platform C++ library for MIME format and SMTP, POP3 and IMAP protocols. It is based on standard C++ 17 and Boost library.
Stars: ✭ 166 (-1.19%)
Mutual labels:  library
Bt
BitTorrent library and client with DHT, magnet links, encryption and more
Stars: ✭ 2,011 (+1097.02%)
Mutual labels:  library

Darkart: Chez Scheme's Forign Library Interface

A binary interface let Chez Scheme use Python, Lua, Ruby etc's library

This project is inspired by the Julia language. The FFI interface provided by Chez is used to embed the interpreter or JIT compiler of other languages into the Scheme program (CPython, Luajit etc) or to link the compiled object code with the C binary interface. (OCaml, Golang etc).

This library can be ported to other Scheme implementations, with r6rs-pffi.

Priority: Python ✅ > Julia ✅ > Javascript > OCaml > lua ✅

Ecosystem: NumPySciPy 🚧 SymPy 🚧 MatplotlibPandas 🚧

Exemple

(define np (py-import 'numpy))
(define ndarray (py-get np 'ndarray))
(define pi (py-get np 'pi))
(define np-array (py-func np 'array))
(define np-sin (py-func np 'sin))
(define np-tolist (py-func ndarray 'tolist))

(define get-sin
  (lambda (lst)
    (plist->list
      (np-tolist
        (np-sin
          (py-div
            (py-mul pi 
              (np-array
                (list->plist lst)))
            (int 180)))))))

(get-sin '(1 2 3 4 5 6 7 8))

=>
(0.01745240643728351 0.03489949670250097 0.05233595624294383 0.0697564737441253 
0.08715574274765817 0.10452846326765346 0.12186934340514748 0.13917310096006544)

Manual

The ecosystem which base on Darkart:

https://guenchi.github.io/NumPy

https://guenchi.github.io/SciPy

https://guenchi.github.io/SymPy

https://guenchi.github.io/Matplotlib

https://guenchi.github.io/Pandas

(which is more python library binding exemples)

Sources:

https://github.com/JuliaPy/PyCall.jl/blob/master/src/PyCall.jl

https://docs.python.org/3.7/c-api/index.html

https://docs.python.org/2.5/ext/callingPython.html

http://www.linux-nantes.org/~fmonnier/OCaml/ocaml-wrapping-c.html

http://caml.inria.fr/pub/docs/manual-ocaml-4.00/manual033.html#htoc281

Deprecated attempt:

https://github.com/guenchi/Darkart/tree/deprecated

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].