31 points adamnemecek 22 hours ago 11 comments

kennykartman 21 hours ago | parent

I knew that makepad devs were focused on build times, but didn't imagine this much!

tontinton 50 minutes ago | parent

The world really needs something like this, but why such a slop UI website.

Just tell Opus 5.5 to "redesign the UI to not look like AI slop, design it like a human expert designer would" at bare minimum.

Sytten 42 minutes ago | parent

We have had good experience with kache so far to speedup builds in CI and local

n_u 39 minutes ago | parent

How does it compare to sccache ?

jtwaleson 19 minutes ago | parent

Kache caches more, and is path independent, so can be shared between worktrees.

faresahmed 34 minutes ago | parent

Somehow always, someone somewhere rediscovers that cutting down the time between coding and code execution makes our lives easier and to a degree be able to write better programs.

Perhaps the earliest and best attempt was Lisp's computational model. Since then, the idea manifested itself again[1], again[2], and again[3] in different forms.

[1]: Inventing on Principle, Bret Victor: https://www.youtube.com/watch?v=PUv66718DII

[2]: REPL-Driven Development, Stuart Halloway: https://vimeo.com/223309989

[3]: LIVE, Live Programming workshop: https://liveprog.org/

Capricorn2481 30 minutes ago | parent

This implies that Rust build times haven't been a topic of discussion for the last 10 years. They don't have long build times just for funsies, Rust is completely different from Lisp.

faresahmed 19 minutes ago | parent

I beg to differ. It's not that Rust is completely different from Lisp. PL writers get so caught up with their 'killer feature' which in the case of Rust is the borrow checker, that they completely abandon the other 50% which is the environment.

If we stopped treating the compiler as a one-shot program, we could theoretically shorten this edit-build-test loop by 99%.

LoganDark 6 minutes ago | parent

The borrow checker is an example of a certain kind of reasoning that Rust benefits from. There's a reason a Lisp can be inspected and rewritten as the process runs, and it's the same thing that makes Rust difficult to rewrite in the same way. Not sure the exact term for it, but it's very easy to have profound nonlocal effects, for example with TAIT (type alias impl trait).

Surac 25 minutes ago | parent

moving errors from compile time to runtime is good?

jtwaleson 18 minutes ago | parent

For some use cases, like speeding up local development, it's an excellent trade off.