From: Eric Sunshine Date: Fri, 21 Mar 2014 21:33:03 GMT Subject: Re: [PATCH][GSOC] Selection of the verbose message is replaced with generated message in install_branch_config() Message-ID: In-Reply-To: <532CAB89.7030303@alum.mit.edu> On Fri, Mar 21, 2014 at 5:13 PM, Michael Haggerty wrote: > On 03/21/2014 06:09 PM, Junio C Hamano wrote: >> Eric Sunshine writes: >> >>> Sorry, you're right about message[0] case not being a crasher (though >>> the assert() still seems overkill). >> >> Assert() often becomes no-op in production build. I think this may >> be an indication that "table-driven" may not be as good an approach >> as many candidates thought. The microproject suggestion asks them >> to think _if_ that makes sense, and it is perfectly fine for them if >> they answer "no, it introduces more problems than it solves". > > My expectation when I invented that microproject was that converting the > code to be table-driven would be judged *not* to be an improvement. I > was hoping that a student would say "the 'if' statement is OK, but let's > delete this ridiculous unreachable else branch". Possibly they would > convert the "if" chain into nested "if"s, which I think would allow some > code consolidation in one of the branches. > > But not a single student agreed with me, so I must be in a minority of > one (which, unfortunately, is the definition of lunacy). Adam NoLastName did stick with the 'if' statements and removed the unreachable branch [1], although he didn't say if he had considered the table-driven approach and discarded it. [1]: http://thread.gmane.org/gmane.comp.version-control.git/243704 > The multidimensional array lookup table is not so terrible, but I > personally still prefer the "if". > > Michael > > -- > Michael Haggerty > mhagger@alum.mit.edu > http://softwareswirl.blogspot.com/