| ▲ | faresahmed a day ago | |||||||||||||
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%. | ||||||||||||||
| ▲ | shikck200 a day ago | parent | next [-] | |||||||||||||
Rust's killer features is not "the borrow checker". That idea was just stolen from Cyclone. Rust is basically a semi ml kind of language in the c++ space. I dont see many "killer features" in rust outside the saner type system. Its basically a better language for software you write in C at the cost of horrible compile times. | ||||||||||||||
| ||||||||||||||
| ▲ | LoganDark a day ago | parent | prev | next [-] | |||||||||||||
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). | ||||||||||||||
| ||||||||||||||
| ▲ | Ar-Curunir a day ago | parent | prev [-] | |||||||||||||
rustc is not really a one-shot program! Incremental computation is a big part of rustc ! | ||||||||||||||