7,503 reputation
1735
bio website
location
age
visits member for 3 years, 4 months
seen yesterday

2d
comment Should I still use Debug.Assert today?
@DougM performance critical code, its a reference to the knuth quote. I'd also add that I think the heartbleed bug demonstrates that my view is the correct one, unless you have no other choice, do not elide precondition checks in your release code
Apr
9
comment What is the coding standard for a long parameter list?
there is never only 1 standard xkcd.com/927
Apr
9
comment Wrapper around C++ STL
was it always just wrappers around STL though? it may predate the STL and has later been reimplemented using the STL
Apr
3
comment Why can't a User Story be attached to more than one Feature?
i.e. it may be an indication the story is an epic/too big
Apr
3
comment Are monads a viable (maybe preferable) alternative to inheritance hierarchies?
I suspect this might be type classes vs classes not monads vs classes? otherwise the answer is surely no, as there are type classes/classes that can't meet the monad laws.
Mar
26
comment Why is it bad to write something in language X as if you're writing a program in language Y in terms of using a shared coding paradigm
before you even get to RAII though you want to consider if you need to use new at all, using dynamic storage if you can use automatic storage is just making more work for yourself
Mar
25
comment How to simplify unit testing with higher order functions?
It depends a C++98 compiler may very well have std::tr1 available as its just a library extension, if you have to use strictly C++98 std libraries only then yes use function pointers (or I guess you could write your own function template if you are brave)
Mar
25
revised How to simplify unit testing with higher order functions?
added 5 characters in body
Mar
25
comment How to simplify unit testing with higher order functions?
strictly 98, no, but if you have tr1 available then you can get it via tr1, or IIRC boost also provides a function wrapper
Mar
25
answered How to simplify unit testing with higher order functions?
Mar
10
comment Understanding the difference between mutable and immutable classes
well you can have objects that can change hashCodes it is never a good idea blogs.msdn.com/b/ericlippert/archive/2011/02/28/… is for C# but should hold for Java too
Mar
10
comment Why does a monad use “return” or “unit” rather than “lift”?
possibly also worth mentioning that () is pronounced unit so that is also a possible place for confusion
Feb
24
comment Why are dark color schemes in editors so popular?
might be suitable for ux.stackexchange.com (you can flag to request migration)
Feb
21
comment Why are scientific programming languages so weird?
I don't buy that 0 based indexing is because of ease of implementation (FORTRAN pretty much disproves this). cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD831.html gives some reasons one might prefer 0-based indexing, but note the choice is fairly arbitrary.
Feb
21
comment Why are scientific programming languages so weird?
the Dijkstra paper mentioned cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD831.html
Feb
20
comment How do purely functional programming languages deal with fast changing data?
fair enough, hadn't followed the links
Feb
20
comment How do purely functional programming languages deal with fast changing data?
Might also be worth mentioning Zippers giving you the ability to do fast changes at a focus in a list or tree
Feb
19
comment Visual Studio Setup - why is solution explorer on the right?
+1 I put all my windows as tabs in the centre, nothing on the left or right, I'm sure lots of people have all sort of weird arrangements
Feb
19
comment Are there advantages to declaring stack variables constant in C++
and I can find many saying it doesn't help stackoverflow.com/questions/6313730/… - I do take the point that it at least allows the compiler to potentially optimize
Feb
19
comment Are there advantages to declaring stack variables constant in C++
do you have any reference for 2, my understanding was that this isn't true as 1) compilers can do this optimization regardless of if the variable is actually marked const, 2) const only promises a logical constness i.e. there can actually be mutation 3) the ability to cast away const means all bets are off