Re: [Haskell-cafe] Language simplicity

2010-01-17 Thread Andrew Coppin
Eduard Sergeev wrote: OK, my version of meaningless statistics: C++ (ISO/IEC 14882:1998(E)): 325 pages (712 including standard libraries) C# (ECMA-334): 505 pages (language only) Java: 450 pages (language only?) Scala (2.7): 125 pages (157 including standard library) Eiffel (ECMA-367): 160 pages

Re: [Haskell-cafe] Language simplicity

2010-01-17 Thread jur
Andrew Coppin wrote: OK people, it's random statistics time! OK, my version of meaningless statistics: Java: 450 pages (language only?) Which version is this? The version of the Java Language Specification (version 3.0, 2005) I am currently reading has 684 pages. I'd prefer to read o

Re: [Haskell-cafe] Language simplicity

2010-01-16 Thread Lennart Augustsson
PL/I has keywords, they're just not reserved words. With as many keywords as PL/I has, there something to say for not making them reserved. :) On Wed, Jan 13, 2010 at 11:50 AM, Brandon S. Allbery KF8NH wrote: > On Jan 13, 2010, at 05:45 , Ketil Malde wrote: >> >> "Brandon S. Allbery KF8NH" write

Re: [Haskell-cafe] Language simplicity

2010-01-16 Thread Henning Thielemann
Eduard Sergeev schrieb: Andrew Coppin wrote: OK people, it's random statistics time! OK, my version of meaningless statistics: C++ (ISO/IEC 14882:1998(E)): 325 pages (712 including standard libraries) C# (ECMA-334): 505 pages (language only) Java: 450 pages (language only?) Scala (2.7

Re: [Haskell-cafe] Language simplicity

2010-01-16 Thread Henning Thielemann
Niklas Broberg schrieb: Haskell '98 apparently features 25 reserved words. (Not counting "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.) 21 actually. case, class, data, default, deriving, do, else, if, import, in, infix, infixl, infixr, instance, let, module, newtype, of

Re: [Haskell-cafe] Language simplicity

