Ugly Duckling

Posted on January 24, 2015

JavaScript stands out, even in the Haskell world:

...
[  2 of 149] Compiling Yi.Syntax.Layout 
[  3 of 149] Compiling Yi.Keymap.Vim.MatchResult 
[  4 of 149] Compiling Yi.Keymap.Vim.Digraph 
[  5 of 149] Compiling Yi.Keymap.Completion 
[  6 of 149] Compiling Parser.Incremental 
[  7 of 149] Compiling Yi.IncrementalParse 
[  8 of 149] Compiling Yi.Event         
[  9 of 149] Compiling Yi.UI.Vty.Conversions 
[ 10 of 149] Compiling Yi.JumpList      
[ 11 of 149] Compiling Yi.KillRing      
[ 12 of 149] Compiling Yi.Debug         
[ 13 of 149] Compiling Data.DelayList   
[ 14 of 149] Compiling Control.Exc      
[ 15 of 149] Compiling System.CanonicalizePath 
[ 16 of 149] Compiling System.FriendlyPath 
[ 17 of 149] Compiling Yi.Layout        
[ 18 of 149] Compiling Yi.UI.Pango.Layouts 
[ 19 of 149] Compiling Paths_yi         
[ 20 of 149] Compiling Yi.UI.Pango.Utils 
[ 21 of 149] Compiling Yi.Monad         
[ 22 of 149] Compiling Yi.Process       
[ 23 of 149] Compiling Yi.Interact      
[ 24 of 149] Compiling Yi.Window        
[ 25 of 149] Compiling Yi.Tab           
[ 26 of 149] Compiling Yi.String        
[ 27 of 149] Compiling Yi.Syntax.Tree   
[ 28 of 149] Compiling Yi.Syntax.OnlineTree 
[ 29 of 149] Compiling Yi.Syntax.Driver 
[ 30 of 149] Compiling Yi.Syntax.Haskell 
[ 31 of 149] Compiling Yi.Syntax.Paren  
[ 32 of 149] Compiling Yi.Syntax.Strokes.Haskell 
[ 33 of 149] Compiling Yi.Syntax.Latex  
[ 34 of 149] Compiling Yi.Syntax.JavaScript 

src/library/Yi/Syntax/JavaScript.hs:121:10-25: Warning:
    No explicit implementation for
      ‘uniplate’ and ‘emptyNode’
    In the instance declaration for ‘IsTree Statement’
[ 35 of 149] Compiling Yi.Verifier.JavaScript 
[ 36 of 149] Compiling Yi.Config.Misc   
[ 37 of 149] Compiling Yi.Buffer.Implementation 
...

Anyway, here are the good news: