46,103 reputation
8121205
bio website tech.turbu-rpg.com
location Seattle, WA
age 32
visits member for 4 years
seen 2 hours ago
A lifelong programmer who's been coding in Delphi since its initial release and currently makes a living at it.

Jul
16
comment When does a Monad become a hammer?
@Doval: By cheating, using tricks like State monads to pretend impure operations are being done purely. For example: "Here we have a fake variable that we pretend represents 'the state of the entire outside world', and a fake pure function that takes the fake 'entire world' variable as an input and returns a modified world." It's all incredibly silly what's going on if you look under the hood.
Jul
15
comment When does a Monad become a hammer?
When does it become "a hammer"? When it's all you have. "Pure functional" languages are crippled when it comes to mutable state (which, as scary as hard-line FP proponents try to make it sound, is essential to any non-trivial program,) so you end up seeing monads everywhere.
Jul
9
comment What's a good simple way to combat the n+1 problem?
Any reason why you couldn't just set it up to do a JOIN?
Jul
8
comment Why do bitwise operators have lower priority than comparisons?
@supercat: Forgive my skepticism, but in today's modern world, systems like Arduino and Raspberry Pi with enough hardware to play back movies in full HD for an ultra-low cost are the reality. "Embedded systems with extreme hardware constraints that require horrible coding practice" just isn't a valid excuse in 2014 IMO.
Jul
8
comment Why do bitwise operators have lower priority than comparisons?
@supercat: What's wrong with declaring it the same as any other variable? That's the entire point of making things explicit: making them explicit.
Jul
8
comment Why do bitwise operators have lower priority than comparisons?
@Supercat: I would argue that there's no valid case for forcing non-short-circuit evaluation that cannot be better handled (ie: easier for someone who is not the original author to comprehend the intent of the code when reading it) by expanding it to explicit control flow.
Jul
6
comment Can a version of Python's shelve module that knows when its entries have been modified be written in any programming language?
@Martjin: Seriously? Does this look anything like a list question to you?
Jul
6
comment Can a version of Python's shelve module that knows when its entries have been modified be written in any programming language?
@gnat: It's perfectly clear what he's asking: Does any language exist in which it's possible to answer the question "has this object been mutated since [event] happened" in the general case?
Jul
3
comment Why does C# have much more features than Java?
@KilianFoth: Actually, C# was initially a batant rip-off of Delphi, rewritten to look like Java. Microsoft even poached the Delphi project architect away from Borland to create it.
Jul
3
comment Is there a real advantage to dynamic languages?
You should have a look at Boo. It's statically typed with type inference, and has macros that allow for the language's syntax to be extended.
Jun
19
comment When should the programmer's spoken language be used during development?
@L0j1k: I thought I was simply using an existing, standard, valid term for a system that implements the concept described. (Or, in plain English, "calling it what it is.") :P
Jun
19
comment When should the programmer's spoken language be used during development?
This word cannot be translated into any language because the system is purely Danish. "Disability benefits"?
Jun
14
comment How can Swift be so much faster than Objective-C in these comparisons?
@JanHudec: On mobile devices, or any device with constrained resources, GC is not significantly faster and in fact is a major part of the problem.
May
2
comment Why don't languages include implication as a logical operator?
I've read that IMPL is very helpful for code contracts. (Which VB didn't have.)
May
1
comment Why don't languages include implication as a logical operator?
@Stefan: You can also derive everything from an IMPL.
Apr
27
comment What makes Web crawling legal?
@Tibo: There should be quite a step. In the USA, there often isn't, due to the Computer Fraud and Abuse Act. If that sounds strange, well, there's a reason a lot of people think that particular law needs some serious reform.
Apr
26
comment How do Traits in Scala avoid the “diamond error”?
@gnat: this is a conceptual question, not a concrete problem question. If he was asking "I have this class in Scala and it's giving me problems that I think might be related to the Diamond Problem, how do I fix it?" then your comment would be appropriate, but then the question would belong on SO. :P
Apr
20
comment Is machine language always binary?
@Prog: That's right. Our abstractions are way beyond that stage now. Heck, there are some cases where the computer doesn't even execute machine code exactly literally as it's written, due to superscalar architecture--the CPU optimizes things internally to run faster.
Apr
20
comment Is machine language always binary?
@Prog: That depends on the CPU. Some CPUs have it hard-wired into the transistors, others are programmed in microcode. Some do both.
Apr
20
comment Is machine language always binary?
@Prog: There's always a lower level. Machine code is the lowest level that programmers have to worry about, but below that is microarchitecture (the stuff you're talking about), which is based on transistors and logic gates, which are based on the principles of electronics, which are based on the laws of physics and quantum mechanics. There isn't really something that says "do a high voltage, do a low voltage", because it's not always a voltage. (For example, when you store it to disc, it's a magnetic state instead.) That's why we use 1 and 0 as convenient abstractions.