Elixir implementations of HTM?

I’d love to know about any work on Elixir implementations of HTM. As Elixir continues to evolve, this seems more and more like an interesting approach. Elixir brings modern programming language sensibilities (eg, macros, pipelines, Ruby-like syntax) to the (distributed, failsoft) Erlang ecosystem, then adds convenient features such as flow control and truth maintenance. So, it could make simulating zillions of neurons convenient, performant, and robust.

Is there anything I should know about, aside from Fergal Byrne’s CLA implementation:

Cort.ex is an implementation of Jeff Hawkins’ Cortical Learning Algorithm in Elixir.



I’m still interested in this notion, so I thought I’d bring the thread up to date a bit. The high order bit is that Elixir now has a numerical extension (Nx) which compiles selected code down to machine code for assorted graphics processors. It also provides a convenient, efficient, and standardized way to characterize data structures.

The next bit is José Valim’s LiveBook offering, which looks a lot a Jupyter Notebook. However, because it is implemented using Elixir, LiveView, Nx, and Phoenix, it is more powerful in several respects. For example, a server-side app can act as an attachable dashboard and/or REPL for itself and/or another (possibly distributed) set of processes.

In short, there is some really tasty infrastructure over on the Elixir side, just waiting to be used. Can anyone summarize the current status of distributed FOSS HTM for me? Is there a tool for this? If not, what pieces are missing and what kind of architecture and capabilities would make sense? Inquiring gnomes need to mine…


1 Like

I don’t know anything about Elixir, but Nx sounds really cool!
Python has a similar project called numba which uses Just-In-Time (JIT) compilation, and can target graphics cards.

A quick search for Elixir on this forum finds this project: ElixerHTM: new HTM implementation

Here are some links which may be of interest…

Announcing Livebook - José Valim

José Valim - New in Livebook v0.2: inputs, graphs, and more!

Elixir-NX-Axon: Elixir’s Machine Learning Library

Introduction to Nx

1 Like