4 ms·
It looks like self-hosting is still WIP. Do I have that right? * https://git.sr.ht/~sircmpwn/hare/tree/master/item/cmd/harec * https://git.sr.ht/~sircmpwn/
by eatonphil 5y ago
It looks like self-hosting is still WIP. Do I have that right?
* https://git.sr.ht/~sircmpwn/hare/tree/master/item/cmd/harec
* https://git.sr.ht/~sircmpwn/hare/tree/master/item/hare
* https://harelang.org/blog/2021-03-14-a-self-hosting-toolchain/
- turminal 5y agoYes There is one more significant (but not user-visible) change planned for the language before we continue working on that.
- eatonphil 5y agoWhat is that?
- turminal 5y agoCode dealing with tagged union matching is going to be completely rewritten and support added for match exhaustiveness checks and matching on pointers to tagged unions without copying the tagged union and its values. The ability to do the latter is expected to result in a significant performance improvement and stack usage decrease.
- ncmncm 5y agoSelf-hosting is a very last-millennium form of wankage. Back then, a compiler was a pretty significant program, and compiler construction tools weren't mature. Nowadays, self-hosting your compiler doesn't demonstrate much of anything. It takes a lot more than a compiler to prove anything meaningful about your language. Time spent on self-hosting is mostly just time wasted. It mainly suggests you were not really serious. Make a front end for LLVM, and get on with things.
- eatonphil 5y ago> Self-hosting is a very last-millennium form of wankage You're reading way more into my comment than I wrote. I asked a question.
- ncmncm 5y agoI'm not reading anything into it at all.
- kristoff_it 5y agoYou are missing one subtle but important flaw in your dismissal: not self-hosting means that your compiler will only be developed by people willing to write C/C++ code, which has practical implications as well as taking away some of the punch from your effort to improve on the status quo.
- ncmncm 5y agoSelf-hosting will only distract you from any "effort to improve on the status quo". And, do you really want people working on your compiler who can't even cope with C++? (BTW: There is no such language as C/C++. Clang and Gcc are both coded in C++.) Your new language desperately needs libraries that bring it up to a level of practical usefulness. A compiler front end is about the least-useful code you could write in it. Taking a long detour for that says something, but it is the wrong thing.
- kristoff_it 5y ago> do you really want people working on your compiler who can't even cope with C++? That's the whole point of creating a new programming language.
- ncmncm 5y agoIf you are serious, you want the people working on your compiler to have been doing paid work, and to have demonstrated some capacity for abstract thought. Your language might not be meant for those people; Go and Java, famously, weren't, but demonstrated a language for "the rest" had a ready audience.