mercury-ad
owl
mercury-ad | owl | |
---|---|---|
2 | 5 | |
6 | 1,182 | |
- | 1.0% | |
10.0 | 8.2 | |
over 1 year ago | 6 days ago | |
Mercury | OCaml | |
GNU General Public License v3.0 only | 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.
mercury-ad
-
Understanding Automatic Differentiation in 30 lines of Python
I wrote a purely functional AD library in Mercury [0], which adapts a general approach from [1]. I believe that Owl provides a similar approach [2].
[0] https://github.com/mclements/mercury-ad
-
Autodidax: Jax Core from Scratch (In Python)
I find the solutions from https://github.com/qobi/AD-Rosetta-Stone/ to be very helpful, particularly for representing forward and backward mode automatic differentiation using a functional approach.
I used this code as inspiration for a functional-only (without references/pointers) in Mercury: https://github.com/mclements/mercury-ad
owl
- Owl project (OCaml scientific computing) formally concluded
- Understanding Automatic Differentiation in 30 lines of Python
- I Wrote an Activitypub Server in OCaml: Lessons Learnt, Weekends Lost
-
Julia 1.6 addresses latency issues
> after some consideration of OCaml, but unfortunately the multi-core story still isn't there yet
It is supposed to land in the release after 4.13, which is the next one.
Regarding the scientific computations library there is Owl[1][2] which now has an almost finished book[3].
[1] https://ocaml.xyz/
[2] https://github.com/owlbarn/owl
[3] https://ocaml.xyz/book/
-
A Comparison of Futhark and Dex
The Owl lib for OCaml is pretty interesting
https://github.com/owlbarn/owl
What are some alternatives?
GPU-Puzzles - Solve puzzles. Learn CUDA.
Octavian.jl - Multi-threaded BLAS-like library that provides pure Julia matrix multiplication
AD-Rosetta-Stone - Examples of Automatic Differentiation (AD) in many different languages and systems
Arraymancer - A fast, ergonomic and portable tensor library in Nim with a deep learning focus for CPU, GPU and embedded devices via OpenMP, Cuda and OpenCL backends
autodidact - A pedagogical implementation of Autograd
Peroxide - Rust numeric library with R, MATLAB & Python syntax
autograd - Efficiently computes derivatives of numpy code.
symengine.rs - (Unofficial) Rust wrappers to the C++ library SymEngine, a fast C++ symbolic manipulation library.
db-benchmark - reproducible benchmark of database-like ops
micrograd - A tiny scalar-valued autograd engine and a neural net library on top of it with PyTorch-like API
sparse-linear-algebra - Numerical computation in native Haskell