17,736 reputation
43370
bio website StackOverflow.Com/users/2988
location Karlsruhe, Germany
age 35
visits member for 3 years, 10 months
seen 6 hours ago

Not a software developer in the sense that I write software as part of my job or otherwise get paid to do so. Also, not a developer in the sense that I write software for others.

I write software for myself, often for no other reason than that I want to. (What I call recreational programming.)

Actually, I’m currently forcibly confined to recreational programming, as I’m looking for a job.

My current go-to language is Ruby, but I’m interested in all sorts of other languages as well: Newspeak, Seph, Ioke, Self, Io, Slate, Reia, Cobra, Fortress, Sapphire, Haskell, Scala, Clojure, Racket, Go, Fancy, Poison, and many more.


14h
comment Why was the first compiler written before the first interpreter?
In fact, I heard that McCarthy believed LISP to be unimplementable. It was Russell who realized that McCarthy's universal function from the LISP manual a) was an interpreter and b) was implementable.
Jul
26
answered What are some version control systems based on different concepts than Git, Mercurial etc?
Jul
26
answered What are some version control systems based on different concepts than Git, Mercurial etc?
Jul
25
awarded  Good Answer
Jul
25
awarded  Nice Answer
Jul
25
comment Why would programmers ignore ISO standards?
The great thing about standards is that there are so many to choose from!
Jul
25
answered Why would programmers ignore ISO standards?
Jul
25
comment Can I “just” create my own media type for a proprietary web/application communication
Not only will they not accept unknown protocols, they can't! If the protocol is unknown, then the browser by definition doesn't even know what to send and to receive or even how to send.
Jul
25
reviewed Approve suggested edit on Is immutability very worthwhile when there is no concurrency?
Jul
23
comment Let's Build A Compiler: is this book modern enough?
@Telastyn: 50 years ago, Supercompilation didn't exist, for example, and SC is one of the most powerful optimization techniques in existence. In fact, it subsumes pretty much all other optimization techniques from deforestation, defunctionalization, stream fusion, list fusion, map fusion, program fusion to partial evaluation and more.
Jul
23
comment Let's Build A Compiler: is this book modern enough?
@Doval: If you read the papers "An object oriented approach to constructing recursive descent parsers" or "An object-oriented LL(1) parser generator" or look at Gilad Bracha's parser combinator library for Newspeak, you will notice that they look very different from the way those are usually presented in a typical ADT-oriented, procedural or functional compiler book, even when that book uses Java or C++ as its implementation language!
Jul
23
comment Writing a simple code validator
And of course, the initial premise of the initial premise is also incorrect: not all programming languages can be described by EBNF, only those whose syntax is context-free can.
Jul
23
comment How are mixins or traits better than plain multiple inheritance?
Ruby and PHP didn't introduce mixins and traits. Mixins were introduced in Flavors (1980), Traits were introduced in Squeak Smalltalk (2001). Flavors was the very first object-oriented language with multiple inheritance, and it used mixins. C++ only got multiple inheritance in version 2.0, which was released in 1989, 9 years after Flavors. So, the question should be: Flavors has plain mixins, but some languages like C++ introduce strange syntax to do the same thing and call it multiple inheritance.
Jul
21
awarded  Notable Question
Jul
21
revised If we could get a file's binary form, would this method of file compression work?
Incorporate @jk's comment about the original being contained in the compressed data into the answer
Jul
21
answered If we could get a file's binary form, would this method of file compression work?
Jul
18
comment Why does C have no competitors in low level stuff?
To be picky: Unix was written in assembly, and then when it came time to port it to another architecture, the creators of Unix created C to make Unix easier to port. So, Unix wasn't written in C, rather C was written around Unix, so to speak.
Jul
18
comment Why are floats called “real numbers” in some languages?
Many languages also habe a type called "integer" which cannot represent all integers.
Jul
17
comment What's the shortest generating one-way hash algorithm?
The shortest ID is 24 characters. Any shorter than that and it cannot possibly be unique per the Pigeonhole Principle.
Jul
15
comment How to operate a computer without an operating system?
@Dunk: I very much like your first sentence. Some people make it sound like operating systems are magical creatures that escape comprehending by mere mortals. They are not. My favorite definition of operating system is by Dan Ingalls in the Design Principles Behind Smalltalk: "An operating system is a collection of things that don't fit into a language. There shouldn't be one."