It may not phone home now, but it can do it tomorrow, or it can in be enabled and immediately disabled in some minor releases.
Even if people didn't catch those shenanigans immediately it will be evident from the commit history. I'd say opensource forces certain discipline.
Also there is point of rugpull, or the product is getting cancelled. Few people will step up to maintain it; atleast until most users migrate to a different product.
As a paying kagi customer that uses orion, I’ll just point out that there’s a reason “enshittification” was the word of the year recently.
Much of it had to do with testimony during the Google antitrust trial. It’s hard to understand how Kagi wouldn’t be ultra-sensitive to guaranteeing there will be escape hatches if it enshittifies. (Your funding model is a great first step!)
No, the VM is functional and immutable so you cannot implement things like `while` on it efficiently. It is highly optimised for the functional immutable style of programming.
I think that's going to be hard to find, depending on your definition of 'regular', tbh.
The BEAM's grown up along with Erlang and so the culture and optimisations are built up all around function application, list processing, recursion, and pattern matching etc.
https://github.com/llaisdy/beam_languages is a decent list of the diverse languages that have been implemented on it, but nothing quite like 'regular for and while loops'.
The BEAM itself is a plain aul register machine though, so it could be done!
Just write 'for' and 'while' yourself if you need it. Here is ‘for’ in Elm/Gren:
for : Int -> Int -> Int -> (Int -> msg) -> List msg
for start stop step action =
let
range =
if step > 0
then List.range start (step) (stop - 1)
else if step < 0
then List.range stop (abs step) (start - 1) |> List.reverse
else []
in
List.map action range
It should be just as trivial to write this in Gleam.
Should I move away from c++ ? Anyone has done this? Everytime I try to do this I get dropped citing I lack "professional" webdev experience. Thanks in advance.
reply