Subj : Re: curve for verbosity in a language To : comp.programming From : Arthur J. O'Dwyer Date : Tue Aug 02 2005 02:15 pm On Tue, 2 Aug 2005, osmium wrote: > > "pantagruel" writes: >> Can anyone think of a language where verbosity in fundamentals of the >> program leads to succinctness in the higher levels. >> >> of course verbosity is bound to be relative in nature. > > APL is the language that comes to mind that might be along the lines > of what you want. Really? My impression of APL (not from any actual /use/, mind you) was that it was really succinct at array operations, but pretty verbose and kind of confusing (though really cool!) when it came to subroutines and control flow. OTOH, I remember that APL has one of the most "mutable" syntaxes in the world, with the possible exception of Lisp (or so I've heard). The APL manual I was reading finished up with an implementation of a line-based text editor using code like IF LINE NOT EMPTY THEN ADD 1 TO LINECOUNT done using dozens of functions of varying arity to represent the keywords "IF", "NOT", "THEN", et cetera. So if you're willing to mutate the syntax enough, you can get a lot of bang for your buck. I think this is one question to which Jon Harrop's knee-jerk reaction ;) is indisputably correct (by me, anyway!) --- FP languages tend to have really good /terse/ support for lists, hashes, function calls, and so on. Anonymous lambda functions mean you don't have to pass around bunches of function parameters. The function-definition syntax is very terse. You generally don't need to worry about explicit namespacing to the extent you do in strictly OO languages like Java and C#. Polymorphism, or typelessness, or whatever you want to call it, means fewer lines of code dealing with templates and generics. Type inference means fewer lines of code dealing with even the "simple" types. Yes, I think FP is the way to go. And of the (few) FP languages I've used, OCaml is the tersest. (I've heard good things about Haskell in that respect, too.) -Arthur .