Lil'Nish
MModular
•Created by Lil'Nish on 12/26/2024 in #questions
Strange CLI Hang
The Problem
Spoiler: I fixed the bug. Now I’m just trying to figure out what exactly was going on under the hood to cause it.
So, here’s the setup: running the
magic
CLI with commands like:
would just hang. Like, forever. Adding -v
didn’t help—no extra logs, no hints, just silence. Strangely enough, the same command worked fine on another computer, so clearly, it wasn’t magic
itself but something about this specific machine. Time to dig.
Debugging the Problem
After using strace
to trace the syscalls from magic
, a pattern started to emerge:
- It was constantly making calls related to network interfaces, sockets, and futex (thread synchronization).
- A bunch of processes were stuck on FUTEX_WAIT
, and there were many interactions with netlink
(the thing Linux uses to mess with networking stuff).
- Then I noticed something specific: all the netlink traffic seemed tied to a virtual interface called tailscale0
.
Tailscale (a VPN thing) was running on the machine, so I stopped it as a test:
And guess what? Problem solved.
Question
So, does anyone know why Tailscale and magic
got into this weird interaction? What’s happening under the hood that makes Tailscale’s setup interfere like this?
If this turns out to be a bug on the magic side, I'll file a github issue6 replies
MModular
•Created by Lil'Nish on 11/16/2024 in #questions
Vale Status
Full disclosure, this is a little off topic and is only tangentially related to Mojo.
There was a nascent language I was following a little while ago called Vale, trying to revolutionize memory management using generational references. It's GitHub hadn't had a commit in a while, so I figured it was a dead project and forgot about it. As fate would have it, Evan Ovadia (the speaker at the most recent Mojo community meeting), turns out to be the creator of Vale. Is anyone aware of whether he's still working on Vale or if he's since decided to go all in on Mojo?
5 replies
MModular
•Created by Lil'Nish on 11/15/2024 in #questions
Clarification on the Meaning of Python Superset
This question references this commit: https://github.com/modularml/mojo/commit/cb307d0f57bb07b37528e8f6e2c859a1e07db941
It remove all references to Mojo being a "superset of python" and changed the language to sate that Mojo is "the best way to extent python".
Has Modular officially conifrmed that Mojo will not be a superset of Python?
5 replies
MModular
•Created by Lil'Nish on 10/22/2024 in #questions
Could Mojo be the first all purpose language?
All languages have their own strengths and weaknesses, which is why we have so many — to cover all our bases. I'm wondering if Mojo could realistically become an "all-purpose" language — not as the default for every use case, but as a strong contender in every domain.
In my mind, there are 3 core requirements for a language to be truly all-purpose:
Speed — to ensure performance-critical cases don't default to C/C++/Rust.
Safety — to prevent Rust from being the go-to in security-sensitive environments.
Ease of use — to compete with Python or Go in scenarios like scripting or teaching.
Ecosystem and tooling matter, but these tend to grow with adoption, whereas the above three characteristics are more fundamental to the language itself.
No current language truly nails all three — Rust is close with 2/3, but its complexity holds it back from the ease-of-use aspect. Its arguably not even possible to achieve all three at the same time: memory management alone requires making a decision between speed (manual management / borrow checker) and ease of use (GC / ARC).
However, Mojo's dual approach (Python mode for ease and saftey and Rust-like features like fn and the borrow checker for speed and safety) seems to come closest to striking this balance.
Could Mojo actually evolve into an all-purpose language? Or would the inevitable trade-offs (potential complexity or C++ like feature bloat) make that impractical? Is it even desirable to have an all-purpose language in the first place?
I'd love to hear everyone's thoughts!
15 replies