yolo007wizard
I’ve been reading up on Firefly and it looks very impressive. Does this mean faster CPU bound Elixir? i.e. ballpark java speeds? Or at least tighter interop with Rust would be fantastic with what they mentioned in NIF section.
I also found Hologram which I think leverages Firefly to put Elixir client side and it made me drool a little.
Stuff like this makes me very excited about the beam garden.
Trending in Discussions
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
New
Hi there! :wave:
@frigidcode and I (but mostly him) have been running an Elixir Book club, we’re almost done with Designing Elixir Syste...
New
I love Elixir. It’s one of 2 programming languages I’ve ever fallen in love with.
But I don’t use it anymore.
Serverless was the promis...
New
What IDE or editor are you using for Elixir development?
Personally, I use Zed, and I really like it, but sometimes I wish there were a ...
New
Fly’s CEO posted this recently - Turn And Face The Strange · The Fly Blog
It says that Fly is going all-in on sprites, which is a worry ...
New
This was an interesting post by Jose. Curious to hear what others think. Evolving programming languages in the AI era - Dashbit Blog
Gen...
New
Hey guys!
Curiosum team has just published the State of Elixir results on Elixir Hub: see the results here.
1018 participants, 45 quest...
New
Other Trending Topics
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly)
AI dream has many faces, but general...
New
In 2021 I started a new library called Tempo with the objective of modelling time as a set of intervals - not as instants. In 2022 I gave...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #ai
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #blog-post
- #elixirconf-us
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #elixirconf-eu
- #api
- #forms
- #security
- #performance










Showing Posts 1 to 10- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
bartblast
Hey, the creator of Hologram here. Hologram is not using Firefly under the hood - it transpiles BEAM definitions directly to JavaScript, and it has a different scope than FireFly in general, think ElixirScript + LiveView + Surface. Btw expect playable version soon!
D4no0
I suppose none of the VM features are available, it is basically just limited elixir syntax?
bartblast
You can say so, it won’t support the stuff related to processes, at least in the initial versions. However I plan to experiment with Web Workers API later to see what can be done in this regard.
yolo007wizard
Thanks for clarification. Really like the page localization layout. Also do you have plans to make this work with Firefly in future?
bartblast
If it will have some dead-code elimination and code-splitting methods, then why not? I’d like to avoid having to ship a few MB runtime bundle to the browser on the initial page load. With the current architecture, Hologram is able to run a basic page with a few kB runtime bundle and a few kB page-related bundle.
D4no0
Yeah, but don’t forget that you will have VM capabilities, like processes and fault-tolerance, witch IMO is worth even the full VM size (witch is currently about 30 MB), ofc this is not for all cases.
bartblast
Yeah, I think it would be helpful, but for more complex cases than reactive UI. Maybe something like client-side file processing to relieve the server resources? In case processes are needed, the Hologram commands can be used that handle asynchronous server code (where you basically run on BEAM) and they have very low latency since they go through websockets similarly to LiveView events. Btw do you have ideas on how BEAM capabilities can be used on the client side, besides file processing that I mentioned?
D4no0
I think the potential is unlimited, you basically have the full-blown elixir/erlang capabilities at your disposal. You can write the part that is responsible for interaction with dom (from what I remember webassembly standard doesn’t include this) and write entire frontend applications in elixir, not having to go back to JS ever again.
Liveview is great, the biggest selling point is that you don’t have to write JS, however it has limitations for more involved applications, and currently people end up using a frameworks like react to solve this limitation, which is not something I enjoy doing.
For more possible features, think of applications as the native ones we use, the only difference is that it lives in browser.
bartblast
I completely agree about the benefits of using Elixir on the client. That’s precisely what Hologram aims to achieve, with state management on the client and full Elixir syntax coverage. My point is that I’m currently exploring use cases for Elixir’s concurrency in the context of UI on the client. Given that the DOM operates on a separate single thread and WebAssembly cannot directly access it, there may be limited advantages, aside from potentially enabling background file processing. However, I acknowledge that I could be mistaken in this regard, and I’m seeking other potential use cases and opinions.
djaouen
Disregard. I got Lunatic ( https://lunatic.solutions/ ) confused with Lumen, which was rebranded as Firefly. Carry on.