From Design Patterns to Category Theory (2017)
How do you design good abstractions? By using abstractions that already exist.
The latest blog posts to take off on Hacker News. 5,636 posts.
How do you design good abstractions? By using abstractions that already exist.
Python might be hard to install on Windows, but with the latest Windows 10 update, you can type "python" to find it in the Microsoft Store.
We are very proud to announce Nim version 0.20. This is a massive release, both literally and figuratively. It contains more than 1,000 commits and it marks our release candidate for version 1.0!
Part 1 - The Pitch
May 31, 2019 @ 6:29 am · Filed by Mark Liberman under Language and culture , Phonetics and phonology
Sometimes the best features of Perl — and even more so of Perl 6 — are found by asking yourself, “I wonder if this’ll work?” and then findin...
When designing or, in some cases, implementing a programming language with built-in support for Unicode strings, an important decision must be made about how to represent or encode those strings in memory. Not all representations are equal, and there are trade-offs between different choices.
Today we're happy to announce the availability of TypeScript 3.5! If you're new to TypeScript, it's a language that builds on JavaScript that adds
In my previous post I said that the lang team would be making our final decision about the syntax of the await operator in the May 23 meeting. That was last Thursday, and we did reach a decision. In brief, we decided to go forward with the preliminary proposal I outlined earlier: a postfix dot syntax, future.await…
Inspirations & experiments, mainly about denotative/functional programming in Haskell
A whirlwind tour of object-oriented code in F#
Many people struggled with my article about Alan Kay and OO programming, so let's talk about the main objection.
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
Update: You can find a newer version of this article on Python Morsels. In every Intro to Python class I teach, there’s always at least one “how...
Dr. Alan Kay invented the term "OO Programming", but he states that modern OO programming isn't what he meant. What did he mean?
The order that our mind imagines is like a net, or like a ladder, built to attain something. But afterward you must throw the ladder away, because you discover that, even if it was useful, it was meaningless.
Beautiful Racket
If you've ever hit the tab key while typing commands in the shell, you are familiar with the value of shell completions. Bash has some default completion behavior, which is why you can type hel<TAB> and end up with help . It is also possible to add additional completion scripts which define the completion behavior for…
PHP isn't the same old crappy language it was ten years ago
The official home of the Erlang Programming Language
Prefer f(void) in C to potentially save a 2B instruction per function call when targeting x86_64 as a micro-optimization. -Wstrict-prototypes can help. Doesn’t matter for C++.
May 12, 2019 @ 4:36 am · Filed by Victor Mair under Language and philosophy , Logic , This blogging life
Maarten van Emden just posted a terrific and authoritative account of one episode in the history of Prolog under the title “Who Killed Prolog” (and, tantalizingly, promises another epis…
The main reasons Go makes it easier (than Java or Python) to write correct, clear and efficient code are discussed in this comprehensive report by an expert Go and Java developer.