50,740 reputation
9139222
bio website tech.turbu-rpg.com
location Seattle, WA
age 32
visits member for 4 years, 6 months
seen 30 mins ago
A lifelong programmer who's been coding in Delphi since its initial release and currently makes a living at it.

Feb
23
answered What about LISP, if anything, makes it easier to implement macro systems?
Feb
22
comment Is it bad or good to wrap mutable objects in immutable containers?
Encapsulation is a good thing. There is always such a thing as "too much of a good thing", though, and over-encapsulation can be extremely frustrating to deal with, especially if you're producing a library for another programmer to use.
Feb
19
comment Why are there so few C compilers?
(there is no more a market for proprietary compilers Tell that to the Visual Studio team...
Feb
15
answered Should I learn a programming language that compiles to another?
Feb
13
awarded  Good Answer
Feb
12
comment What is the difference between a variable and a parameter?
@JörgWMittag: When all objects are reference types anyway, that's hair-splitting at best.
Feb
12
answered What is the difference between a variable and a parameter?
Feb
7
comment “Use map instead of class to represent data” -Rich Hickey
Choosing a class to represent a Person provides the immediate benefit of creating a statically-verifiable API... but that comes with the cost of limiting opportunities or increasing costs for change and reuse later on. Wrong, and incredibly disingenuous. It improves your opportunity for changing later on, because when you make a breaking change, the compiler will automatically find and point out for you every place that needs to be updated to bring your entire codebase up to speed. It's in dynamic code, where you can't do that, that you really get coupled to previous choices!
Feb
5
answered Is prototypal inheritance inherently slower?
Feb
3
revised What do polynomial algorithms entail?
added 527 characters in body
Feb
3
answered What do polynomial algorithms entail?
Feb
3
comment Why use try … finally without a catch clause?
@Baldrickk: Again, I said nothing about cleanup. What I said was "guaranteed reversible state changes," which is a superset of "cleanup of locals." RAII can handle "cleanup of locals" just fine, but what about when you have to set a certain state, perform an operation, and then set the state back to the way it was before? There's no way to do that in C++ without creating an entire class (which you will probably instantiate a grand total of one place in your entire codebase) to have its destructor do it for you. It's a classic example of an abstraction inversion.
Jan
29
comment Turn away a bug if no reproducible test case exists?
@Elise: You have the audacity to complain? I'll make you rue the day. Not at all. Most developers (including myself) take pride in their work and want their product to be good-quality. But in order to fix a bug, we need to know the problem, not the symptoms. When you go to the doctor with a complaint of symptoms, the doctor can examine you directly to find out what's wrong. When you come to me with a bug report, I can't do that, so I need to deduce the cause by other means. It really is that simple: if I can't find what's causing the problem, I can't fix it.
Jan
27
comment Why use try … finally without a catch clause?
@Baldrickk: I never said there's anything bad about that. How do you get that from what I wrote?
Jan
27
answered Is the 'finally' portion of a 'try … catch … finally' construct even necessary?
Jan
22
awarded  Nice Answer
Jan
20
awarded  Good Answer
Jan
20
awarded  Nice Answer
Jan
20
comment One of my team members committed SQL injection-vulnerable code; should I report it to the manager?
@Sherlock: Yeah, or a sign of someone who made a mistake. When the design of the language is such that the obvious, intuitive way to do something opens a security hole, security holes are going to happen, even for experienced developers. Why do you think we're still getting patches for buffer overflow vulnerabilities every Patch Tuesday, a quarter-century after the Morris Worm put them on everyone's radar? Because some mistakes are literally hard not to make in certain languages.
Jan
20
answered One of my team members committed SQL injection-vulnerable code; should I report it to the manager?