196 reputation
bio website github.com/KubaO/…
location United States
age 38
visits member for 2 years, 11 months
seen Feb 12 at 19:16

All my original contributions to StackOverflow are hereby placed into the public domain. If this is not legally possible, then anyone receiving a copy of them by any means is granted a non-exclusive perpetual license to use, distribute and modify them, and to distribute modifications, under any license or none, with or without attribution. Please note that this license applies only to my original contributions - quoted material and edits by me to existing material on StackOverflow are derived works and I'm not at liberty to grant rights in them. [lifted from Steve Jessop's about me, thanks!]

All sscce answers are available on github: https://github.com/KubaO/stackoverflown

Email: first name (4 letters long) -at- mareimbrium -dot- org

comment What's the shortest generating one-way hash algorithm?
TL;DR It can't be done.
comment What are appropriate metaphors for the pieces of a word processor?
Decent word processors try to approximate TeX, with varying levels of success. It makes no sense to provide an "abstraction" that doesn't cover the basics of text layout that have been practiced for hundreds of years. You're not talking about an editor, you're talking about a word processor. If all you want is TeX output, then LyX is there, no need to reinvent the wheel. If all you want is an editor, then look at various abstractions present in editor toolkits.
comment Interview question “What is virtual function”
Of course it's not quite so: virtual or not, you still retain access to all accessible methods. You simply explicitly which one you want: A::method or B::method. Otherwise there'd be no way to call the base class's method in a derived one :)
comment What are appropriate metaphors for the pieces of a word processor?
Abstractions #3 and #4 are your own fantasy, I'm afraid. You cannot lay out anything that resembles good looking text while limiting yourself just to one line at a time, or one paragraph, or even one page. A document has to be laid out in entirety, where content on any page can potentially impact any other page in the document, and it is device dependent so screen and paper will differ if readability is at stake. To have an idea about what it takes to lay out good looking text, just look at how TeX does it.
comment Why is sizeof called a compile-time operator?
@MichaelT: The size of an instance of a type can certainly change -- there's class polymorphism, after all. I'd argue that sizeof(polymorphic_ptr*) being constant is quite counter-intuitive and just silly. Yeah, it's the C++ way, but silly nevertheless.
comment I'm having trouble learning
Saying that being a computer scientist is about computers is like saying that being a violinist is about making violins. The engineering aspect is a separate discipline. Now good violin makers must play their instrument decently, just as good software engineers should be proficient in computer science, of course.
comment Why do some programmers think there is a contrast between theory and practice?
@FBG: Brilliantly said.