Golang Object Oriented Design
Composition not inheritance, polymorphism through interfaces, and packages for namespacing.
The latest blog posts to take off on Hacker News. 3,709 posts.
Composition not inheritance, polymorphism through interfaces, and packages for namespacing.
This is a post that I didn’t want to write. Actually, it’s a post that I still don’t want to write. But I find myself in a situation where I feel that I have to say something. So I’m going to just ope
A trampoline is a loop that iteratively invokes thunk -returning functions ( continuation-passing style ). A single trampoline is sufficient to express all control transfers of a program; a program so expressed is trampolined, or in trampolined style; converting a program to trampolined style is trampolining…
I just heard that core.typed is ready for production. Which is great timing because I'm working with a new team and they like types.
The “Sufficiently Clever Compiler” has become something of a trope in the Lisp community: the mythical beast that promises language and interface designers near-unlimited freedom, and leaves their output in a performance lurch by its non-appearance. A few years ago, I was young enough to join a research project to…
I hate the Pumping Lemma for regular languages. It’s a complicated way to express an idea that is fundamentally very simple, and it isn’t even a very good way to prove that a language is not regula…
Among the many proposed solutions, one of them strikes me as particularly clean: "asynchronous wait" or "wait and defer". iced-coffee-script had this a while ago. Kal just debuted with an identical solution, only differing in syntax. Supposedly LiveScript supports this with "backcalls" .
I have seen this question come up a few times, and unfortunately, people usually don't find an answer, give up, and don't test their source maps. However, testing source maps isn't too hard if you are using Node.js and the mozilla/source-map library. If you aren't using Node.js and the mozilla/source-map library, you…
Alex Clemmer is a computer programmer. Other programmers love Alex, excitedly describing him as "employed here" and "the boss's son".
A tour of 3 potentially-very-useful languages that have been submitted to learnxinyminutes.
One of the problems with modern computer technology: programmers don’t learn from the great masters. There is such a thing as a Beethoven or Mozart of software design. Modern programmers seem…
Today I want to share a wonderful experience. I'm professor of introductory programming in two years at Florentino Ameghino School and one...
The crucial part is IR. It's a common language that sits between the high-level program and the low-level backend . IR is used to express high level concepts and is specific enough that any backend can produce a fast machine code.
I've been spending a lot of time in JavaScript land lately. It's not totally unexpected – when I first applied for a job with Mozilla, I was warned only semi-jokingly that "they hire all the best Python programmers and then force them to write JavaScript". I've no deep love or hate for it as a language, but JavaScript…
Aditya Bhargava's personal blog.
It seems like I can’t spend five minutes on reddit these days without someone playing the JS-is-Scheme is card . I see everything from the innocuous, “JavaScript has a lot in common with Scheme”, all the way up to, “JavaScript is basically Scheme.” This is basically crazy. Or, at least it has a lot in common with…
The original working title for this post was "Go is hostile to developers". This was named at a time of extreme frustration, and it didn't ...
This is a technical review of Haskell and why software developers should care about functional programming. For a non-technical review of why your company should be using Haskell you might want to watch this introduction to Haskell video by FP Complete.