jluna
Clang.jl
jluna | Clang.jl | |
---|---|---|
4 | 2 | |
255 | 226 | |
2.0% | 0.4% | |
5.0 | 7.4 | |
8 months ago | 7 days ago | |
C++ | Julia | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
jluna
- Jluna: A modern Julia Wrapper for C++
-
jluna 1.0 & apologies
If you would still like to check out the 1.0 version of jluna, it is available for free under MIT license here. I also announced it on discourse.
-
Benchmarking jluna showed: Julia is faster at running C++ Code concurrently, than C++ is
jluna, the modern C++ <-> Julia wrapper, just released its 1.0 Beta. It had some major reworks and new features, one of which is multi-threading. Through some black magic, the native Julia thread pool was wrapped, such that you can run any C++ code inside a Julia task concurrently.
-
A new C++ <-> Julia Wrapper: jluna
Available here: https://github.com/Clemapfel/jluna
Clang.jl
-
Julia 1.10 Released
Are there solid C interfaces that can be used?
A large part of why I started using Julia is because calling into other languages through the C FFI is pretty easy and efficient. Most of the wrappers are a single line. If there is not existing driver support, I would pass the C headers through Clang.jl, which automatically wraps the C API in a C header.
https://github.com/JuliaInterop/Clang.jl
I most recently did this with libtiff. Here is the Clang.jl code to generate the bindings. It's less than 30 lines of sterotypical code.
https://github.com/mkitti/LibTIFF.jl/tree/main/gen
The generated bindings with a few tweaks is here:
https://github.com/mkitti/LibTIFF.jl/blob/main/src/LibTIFF.j...
-
A new C++ <-> Julia Wrapper: jluna
If you are interested in C++ interop you can also have a look at Clang.jl and CxxWrap.jl (the usual Julia package chaos applies, where the package mentioned in old talks and docs that you find on google is superseded by some others...)
What are some alternatives?
TimedPetriNetEditor - [Application][Version 0.4.0][Functional] A timed Petri net and graph event editor and simulator combined to (max,+) algebra with wrapped API for Julia lang
threads - Threads for Lua and LuaJIT. Transparent exchange of data between threads is allowed thanks to torch serialization.
CxxWrap.jl - Package to make C++ libraries available in Julia
eaxefx - OpenAL EAX Extension
Torch.jl - Sensible extensions for exposing torch in Julia.
uvw - Header-only, event based, tiny and easy to use libuv wrapper in modern C++ - now available as also shared/static library!
LibTIFF.jl - Clang.jl generated wrapper around Libtiff_jll.jl
modern-cpp-tutorial - 📚 Modern C++ Tutorial: C++11/14/17/20 On the Fly | https://changkun.de/modern-cpp/
oorb - An open-source orbit-computation package for Solar System objects.
entt - Gaming meets modern C++ - a fast and reliable entity component system (ECS) and much more
Lux.jl - Elegant and Performant Scientific Machine Learning in Julia