Full Moon (Beta) (v0.9.0)
It is here! In the works for many weeks, jluna 0.9 arrives, bringing with it major restructuring of the entire library, along with multi-threading support. This release will be upgraded to 1.0 in winter 2022, unless something else comes up. No new features are planned to be added until then, making jluna finally feature complete.
The entire manual was rewritten from scratch, in a tone that is more suited for novice users less familiar with C++ or Julia. Furthermore, the need box
/ unbox
was reduced, now only being necessary in performance critical environments. It is recommended that you reread the manual, especially the new sections on multi-threading and benchmarks
The following features were added:
unsafe
library- multi-threading & thread-safety
as_julia_function
- benchmark interpretation in the manual
- cmake tests
This release removed deprecation warnings, potentially making old syntax invalid. In particular, the following things were renamed:
- All functions
jluna::State
are no injluna::
register_function
was removed and replaced withas_julia_function
, see the manual for more detail- all functions in
julia_extension.hpp
were removed
The following headers were removed:
expression.hpp
function.hpp
julia_extension.hpp
state.hpp
The following headers were added:
multi_threading.hpp
safe_utilities.hpp
unsafe_utilities.hpp
If porting your application from 0.8.4 to 0.9.0 gives you difficulties, feel free to open an issue. No actual functionality was removed, it was either renamed or moved to a different part of jluna that was better suited for it.
Windows support may have been borked with this release, I will try to get an environment to test this asap. Until then, simply use clang
on windows, rather than MSVC.
Thank you,
C.