10,351 reputation
23660
bio website
location
age
visits member for 3 years, 1 month
seen 23 mins ago

C# developer, pretty standard stuff. SOLID and other such principles drive everything I do for the most part. Other than that, polyglot lover of functional programming in Haskell, F#, Erlang, and javascript. Player of each, master of none.

  • Monads are like buckets, that's what they say anyway.
  • Monoids are easy! I guess?
  • Comonads are just objects... however that works O_o
  • Cartography has nothing to do with these things.

Cheers.


27m
comment Data structure for traversing hierarchical hostnames
this was fun dotnetfiddle.net/ihB8FQ <-- functional approach
1d
comment What scientific evidence is there that an 8-hour work day is optimal for programmers?
Unfortunately the guidance on book/resource request stuff is kind of - sort of - horrible. The truth of the matter is we basically never allow resource requests. Some people keep opining that there could be some "good" resource request and as such we never get the consensus to change that guidance, but from my perspective it's simply wrong because as it stands: We close everything that is a straight resource request as this is, for basically the reasons @RobertHarvey mentioned above.
2d
comment Speed up familiarizing process of a new IDE?
@KonradMorawski as I said - I don't know if PHP is one of the languages that makes the benefits of the IDE outweigh the learning curve / coupling of your skills you end up with (being uncomfortable trying to code in it where an IDE isn't available), I was merely saying he is running into this simple problem that leads some to stick it out with a text editor. Sounds like you're saying PHP does lend itself to preferring an IDE, as a .NET developer myself I can understand that; I would never code C# away from an IDE.
2d
comment Speed up familiarizing process of a new IDE?
this is why many people eschew IDEs for languages where they can be avoided and instead learn vi, emacs, or sublime text veering towards becoming very proficient in a single text editor that can be used for editing source code files in many languages vs. an IDE which is focussed solely around one or two languages. Some languages benefit so much from their IDE however that it outweighs the cost of learning the IDE- is PHP one of them? I can't say. But this tends to be the experience of many: IDE's are better for certain languages, and general text editor's are preferable for all others.
Oct
15
comment Is not being able to resolve a function call to its declaration a drawback of Polymorphism?
Polymorphism is an effect of the runtime type system, I don't know PHP so I can't say - but does your code here work ? If so, I don't think any polymorphism failure is occurring, it's functioning as you expect, but rather your IDE which doesn't have a full PHP runtime in it doesn't know the behaviour that's actually going to occur at runtime. IDE's don't typically know everything about your code, so it's not uncommon for them to not recognize exactly what's going to happen. For the IDE to know what will happen it would require the full PHP type system implemented in it.
Oct
14
comment Java Multithreading and CPU cores
This is a specific implementation question about Java (I suspect it's also too broad altogether because the decisions about which cores any thread runs on are strongly tied to the underlying OS, and particular chip platform which entails way more variables than anybody can describe in an answer) voting to send to SO
Oct
12
comment What was the influence of Chris Okasaki's data structures on Scala?
"Indeed, one of my major complaints about the computer field is that whereas Newton could say, "If I have seen a little farther than others, it is because I have stood on the shoulders of giants," I am forced to say, "Today we stand on each other's feet." Perhaps the central problem we face in all of computer science is how we are to get to the situation where we build on top of the work of others rather than redoing so much of it in a trivially different way." - Richard Hamming, 1968 Turing Award lecture, Journal of the ACM 16 (1), January 1969, p.7
Oct
12
comment What was the influence of Chris Okasaki's data structures on Scala?
The first real use of his book being in either case is downright incorrect. Chris Okasaki's thesis was published long before either of those languages were developed, and studied closely by programmers across a great variety of functional languages such as Haskell, the MLs (all examples in the thesis are in Haskell and SML), surely CLISP coders, Erlang, and any other language you can figure has an interest in referential transparency (COQ, HOL, Miranda, Clean, and on and on..) There's much to learn from software languages of the past, don't assume only recent languages were well thought out.
Oct
10
comment Typical team size to maintain and improve a 100k line codebase?
@glenatron this is pretty meta at this point, but if you really believe that I strongly encourage you to post on meta a request for statistical analysis of site usage - as many of us have done this using Data.SE and other sources and come to a fairly conclusive response that - the narrower scope to this site does result in greater site usage and value. Many of us active in the community approach maintaining the community with an eye on objective results not subjective opinion as folks so often think. A meta post could be valuable in helping folks understand why we maintain how we do
Oct
10
comment Typical team size to maintain and improve a 100k line codebase?
@glenatron yes, but if it keeps happening you'll be question banned so abusing that concept is kind of a self-solving problem
Oct
7
comment Visual Studio: How to breakpoint at a yet-unknown location?
I wonder if this is a better question for SO as it's somewhat a technical non-conceptual question (I could tell you how to use a memory dump to find the call stack that generates that, or using ILSpy you could find the string literal in the string table and find references in the rest of the IL to that string table offset, or you could use an old app by the name of SPY++ to look at the windows heap to find a reference to it's wHnd, but none of these are conceptual things...)
Oct
4
comment Inheritance is a null property in the parent a bad practice?
@cHao ....my remote does have those buttons....
Oct
4
comment Why is object-level privacy difficult to use as a paradigm, and why is it desirable?
also "object-level privacy" is not a paradigm, I think you're referring to a particular language feature, and likely one that is only relevant in OO languages I'm guessing. Again, you really need to explain what you're referring to here with more detail, right now you're vaguely referring to things without enough detail for us to know what you mean. If you're not certain what it is you're referring to that's fine, but perhaps you should describe it rather than using terms that might be ill fitting to the feature you're referring to as the terms may just be confusing the point.
Oct
4
comment Why is object-level privacy difficult to use as a paradigm, and why is it desirable?
you said class-level privacy is not object-level privacy, but you didn't explain what you think "class-level privacy" is, just that we don't know how to do it. I think you'll need to explain a little better what you think it is and why we can't do it, because "class-level" instead of "object-level" tends to be a distinction people use to refer to type-statics where a given type has a single member across process scope, which can most definitely be private...so, what are you getting at here? Also you gave one example of working around privacy, but not all languages support it.
Oct
4
comment Alternative to language purity
In short, it's saying "I want to do these 4 things in this function" - and having to figure out how to do them in a single statement that causes people to pause and not know how to move forward in Haskell.
Oct
4
comment Alternative to language purity
I think hands down the biggest problem people run into when they try working with Haskell is not it's purity - but rather the declarative approach plain and simple. Coding declaratively vs. imperatively is so vastly different that people tend to not even realize it's the core trouble they're having because they can't even identify it, so instead they point at the blatantly obvious things like purity, and monads, and the type system - these are in your face differences about Haskell vs. imperative languages, but it's taking away someone's ability to write imperative code that confuses people.
Oct
1
comment Why implement a lexer as a 2d array and a giant switch?
@D.W. his class is not using lex or parser generators of any sort from what he said in his question.
Oct
1
comment Why implement a lexer as a 2d array and a giant switch?
If some portion of your irritation is coming from knowing how to do a better job and lacking the ability to get any feedback or appreciation for an approach you'd prefer - as decades in industry does train us to expect feedback and at times appreciation - perhaps you should write your better implementation and post it to CodeReview.SE to get some of that for your own peace of mind.
Oct
1
comment Why implement a lexer as a 2d array and a giant switch?
Going back after decades of knowing better...ugh...I can only imagine your pain as I've pondered doing the same m'self. In my ponderances, I always figure it'll be a lot of swallowing what I know and just doing what I'm told regardless, doing it quickly and moving on - the quicker you do it the less time you get to ponder how horrible it is. I would surmise you're in such a place - just do the exercise and move on. As for why's, don't ask those of undergrad course exercises, asking those is what makes uni so hard for those who know better...
Sep
30
awarded  Explainer