Live data from Hacker News

Mojo: Ownership and lifetime checks deep dive with Chris Lattner [video]

youtube.com

31–37 of 37 posts

Re: Mojo: Ownership and lifetime checks deep dive with Chris Lattner [video]

#31
post #18

I am really enjoying the language, the level of improvement over the last few months has been amazing. At work all our heterogeneous compute needs are implemented using C++/CUDA. I've been exploring new languages for the type of work we do on and off over the last few years: Julia, Rust, D, Chapel, and Mojo. It seems the only new languages serious about native heterogeneous compute are: Julia, Chapel, and Mojo. Of th…

Most likely because HPC isn't cool for TikTok videos, by language influencers. As CERN alumni, and language nerd, I find Chapel quite cool.

eech. i don’t want to use a language made by people who take advice from, let alone watch, tiktok influencers.

Re: Mojo: Ownership and lifetime checks deep dive with Chris Lattner [video]

#32
post #21

Earlier quoted context omitted.

So they can optimize code. The main theme is addressing two-language problem (single high & low level language). They want uniform language for cpu/gpu/whatever-pu. They can't have garbage collection. They need strict dataflow analysis with precise destruction points.

Do you see my point that they are trying to do everything?

They're not trying to do everything. They don't care about stuff like Hindley–Milner inference, logic programming, relational algebra integration, tsx like html integration, functional purity, algebraic effects and dozens of other concepts. They just care about extending python so you don't need to use ffi to jump into c++/cuda for performance because language already supports high performance constructs.

Re: Mojo: Ownership and lifetime checks deep dive with Chris Lattner [video]

#33
post #30

Earlier quoted context omitted.

> something like the expressiveness of Python combined with the speed and safety of Rust. Isn't that problem already solved? We already have Nim[0] that is memory-safe language with Python-esque syntax and performance of C. Yeah, it's not an extension of Python as Mojo claims to be; but I'd pick a mature language with proven design for my projects over something that's not even out yet. [0]- http://nim-lang.org

Nim is not memory safe and doesn't technically claim to be. What they claim is to provide memory safe features, but then so does C++ and a lot of other languages.

I didn't understand what you meant. Nim has GC by default. It does support pointers, but then Rust does too.

Re: Mojo: Ownership and lifetime checks deep dive with Chris Lattner [video]

#34
post #18

Earlier quoted context omitted.

Most likely because HPC isn't cool for TikTok videos, by language influencers. As CERN alumni, and language nerd, I find Chapel quite cool.

eech. i don’t want to use a language made by people who take advice from, let alone watch, tiktok influencers.

Bad news, you aren't having many left, given how much content being made across social media platforms, not only Tiktok.

Re: Mojo: Ownership and lifetime checks deep dive with Chris Lattner [video]

#35
post #25

Earlier quoted context omitted.

> If you want a language that gives you nice, performant code on your first attempt, Julia is always a decent option. If Julia hasn't taken off yet (which I am very sad about), I'm not sure why Mojo would. I'd rather have more resources invested into Julia.

Julia has to bootstrap an ecosystem. If mojo can borrow all of the successful Python libraries, that is worth a lot. Still an enormous uphill battle, but slightly more tractable. Regardless, it is a rough place to be - for a staggering number of uses, Python is fast enough. The organizations who absolutely require top tier performance already have the ability to use FFI. Instagram runs on Django and I believe is stil…

OTOH,Rust has shown that there is a reasonable size market for performant, safe system programming languages. I suspect it is being held back from larger adoption due to its complexity. I see an opportunity for Mojo to get into that, with a simpler model and ability to gradually opt in to more complex but high performance parts of the language.

Mojo has a good chance to target Python programmers who would have gone for Go or Java for better performance, and C++ programmers who need something like Rust, but simpler.

Re: Mojo: Ownership and lifetime checks deep dive with Chris Lattner [video]

#36
post #25

Earlier quoted context omitted.

As someone who has been playing around with (and enjoying) Mojo, I have my doubts about how useful Mojo will end up being for your average scientist. You can't get performant code out of Mojo if you're not willing to learn some deeper programming concepts like SIMD or tiling. I don't have the exact quote on hand, but in the Mojo Discord, Chris Latner explicitly said he wants no "compiler magic" in Mojo. With that ide…

> If you want a language that gives you nice, performant code on your first attempt, Julia is always a decent option. If Julia hasn't taken off yet (which I am very sad about), I'm not sure why Mojo would. I'd rather have more resources invested into Julia.

Depends on what one means regarding taking off, several industries are quite happy with it.

https://info.juliahub.com/case-studies

Any language designer would be crying of joy if their language had so few users as Julia is currently having.

Re: Mojo: Ownership and lifetime checks deep dive with Chris Lattner [video]

#37
post #15

Earlier quoted context omitted.

I feel the opposite, they really are focused on being a language that's great for AI and heterogeneous compute, since that's what Modular is focused on. But the features are attractive for other use cases, it has access to MLIR, compile time metaprogramming, easy and ergonomic SIMD, and soon GPU support.

Okay great. Why does AI and heterogeneous compute need ownership and lifetime checks again? These are really needed for low level pointer heavy code.

Because writing a garbage collector to run on graphics cards is a thankless PhD class problem, even if technically possible, no one will adopt it.
Post reply on HN