People need to stop taking language design advice from language creators whose only accomplishment is that their language got popular.
People need to stop taking language design advice from language creators whose only accomplishment is that their language got popular.
Just published my end-of-year overview. 2026 is the year I stop outlining and start building.
Would love to have a conversation with anyone interested in the topic!
https://warmsignull.github.io/posts/toward-a-unified-general-language-overview/
#programming #languagedesign #compilers #systemsprogramming #metaprogramming #introspection #opensource #buildinpublic
@CGM I see good in this: new and useful powers for #Python.
I see bad in this: a thing we knew about for a long time, present elsewhere, why so long coming?
I see neutral in this: things that can be provided by libraries instead of directly in the language should absolutely start in a library. If they earn a spot in the language itself, great.
I see sad in this: these words make it sound like #TCL is ahead and Python is behind overall. That doesn’t match my opinion or personal experience. Absolutely agree on this particular feature. And also I have stated many times "there is no best language", just choices more or less cost-effective for the problem at hand.
For the problems I’ve faced, with the tools I’ve had available, Python has been a more cost-effective choice than TCL the majority of the time. From your words, I took that you prefer TCL. Nothing wrong with that!
After thought (thought I didn’t plan to put into it), I don’t think "NULL coalescing" and "NULL chaining" needs to be built in to the #ProgrammingLanguage, and here’s why:
* If you’re getting just one thing, the getter can take an optional default result value. #Python works like this in `getattr`, `.get`, and things of that nature. Having an operator for this is fine, but it seems obvious you don’t **need** the language to do it for you.
* If you’re walking down a long uncertain chain, I have two arguments:
* Knowing the path that leads down into the object to the specific thing you want kinda sounds like an #Encapsulation violation. Why do you know so much about the internals of this object. If this deep property is important, maybe it’s part of the interface of the top-level thing. Maybe this is just bad design.
* Diving deeply involves lots of possibilities: possible defaults, actual methods of finding the named thing (allow inheritance? Is it an attribute? Is it an element of an array? Etc), did you want to just stop or raise an exception?Does saying what you want really come out to a simple, clean, understandable, one-line, expression?
Maybe I’m biased because I don’t have these operators in my day-to-day language; and also can’t remember hitting this situation. And I can certainly see such operators could be helpful. I’m not a language designer. But from my actual experience, in this case, the juice just isn’t worth the squeeze.
Một học sinh trung học đã tạo ra ngôn ngữ lập trình thử nghiệm nhỏ tên Miracl! Hiện tại mới là phiên bản 0.1.0, có thể phân tích và chạy các biểu thức cơ bản. Mọi góp ý đều được hoan nghênh! 😊
#programming #languagedesign #sideproject #Miracl #lậptrình #ngônngữlậptrình #dựán
https://www.reddit.com/r/SideProject/comments/1ovldke/i_created_a_tiny_experimental_programming/
This is a freaking awesome lecture.
Programming for All: A Feminist Case for Language Design
https://on.acm.org/t/programming-for-all-a-feminist-case-for-language-design/3398
Title: Programming for All: A Feminist Case for Language Design Date: June 26, 2025 Duration: 1HR SPEAKER Felienne Hermans, Professor at Vrije Universiteit Amsterdam Registration Link Programming Language Pragmatics, Third Edition (free Percipio book for ACM Members with Skills Bundle) Programming Language Environment (free Percipio video for ACM Members with Skills Bundle) Secure Programming Language Environments (free Percipio course for ACM Members with Skills Bundle) Build Your Own ...