nerves
clash-ghc
nerves | clash-ghc | |
---|---|---|
11 | 33 | |
2,150 | 1,375 | |
0.7% | 1.2% | |
8.4 | 9.1 | |
12 days ago | 4 days ago | |
Elixir | Haskell | |
Apache License 2.0 | BSD 2-clause "Simplified" 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.
nerves
- Embedded Elixir
-
Where Nerves-related Mix tasks are defined?
The nerves package's README.md explains what each repository is responsible for with a comprehensive listing.
- Elixir for Ruby developers: the three most important differences
-
Firefly – A new compiler and runtime for BEAM languages
You may be already aware of it, but just in case, there is the Nerves project: https://nerves-project.org/
-
Mixing sync and async views in the same application
As for embedded... I've only dabbled. Yeah you're not going to run Elixir on an Arduino or other very minimal bare metal embedded processor. But the Nerves Project (https://nerves-project.org/) which runs Elixir directly on SBCs is very well regarded. But either way it doesn't matter, since I thought we were talking about web dev, which is where Phoenix and Elixir just make more sense, for me.
-
what is the common usage of elixir
For me particularly I like it for things like APIs, Web Platforms (lower resource usage than other languages), and embedded devices via Nerves. However I've also used it on my endpoints to monitor them via Erlang's built in os_mon. Another usage is the distributed nature of erlang can allow you to do things like connect two nodes and run code on a remote node via remote procedure calls. This would allow you to execute something in a nearby geolocated node and reduce latency. Fly.io did a talk on this feature.
-
Functional programming language for embedded devices?
Check out nerves, a set of tools and libraries for embedded development with Elixir.
- Craft and deploy bulletproof embedded software in Elixir
-
A native Go userland for your Raspberry Pi 3 or 4 appliances
Is this kinda like the Nerves approach but for Golang? (https://github.com/nerves-project/nerves)
-
Use case of elixir
Nerves is also popular for embedded.
clash-ghc
- Clash: A Functional Hardware Description Language
- Clash (Haskell) for ASIC design
-
Building a Networked Key-Value-Store on an FPGA
> You'd be better off with a higher-level or more modern HDL that compiles to Verilog/VHDL. "Chisel" is one such.
As is Clash :) https://clash-lang.org/
-
Need project idea
You can take a look at https://clash-lang.org/. There is also a book for it. https://gergo.erdi.hu/retroclash/
-
5 layered CNN implementation on arduino/FPGAs [P]
I don't know much about FPGAs, but Clash lang compiles to VHDL, and might do the trick: https://clash-lang.org
- An addressable little explored language gap: HDL - Hardware Description Languages, any language used for electronic circuit design, description, and specs
- Pedagogical Downsides of Haskell
- Ask HN: Choice of HDL for an FPGA Project
-
Baud rate 1.5% lower than expected, is this normal?
if you need inspiration there is a full UART core available in clash: https://github.com/clash-lang/clash-compiler/blob/master/clash-cores/src/Clash/Cores/UART.hs
-
A circuit simulator that doesn't look like it was made in 2003
Perhaps peripheral (the original site has been hugged to death).
Both clashlang: https://clash-lang.org/
And Hardcaml: https://github.com/janestreet/hardcaml
have personally fueled my interest in hardware.
Dan Luu speaks eloquently and at length about how better options are needed for logic design. I would recommend both of the above to the enthusiastic novice.
What are some alternatives?
tamago - TamaGo - ARM/RISC-V bare metal Go
wiringPi - A Haskell binding to the wiringPi library, for using GPIO on the Raspberry Pi.
libcluster - Automatic cluster formation/healing for Elixir applications
clash-prelude
live_svelte - Svelte inside Phoenix LiveView with seamless end-to-end reactivity
mercury-api - Haskell binding to Mercury API for ThingMagic RFID readers
erlexec - Execute and control OS processes from Erlang/OTP
ICFP2020_Bluespec_Tutorial - Tutorial on hardware design using Bluespec BH (Bluespec Classic) for Haskell programmers at ACM ICFP 2020 conference
cubdb - Elixir embedded key/value database
riscv-cores-list - RISC-V Cores, SoC platforms and SoCs
nerves_livebook - Develop on embedded devices with Livebook and Nerves
amaranth - A modern hardware definition language and toolchain based on Python