←back to thread

201 points generichuman | 1 comments | | HN request time: 0.269s | source
Show context
James_K ◴[] No.43552753[source]
Here's a thought: just distribute source code. ABI issues should be mostly fixed. Most computers can compile source code fast enough for the user not to notice and cache the results so that it's never a problem again. If you want optimised code, you can do a source to source optimisation then zip and minify the file. You could compile such a library to approximately native speeds without much user-end lag using modern JIT methods, and maybe even run LTO in a background thread so that the exectuables outdo dynamically linked ones.
replies(3): >>43552904 #>>43553064 #>>43553077 #
RedShift1 ◴[] No.43552904[source]
I hate compiling. 9/10 something goes wrong. Sometimes I can fix it, other times I just abandon the effort and use something else. These days I just use packages or docker images and if that doesn't work out I'm moving on, ain't nobody got time for this. You really can't expect people who just want to use their computers and don't even know what a compiler is to get involved in a process like that.
replies(2): >>43552959 #>>43554263 #
ses1984 ◴[] No.43552959[source]
No, end users need not get involved, it could/should be handled by the operating system.
replies(1): >>43553292 #
HKH2 ◴[] No.43553292[source]
Gentoo? Compiling big packages takes ages.
replies(3): >>43554759 #>>43555414 #>>43560757 #
1. James_K ◴[] No.43560757[source]
Not Gentoo. The system I'm suggesting is one where you replace the linker with one which accepts a platform agnostic assembly code with similar semantics to C, and perhaps some additional tools for stack traversal to allow the implementation of garbage collected languages and exceptions. Compiling would be fast because the code you distribute would have already had optimisations applied to it in a pre-compilation step. It would also be automatic in the same way the present linker system is automatic.