My interests:

  • guitars
  • music, especially music theory
  • computer programming
  • hiking
  • puzzles

Here are some notes I took while trying to figure out the question about "What is the difference between a virtual base class, an abstract class, and a Java interface? Are they the same thing?" I found out that the wiki is pretty disorganized about it. Here are some pages which discuss the topic (some of which need cleanup or merging):

Here's a quote from C++:

Base classes may be declared as virtual; this is called virtual inheritance. Virtual inheritance ensures that only one instance of a base class exists in the inheritance graph, avoiding some of the ambiguity problems of multiple inheritance.

The article on fragile base class needs to be renamed to fragile binary interface (or fragile binary interface problem) because the article is misnamed. Most of the articles that refer to it should not be changed since the references to the term are correct.

Here is a list of the potential articles to be changed:

The draft of the text for the replacement of the current article is under User:Mordomo/FBC.


Need to write an article on D. M. Sunday's quick search algorithm and add it to the list of string searching algorithms.