4,999 reputation
724
bio website
location Netherlands
age 41
visits member for 4 years, 4 months
seen yesterday

2d
comment Is directly using Make considered obsolete?
@MilesRout: Of course I know that most C compilers have an option to parse dependency info for make. That's not my point. My point is that in hindsight, a better design would have been possible.
Apr
15
comment Is directly using Make considered obsolete?
@MilesRout: The awkward and messy part is the graph construction. The traversal is elegant enough. But just take the single most common example of the messy part: C header files. Each #include is an edge, but make cannot parse C files. Still not a problem, because make could store these edges with the next node (the *.o file), but it doesn't do that either.
Apr
15
answered How can I Identify which condition satisfied the if statement?
Apr
10
comment Why server-side repository merge is a terrible idea in git?
@gbjbaanb: Note that this really is a git design fault. It introduces an artificial global state of the database, which means every change needs to be serialized in relation to all other changes. By manually breaking up the repository, you work around this global synchronization. but this is the 21st century, we shouldn't be needing such workarounds anymore. That said, the Facebook solution is a hack. The proper fix would inside git, where it's possible to find dependencies within the pipeline
Mar
31
comment Does path coverage guarantee finding all bugs?
@PaŭloEbermann: Intentional or not, if an exception path exists then that's a path which has to be considered in determining the % path coverage. That points at another problem: path coverage tools should only account reachable paths, and those are generally state-dependent. If you have code like if(a) pre(); foo(); if (a) post(); you cannot trivially prove whether a changes in foo and thus which paths are reachable.
Mar
31
comment Does path coverage guarantee finding all bugs?
@PaŭloEbermann: Exceptions are a code path. If the code could throw but with certain test data doesn't throw, the test does not achieve 100% path coverage. This isn't specific to exceptions as an error-handling mechanism. Visual Basic's ON ERROR GOTO is also a path, as is C's if(errno).
Mar
16
comment Is there accepted decimal-based Unicode notation for technical audiences?
Well, how many bases would you need for feature completeness? There's one canonical base, and that's hex.
Mar
16
comment Is there accepted decimal-based Unicode notation for technical audiences?
@Ehryk: You can write wchar_t(123) when you mean U+007B. But that's a single character, not part of a string.
Mar
16
comment Using scoped enums for bit flags in C++
The ISO C++ committee found option 1 important enough to explicitly state that the value range of enums includes all binary combinations of flags. (This predates C++03) So there's an objective approval of this somewhat subjective question.
Mar
16
answered Data padding for different hardware support?
Mar
16
comment What machine learning algorithm should I use to build an intelligent reminder?
All reasonable Machine Learning algorithms I know work on larger data sets. That's necessary both to learn general rules (this applies always) and exceptions (this doesn't apply when that).
Mar
11
comment How would you design a user database with custom fields
@Andy: Guess what? The situation will be even more unmaintainable if you mix a thousand different schemes into a single table ! And yes, you probably do need custom code for custom fields. Again that is simpler, not harder, if each customer has a clean, separate table. Trying to pick company X's fields from a thousand others is a bloody mess.
Mar
11
answered How would you design a user database with custom fields
Mar
11
comment Can neural network discover rng patterns
This answer seems to mix seed, state and outcome of a RNG. In general, the initial state is a function of the seed, state evolves by repeatedly applying a function to it, and the outcome is determined by yet another function to the state. In a good RNG, the state space is a lot larger than the output domain, so one output can be the result of many different states. In turn that means you can't predict the state nor the next outcome from a single outcome.
Mar
10
comment Why is there only code review?
When I worked at Lucent, I think we had 4 level of reviews in our department alone: Requirements, High-level Design, Low Level Design, and Implementation. Business probably had more than one layer of reviews as well.
Mar
10
comment The dream of declarative programming
Just define the language itself declaratively: Language(L) is defined by L in programming languages && declarative(L).
Mar
4
comment In C, what is an unconditional jump?
@ratchetfreak: That's why I say that all jumps are unconditional once you pass the condition to reach them. But trivially, if(boolCondition) { case true: break; case false: break; } means that one of the two break statement will NOT be executed. Obviously they can't be both unconditional by your definition.
Mar
4
comment In C, what is an unconditional jump?
A break in a case label is obviously conditional, as it depends on the switch condition being hit in the first place. All jumps are unconditional once you've passed the test condition. Therefore you must always have the right scope in mind, and the right scope for break is exactly the full switch statement (you don't break to the next case label or back to the caller of the function).
Feb
27
comment Protect memory from a potentially seg faulting function call
Well, then it wasn't formally proven after all ;)
Feb
27
comment Is this statement correct for floating point numbers?
"unlike integer types, values that a floating point representation cannot represent can be between values that it can represent." - Well, technically an integer type cannot represent 0.5 even though that's between 0 and 1. I think that you mean that the value range of an integer type is a contiguous subset of mathematical integers, whereas the value range of a floating-point type is not a contiguous subset of the reals.