Reputation
10,634
Next privilege 15,000 Rep.
Protect questions
Badges
9 45 105
Newest
 Nice Answer
Impact
~616k people reached

Jan
16
awarded  Notable Question
Jan
12
revised Suggestions for structuring complex json structures?
Fixed typo.
Jan
9
comment Is declarative programming overrated?
I have quite some experience in Haskell and Scheme, and I find programming in C++ pretty cumbersome. The only reason I can see to keep programming in C++ is execution (not development) speed and the availability of some particular library (e.g. Qt). IMO it is better to learn declarative programming in a language that better supports it and then try to apply it in C++ or Java: trying to do both steps (learn and backport) at once is IMO more difficult.
Jan
8
revised If you can use def to redefine variables how is that considered immutable?
Improved explanation
Jan
8
comment Can the Clojure set and maps syntax be added to other Lisp dialects?
"but I wouldn't expect any Lisp code more complicated than (+ 1 2) to be portable to all implementations": I installed four different open source implementations of Common Lisp and all of them ran Slime, Quicklisp, and other tools without a glitch.
Jan
8
answered If you can use def to redefine variables how is that considered immutable?
Jan
3
comment Regular syntax — what does it mean?
"The author you've quoted is most likely claiming that the Go language has no ambiguities like this, and thus can be parsed correctly without a symbol table.": This means that the syntax of the language can be described by a context-free grammar, whereas C++ is context-sensitive.
Dec
31
comment Disadvantages of vertical user stories
@c_maker: Of course I can (and I do so) but as far as I understand this does not correspond to the concept of a vertical user story.
Dec
31
comment Efficient algorithm to merge n successive sorted arrays in place
Is the tree structure you have in mind some sort of heap?
Dec
30
comment Disadvantages of vertical user stories
One disadvantage I have encountered is that it can be difficult to try out an idea only as a proof of concept because the methodology forces you to implement all the layers around that idea so that at the end of the iteration you have something shippable. So, if the idea you wanted to try out turns out to be bad, you have to throw away all the nice work you did on all layers while in order to test your idea it might have been sufficient to work on one layer or two, and you could have decided to complete the implementation only later.
Dec
30
comment How can we be certain that the lower components of computer programming like compilers, assemblers, machine instructions, etc. are flawless?
+1 for mentioning format methods and their limitations.
Dec
30
comment Deterministic function shows undeterministic behaviour, how is this possible?
+1 for mentioning uninitialized variables.
Dec
30
comment How can we be certain that the lower components of computer programming like compilers, assemblers, machine instructions, etc. are flawless?
Many comments and answers only mention testing but formal verification is also used. Some languages and compilers are designed with formal verification in mind (see e.g. en.wikipedia.org/wiki/SPARK_%28programming_language%29). The difference is that testing verifies that certain properties of the software hold for some specific input data, whereas formal methods prove that certain properties hold for any possible input data. See also en.wikipedia.org/wiki/Formal_methods
Dec
29
comment How can we be certain that the lower components of computer programming like compilers, assemblers, machine instructions, etc. are flawless?
Here is an example of a compiler for which there is a correctness proof: compcert.inria.fr/doc/index.html
Dec
29
comment Why is verbosity bad for a programming language?
"A developer only has a certain number of keystrokes in them before they die": Verbosity is only one factor to the number of keystrokes required from a programmer: Writing in a terse language might require fixing the code ten times, resulting in more keystrokes before you are done.
Dec
28
comment Extreme Programming: how long are iterations supposed to be?
@DocBrown: So they make a release each time they change the label of a button? Or do they have several larger features that are developed in parallel and are released each time they get finished? I.e.: the individual features may be non-trivial but since several features are developed and completed in parallel you get a continuous flow of releases.
Dec
26
revised Can objects be implemented in terms of higher order functions?
added 3 characters in body
Dec
26
answered Can objects be implemented in terms of higher order functions?
Dec
26
reviewed Leave Open Scala, checking for type and then cast to it
Dec
26
reviewed Close How to deal with colleagues refuse to follow practices?