 
            
            
            
            
                27 Mar
                
                    2009
                
            
            
                27 Mar
                
                '09
                
            
            
            
        
    
                9:01 p.m.
            
        On Fri, 27 Mar 2009, Jason Dusek wrote:
2009/03/27 John Lato
: I could follow the rest of this, but I don't understand why 'head' is necessary. Couldn't you always replace it with a case statement, with undefined on [] if necessary?
How would that be any different from head?
The psychological advantage is, that you had to do something with the case [] and programmers hopefully hesitate more to write 'error' than to write 'head'. :-) Practically, if you have no better idea than writing 'error', you would write an error message that is more specific than "head: empty list", which makes debugging easier.