 
            
            
            
            
                10 Feb
                
                    2016
                
            
            
                10 Feb
                
                '16
                
            
            
            
        
    
                8:59 a.m.
            
        I think the "show a simple type, then the 'real' type " solution is pretty good ( especially since you need to be doing type level programming to hit issues where the simple type doesn't hold anyways) , but on the topic of several languages: doesn't Haskell98 kind of solve the teaching issue? If you're using the standard stuff stick to the old $... I know Racket does some "language swapping" so that a beginner language is available . I don't know how well that works