2010-01-16 Thread Henning Thielemann
Andrew Coppin schrieb: Hmm, I wonder if there's some way to compare the size of the language specification documents? :-} PS. It comes as absolutely no surprise to me that C++ has the most keywords. But then, if I were to add AMOS Professional, that had well over 800 keywords at the last coun

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread jur
On Jan 14, 2010, at 8:38 PM, Andrew Coppin wrote: Martijn van Steenbergen wrote: Niklas Broberg wrote: 21 actually. case, class, data, default, deriving, do, else, if, import, in, infix, infixl, infixr, instance, let, module, newtype, of, then, type, where. There's also three special words

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Andrew Coppin
Martijn van Steenbergen wrote: Niklas Broberg wrote: 21 actually. case, class, data, default, deriving, do, else, if, import, in, infix, infixl, infixr, instance, let, module, newtype, of, then, type, where. There's also three special words that can still be used as identifiers, so aren't reserv

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Evan Laforge
>> Unicode identifiers are fun but this is a good point.  The line has >> to be somewhere, so it might as well be in the historical position >> unless there are widely agreed on benefits to moving it. > > I have already crossed that line: Ha, well haskell programmers wouldn't be haskell programmer

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Steve Schafer
On Thu, 14 Jan 2010 14:42:06 +, you wrote: >> All Lisps have "special forms" which are evaluated uniquely and differently >> from function application and are therefore reserved words by another name. >> For example, Clojure has def, if, do, let, var, quote, fn, loop, recur, >> throw, try,

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Martin Coxall
On 14 Jan 2010, at 14:42, Matthias Görgens wrote: >> All Lisps have "special forms" which are evaluated uniquely and differently >> from function application and are therefore reserved words by another name. >> For example, Clojure has def, if, do, let, var, quote, fn, loop, recur, >> throw, t

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Matthias Görgens
> All Lisps have "special forms" which are evaluated uniquely and differently > from function application and are therefore reserved words by another name. > For example, Clojure has def, if, do, let, var, quote, fn, loop, recur, > throw, try, monitor-enter, monitor-exit, dot, new and set!. Yes

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Tom Tobin
On Thu, Jan 14, 2010 at 12:45 AM, Colin Paul Adams wrote: >> "Tom" == Tom Tobin writes: > >    Tom> readability.  The ASCII characters are universal and easily >    Tom> recognized > > No they are not. > My wife is Chinese. When she was learning pinyin as a child, she asked > her father for h

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Niklas Broberg
> Since you can define operators in Haskell, would it make sense to include > '=', '--', ':', ',' etc. as "reserved names" since those can't be used as > operator names? They are indeed reserved operators in the report. 11 of those: .. : :: = \ | <- -> @ ~ => To be fair, _ is also a reserved ide

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Martijn van Steenbergen
Niklas Broberg wrote: Haskell '98 apparently features 25 reserved words. (Not counting "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.) 21 actually. case, class, data, default, deriving, do, else, if, import, in, infix, infixl, infixr, instance, let, module, newtype, of, then,

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Roel van Dijk
On Thu, Jan 14, 2010 at 12:47 PM, Colin Paul Adams wrote: >> "Roel" == Roel van Dijk writes: > >    Roel> I think it is time for an Obfuscated Haskell Contest :-) > > Are you allowed to use obsolete scripts for your identifiers? :-) Sure, I'll consider bonus points if you write your program

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Colin Paul Adams
> "Roel" == Roel van Dijk writes: Roel> I think it is time for an Obfuscated Haskell Contest :-) Are you allowed to use obsolete scripts for your identifiers? :-) -- Colin Adams Preston Lancashire ___ Haskell-Cafe mailing list Haskell-Cafe@has

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Roel van Dijk
> Thus speaketh the report (http://haskell.org/onlinereport/lexemes.html): > > symbol   ->      ascSymbol | uniSymbol > ascSymbol       ->      ! | # | $ | % | & | * | + | . | / | < | = | > | ? | @ >        |       \ | ^ | | | - | ~ > uniSymbol        ->      any Unicode symbol or punctuation > > P

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Daniel Fischer
Am Donnerstag 14 Januar 2010 11:38:57 schrieb Roel van Dijk: > > I was a bit surprised that you could use * as an operator since it is > a punctuation character. Maybe there are some corner cases with > fullwidth characters or with composition of characters. > Thus speaketh the report (http://hask

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Roel van Dijk
2010/1/14 Evan Laforge : > Wow, that's kind of cute: > > {-# LANGUAGE UnicodeSyntax #-} > (*) = (*) > (/) = (/) > 公式 高 中 低 = 高 * 中 * 低 / 整數 > 整數 = 123 That code snippet is also perfectly legal Haskell without the UnicodeSyntax language extension. You use UnicodeSyntax if you want to write code lik

Re: [Haskell-cafe] Language simplicity

2010-01-14 Thread Evan Laforge
Wow, that's kind of cute: {-# LANGUAGE UnicodeSyntax #-} (*) = (*) (/) = (/) 公式 高 中 低=高*中*低/整數 整數 = 123 Oddly, if I change the order of these definitions I get syntax errors. Very mysterious. Nice how it knows that * is a symbol, but I'm not sure how I'm supposed to name a type. It certainly s

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Colin Paul Adams
> "Tom" == Tom Tobin writes: Tom> readability. The ASCII characters are universal and easily Tom> recognized No they are not. My wife is Chinese. When she was learning pinyin as a child, she asked her father for help with some homework. He replied that he didn't understand them. --

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Tom Tobin
On Wed, Jan 13, 2010 at 1:28 PM, Brandon S. Allbery KF8NH wrote: > On Jan 13, 2010, at 14:25 , Andrew Coppin wrote: >> (And even if that's not the case, I've yet to find a way to type in the >> Unicode characters which are hypothetically possible.) > > That's a problem with your editor/development

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Brandon S. Allbery KF8NH
On Jan 13, 2010, at 14:42 , Andrew Coppin wrote: Brandon S. Allbery KF8NH wrote: On Jan 13, 2010, at 14:25 , Andrew Coppin wrote: Colin Paul Adams wrote: Andrew> It's weird that us Haskell people complain about there Andrew> being only 26 letters in the alphabet Which alphabet? You have p

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Sebastian Sylvan
On Wed, Jan 13, 2010 at 12:55 AM, Eduard Sergeev wrote: > > > Andrew Coppin wrote: > > > > OK people, it's random statistics time! > > OK, my version of meaningless statistics: > > C++ (ISO/IEC 14882:1998(E)): 325 pages (712 including standard libraries) > C# (ECMA-334): 505 pages (language only)

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Miguel Mitrofanov
On 13 Jan 2010, at 22:25, Andrew Coppin wrote: Colin Paul Adams wrote: Andrew> It's weird that us Haskell people complain about there Andrew> being only 26 letters in the alphabet Which alphabet? You have plenty of choice in Unicode. Er... I was under the impression that Haskell sour

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Andrew Coppin
Brandon S. Allbery KF8NH wrote: On Jan 13, 2010, at 14:25 , Andrew Coppin wrote: Colin Paul Adams wrote: Andrew> It's weird that us Haskell people complain about there Andrew> being only 26 letters in the alphabet Which alphabet? You have plenty of choice in Unicode. Er... I was under

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Andrew Coppin
Brandon S. Allbery KF8NH wrote: On Jan 13, 2010, at 14:29 , Andrew Coppin wrote: Brandon S. Allbery KF8NH wrote: Are we counting the FFI annex ("foreign")? Strictly, wasn't that added *after* the Haskell 98 report was written? I.e., if you wanted to be ultra-technical about it, it's not par

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Andrew Coppin
sylvain wrote: Le mardi 12 janvier 2010 à 21:25 +, Andrew Coppin a écrit : Hi Andrew, As you can see, this conclusively proves... something. What, exactly? Not a lot. As you so elegantly point out, the number of keywords in a language is a fairly crude measurement of how co

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Brandon S. Allbery KF8NH
On Jan 13, 2010, at 14:29 , Andrew Coppin wrote: Brandon S. Allbery KF8NH wrote: On Jan 12, 2010, at 17:12 , Niklas Broberg wrote: Haskell '98 apparently features 25 reserved words. (Not counting "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.) 21 actually. case, class, da

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Andrew Coppin
Brandon S. Allbery KF8NH wrote: On Jan 12, 2010, at 17:12 , Niklas Broberg wrote: Haskell '98 apparently features 25 reserved words. (Not counting "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.) 21 actually. case, class, data, default, deriving, do, else, if, import, in, in

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Brandon S. Allbery KF8NH
On Jan 13, 2010, at 14:25 , Andrew Coppin wrote: Colin Paul Adams wrote: Andrew> It's weird that us Haskell people complain about there Andrew> being only 26 letters in the alphabet Which alphabet? You have plenty of choice in Unicode. Er... I was under the impression that Haskell sourc

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Andrew Coppin
Marc Weber wrote: As you can see, this conclusively proves... something. What about brainfuck? 8 different signs are used. -> http://de.wikipedia.org/wiki/Brainfuck#cite_note-0 The first link points to a page saying there is an interpreter 98 bytes in size.. What does this prove? :-)

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Andrew Coppin
Colin Paul Adams wrote: Andrew> It's weird that us Haskell people complain about there Andrew> being only 26 letters in the alphabet Which alphabet? You have plenty of choice in Unicode. Er... I was under the impression that Haskell source code uses the ASCII character set, not Uni

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Brandon S. Allbery KF8NH
On Jan 13, 2010, at 05:45 , Ketil Malde wrote: "Brandon S. Allbery KF8NH" writes: If we're going to go that far, FORTRAN and PL/1 have none. FORTRAN is somewhat infamous for this: There's also the option (perhaps this was PL/1?) of writing constructs like: IF THEN THEN IF ELSE THEN etc.

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Ketil Malde
"Brandon S. Allbery KF8NH" writes: > If we're going to go that far, FORTRAN and PL/1 have none. FORTRAN is > somewhat infamous for this: There's also the option (perhaps this was PL/1?) of writing constructs like: IF THEN THEN IF ELSE THEN etc. Having few reserved words isn't necessarily a be

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Ketil Malde
Fraser Wilson writes: > module LordsOfMidnight.Character(Character) where > > data Character = C { name :: String, > location :: (Int,Int), > facing :: Direction, > hour :: Int, > energy :: Int, >

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Brandon S. Allbery KF8NH
On Jan 13, 2010, at 03:49 , Martin Coxall wrote: COBOL: Over 400 (!) If we're going to go that far, FORTRAN and PL/1 have none. FORTRAN is somewhat infamous for this: "DO 10 I = 1, 400" is a loop start, "DO 10 I = 1. 400" (note typo, "." for ",") parses as the assignment "DO10I = 1.400

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Ketil Malde
sylvain writes: > Let me order your list: > Smalltalk: 0 > Lisp: 0 > Tcl: 0 If you count reserved tokens, I guess Lisp reserves parentheses and whitespace? > Haskell: 21 * > Python: 31 > C: 32 * > JavaScript: 36 > Ruby: 38 > --- > Borland Turbo Pascal: ~50 > Java: 53 > Eiffel: 59 > C++: 62

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Marc Weber
> As you can see, this conclusively proves... something. What about brainfuck? 8 different signs are used. -> http://de.wikipedia.org/wiki/Brainfuck#cite_note-0 The first link points to a page saying there is an interpreter 98 bytes in size.. What does this prove? :-) Marc Weber ___

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Martin Coxall
On 12 Jan 2010, at 22:22, Andrew Coppin wrote: > Niklas Broberg wrote: >>> Haskell '98 apparently features 25 reserved words. (Not counting "forall" >>> and "mdo" and so on, which AFAIK are not in Haskell '98.) >>> >> >> 21 actually. case, class, data, default, deriving, do, else, if, >> imp

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Martin Coxall
On 12 Jan 2010, at 21:25, Andrew Coppin wrote: > OK people, it's random statistics time! > > Haskell '98 apparently features 25 reserved words. (Not counting "forall" and > "mdo" and so on, which AFAIK are not in Haskell '98.) So how does that > compare to other languages? > > C: 32 > C++: 62

Re: [Haskell-cafe] Language simplicity

2010-01-13 Thread Fraser Wilson
On Tue, Jan 12, 2010 at 11:26 PM, Daniel Fischer wrote: > Okay, 'as' is easy. But can you find a situation where 'qualified' or > 'hiding' would be natural choices for an identifier? I'd love to see those > in some code :) > module LordsOfMidnight.Character(Character) where data Character = C {

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Colin Paul Adams
> "Andrew" == Andrew Coppin writes: Andrew> It's weird that us Haskell people complain about there Andrew> being only 26 letters in the alphabet Which alphabet? You have plenty of choice in Unicode. -- Colin Adams Preston Lancashire ___ Ha

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Brandon S. Allbery KF8NH
On Jan 12, 2010, at 17:12 , Niklas Broberg wrote: Haskell '98 apparently features 25 reserved words. (Not counting "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.) 21 actually. case, class, data, default, deriving, do, else, if, import, in, infix, infixl, infixr, instance, l

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Brandon S. Allbery KF8NH
On Jan 12, 2010, at 17:38 , Michael Hartl wrote: Also, the number varies depending on whether you consider "reversed words" or "keywords", and I suspect the situation is subtly different "reversed words"? There are some in sh for example, namely 'fi' and 'esac', but other than that they are not

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Eduard Sergeev
Andrew Coppin wrote: > > OK people, it's random statistics time! OK, my version of meaningless statistics: C++ (ISO/IEC 14882:1998(E)): 325 pages (712 including standard libraries) C# (ECMA-334): 505 pages (language only) Java: 450 pages (language only?) Scala (2.7): 125 pages (157 including s

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread sylvain
Le mardi 12 janvier 2010 à 21:25 +, Andrew Coppin a écrit : Hi Andrew, > As you can see, this conclusively proves... something. What, exactly? Take Eiffel in its last version: I have identified 11 keywords that are either used for Design By Contract or source-code documentation. These are s

Re[2]: [Haskell-cafe] Language simplicity

2010-01-12 Thread Bulat Ziganshin
Hello Andrew, Wednesday, January 13, 2010, 1:54:44 AM, you wrote: > (The material I quoted from had notes about which version of Java added > certain of the words. I guess it was outdated.) you would be more respected in this list if you will compare haskell 1.0 with java'2010 or better '2020 ;)

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Andrew Coppin
Tony Morris wrote: Andrew Coppin wrote: Java: 50 Java has 53 reserved words. Damnit. They must have added a few more... (The material I quoted from had notes about which version of Java added certain of the words. I guess it was outdated.) _

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Tony Morris
Andrew Coppin wrote: > OK people, it's random statistics time! > > Haskell '98 apparently features 25 reserved words. (Not counting > "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.) So > how does that compare to other languages? > > C: 32 > C++: 62 > Borland Turbo Pascal: ~50 [wi

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Michael Hartl
Am Dienstag, den 12.01.2010, 22:22 + schrieb Andrew Coppin: > Niklas Broberg wrote: > >> Haskell '98 apparently features 25 reserved words. (Not counting "forall" > >> and "mdo" and so on, which AFAIK are not in Haskell '98.) > >> > > > > 21 actually. case, class, data, default, deriving,

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Andrew Coppin
Daniel Fischer wrote: Am Dienstag 12 Januar 2010 23:12:20 schrieb Niklas Broberg: Haskell '98 apparently features 25 reserved words. (Not counting "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.) 21 actually. case, class, data, default, deriving, do, else, if, import

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Daniel Fischer
Am Dienstag 12 Januar 2010 23:12:20 schrieb Niklas Broberg: > > Haskell '98 apparently features 25 reserved words. (Not counting > > "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.) > > 21 actually. case, class, data, default, deriving, do, else, if, > import, in, infix, infixl, i

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Andrew Coppin
Niklas Broberg wrote: Haskell '98 apparently features 25 reserved words. (Not counting "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.) 21 actually. case, class, data, default, deriving, do, else, if, import, in, infix, infixl, infixr, instance, let, module, newtype, of,

Re: [Haskell-cafe] Language simplicity

2010-01-12 Thread Niklas Broberg
> Haskell '98 apparently features 25 reserved words. (Not counting "forall" > and "mdo" and so on, which AFAIK are not in Haskell '98.) 21 actually. case, class, data, default, deriving, do, else, if, import, in, infix, infixl, infixr, instance, let, module, newtype, of, then, type, where. There's

[Haskell-cafe] Language simplicity

2010-01-12 Thread Andrew Coppin
OK people, it's random statistics time! Haskell '98 apparently features 25 reserved words. (Not counting "forall" and "mdo" and so on, which AFAIK are not in Haskell '98.) So how does that compare to other languages? C: 32 C++: 62 Borland Turbo Pascal: ~50 [without the OOP extensions added la