Earlier quoted context omitted.
How long do you think it takes to make a new language?
How long do you think it takes to release a working prototype when you already have one?
My least favorite Rust type
71–80 of 298 posts
Re: My least favorite Rust type
#72Re: My least favorite Rust type
#73Earlier quoted context omitted.
Goodness, the lack of any compiler at all would disqualify a lot of cutting-edge academic research on programming languages, much less the existence of a publically-available compiler. Often all you get is a diagram full of (basically) inscrutable derivation rules.
And rightfully so. In spite of all of the theory going into those languages, the one thing they're all missing is practice.
Re: My least favorite Rust type
#74Earlier quoted context omitted.
He demonstrably has a working compiler and programming language. Calling it a "fantasy" just because he has not given you full access to the source is plain incorrect. He streams so much of his development work on the compiler that a determined party could probably reproduce it by just copying the text from his text editor. He streams so much of his game development using the compiler that it obviously and unambiguou…
I can make a python script that prints out stuff while I'm streaming, too. He hasn't demonstrated squat. But, let's say he does have a working compiler. It's very probable that he does. Why doesn't he release it, then? Well you see, the only way it's possible to really effectively criticize a programming language is to use it. By not releasing the compiler, he avoids real criticism. So, no, I don't take him seriously…
However I don't think there is any need to suggest he's a "fraud", the language is "fantasy" or faked for the stream. I also don't think that there is any need for him to release the compiler.
Have you considered that Jai is just a hobby project? Many programmers choose writing a programming language as a hobby project so why shouldn't he? Releasing a compiler to the public and having everyone demand that he also maintains it for every corner case they have is a lot less fun than just working on it for your own scope and showing it off/discussing it in your stream.
Re: My least favorite Rust type
#75Re: My least favorite Rust type
#76I feel like this is an example of what Jonathan Blow calls a "Big Idea" or a "100% solution". His thesis is that when you make a feature of a language too abstract and usable in many different contexts, eventually there will be so many corner cases that the result will almost certainly be clunky and full of footguns. He claims that language designers should aim for "80% solutions" instead, which cover most common usa…
This is easy enough to say, and indeed I do think it's a good approach, but the problem is identifying that 80% in the first place. The reason that language designers tend to favor general approaches is because they presume not to know how people are going to want to use certain things. It's an approach borne out of humility, not ideology. You need time observing how things are used in the wild before you can identify which 20% not to support; get this wrong and people will be more frustrated than if you had saddled them with the baggage of the general approach.
In the specific case of Rust's Range API, we can observe this problem acutely. Rust hugely benefited from the period between 2011 and 2015 where it was able to iterate aggressively on design and observe what opinionated stances were worthwhile. But the Range type came relatively late to the party: it was devised and stabilized only months before 1.0 as a replacement for an old, hardcoded slicing syntax that worked with no types other than plain integers, and only in very limited syntactic contexts. With little time to observe use in the wild (and with all the other madness and work that was going on in the run-up to 1.0), the reasonable approach was to not over-constrain. Now that we have experience with it one could devise ways to do it better, certainly, and with luck Rust may be able to move the type in that direction, but other than that it may just be a lesson for those languages that are yet to come.
Re: My least favorite Rust type
#77Earlier quoted context omitted.
The issue is that he uses that platform to criticize other languages. That's my root problem, here. If all he did was write code, then nobody would care.
Ok, would you be happier about it if he wrote blog posts and never came up with Jai at all?
Re: My least favorite Rust type
#78Re: My least favorite Rust type
#79Earlier quoted context omitted.
And rightfully so. In spite of all of the theory going into those languages, the one thing they're all missing is practice.
Yes, but now you've shifted the goalposts, because I think most people would generally consider PL researchers to have an understanding of programming language design.
Johnathan Blow is a game designer, though.
Re: My least favorite Rust type
#80Earlier quoted context omitted.
I can make a python script that prints out stuff while I'm streaming, too. He hasn't demonstrated squat. But, let's say he does have a working compiler. It's very probable that he does. Why doesn't he release it, then? Well you see, the only way it's possible to really effectively criticize a programming language is to use it. By not releasing the compiler, he avoids real criticism. So, no, I don't take him seriously…
I'm not a PL designer, but from everything I've heard him say regarding PL design, I agree with your assessment that one probably shouldn't take PL design advice from him (or at the least take them with a grain of salt). However I don't think there is any need to suggest he's a "fraud", the language is "fantasy" or faked for the stream. I also don't think that there is any need for him to release the compiler. Have y…
But they've got something his language doesn't.