47,288 reputation
16104178
bio website
location Minneapolis, MN
age
visits member for 2 years, 9 months
seen 4 mins ago

1d
comment When is I18N worth it?
To be pedantic, internationalization has nothing to do with translating text - that is localization. Internationalization is making the code flexible enough to do the latter.
1d
answered Managing types and conversions in a compiler
2d
comment Strategies for parameter wrapping
@doval - sure, but the nice thing about real world applications is that they will have real world inputs that you will already have as classes useful in other parts of the program.
2d
comment Strategies for parameter wrapping
@FrankHileman - not in my experience. If anything, using a functional style makes things easier since almost all mathematical functions are binary functions at most. Makes it easy to decompose the problem into smaller bits.
2d
comment Strategies for parameter wrapping
@RobertHarvey - I meant where like you have int, double, string, string and toss them all into an object with no other use than being input to a function. C# style params arguments are fine - they're just syntactic sugar for collection initialization. Context objects are... less fine. Passing around arbitrary state (while occasionally the better of two evils) is the sort of thing that is regularly abused.
2d
answered Strategies for parameter wrapping
2d
comment Do you think it’s worth it to learn bash scripting in 2015?
It depends on what you expect to be doing on a day to day basis.
Jan
21
comment Helping to avoid first time implementation mistakes
@RobertHarvey - and even the reinventions have enough subtle differences to reliably bite you in the ass the first time.
Jan
21
answered Helping to avoid first time implementation mistakes
Jan
21
comment Where does the Liskov Substitution Principle generally lie in different constructor parameter lists?
@Panzercrisis - to be honest, it's not entirely clear. But if I understand properly, I don't agree that it's an exception. If you have a callback defined in both places then any method that satisfies the callback is satisfying the contract stipulated by LSP. It's like saying you can't pass 4 into the subtype and 2 into the basetype because then it will do different things. While that might not be a good idea, there's no clear substitute-ability violation going on there.
Jan
21
comment class in OOP language and type
@Doval - that's a good point. I overlooked it since I've been neck deep in a language where individual values can exist in multiple types.
Jan
21
comment class in OOP language and type
@Doval - the simple one, akin to the top answer: if you have two sets that contain the same values, they are equivalent mathematically. Types are (usually) not.
Jan
21
comment class in OOP language and type
I would also be cautious considering types as sets of values. Sets have relations that are not strictly applicable to types. For conceptualizing types it's a good model, but it breaks down once you start looking at things more closely - and even moreso when you introduce subtyping.
Jan
21
answered Where does the Liskov Substitution Principle generally lie in different constructor parameter lists?
Jan
21
comment class in OOP language and type
It should be noted that in some languages being structurally equivalent is enough to make one type a subtype of the other (and often vice versa). That though is decidedly uncommon/unpopular.
Jan
21
awarded  Enlightened
Jan
20
comment object oriented programming vs. object oriented design
@pleasedeleteme - it seems pretty correct...
Jan
20
answered Does Object Orientation require the concept of inheritance?
Jan
20
comment Why sacrificing good software engineering practices is typically the first choice for software development projects assuming “good enough” quality
@david - you're missing my point. "Throwing something together" takes just as long as doing things well even in the short term.
Jan
20
comment Why sacrificing good software engineering practices is typically the first choice for software development projects assuming “good enough” quality
@David - poppycock. The old joke about being 90% done with 90% to go is there for a reason. Not just prototypes are outlandishly underestimated. Doing it right is always an option. Always a viable option too.