1. The Great Computer Language Shootout
- Posted by jiri babor <jbabor at paradise.net.nz> Nov 07, 2003
- 647 views
Has anybody ever tried to form/submit a euphoric set for The Great Computer Language Shootout? http://www.bagley.org/~doug/shootout/ http://dada.perl.it/shootout/ jiri
2. Re: The Great Computer Language Shootout
- Posted by euphoric <euphoric at cklester.com> Nov 07, 2003
- 613 views
jiri babor wrote: > > >Has anybody ever tried to form/submit a euphoric set for The Great Computer >Language Shootout? > >http://www.bagley.org/~doug/shootout/ >http://dada.perl.it/shootout/ > >jiri > > Jiri, where ya bean? How ya bean? Anyway, the page referenced above says, "The shootout has not been updated since the fall of 2001, and is now frozen as it is. I'm sorry, but no updates will be made." :/ Looks like the Win32 version is still going, though. Maybe you should start a new one! :) I nominate you project manager for this one. heheh.
3. Re: The Great Computer Language Shootout
- Posted by jiri babor <jbabor at paradise.net.nz> Nov 08, 2003
- 613 views
C. K. Lester wrote: >Jiri, where ya bean? How ya bean? To all sorts of greener pastures: went back to Delphi for any really serious work, and explored functional languages: Haskell, Caml and Clean (a nice new version came out last week!). I also spent a bit of time with Icon (mainly Unicon), Python (very nice, not at all as slow as some people would like us to believe, especially if you use the fast array module, but, granted, a bit on the bulky side) and Lua, which is, I think, the nicest free little scripting language around, by far! I have also been playing with Linux in preparation for the moment Bill pulls the plug on Win98SE, the last OS I bought from those Redmond crooks, but , unfortunately, only the commercial Lindows support all the weird hardware combinations I always seem to finish with... Ray Smith wrote: >There was some discussion on the list a while ago about this. > >It's interesting in the FAQ is this: > >"The language should have most of the following desireable features: > > 1. Ability to read/write 4K buffers, bypassing standard I/O. > 2. Process control (i.e. fork()/wait()). > 3. Exceptions. > 4. Regular Expressions (preferably Perl compatible). > 5. Linux Kernel Threads. > 6. Internet Sockets. > 7. Objects. > 8. Ability to print out its own version number. > 9. A module system, and separate compilation of modules (if >compiled). > >I may make some exceptions to the above, but only if I feel like it." > >The "author" is limiting the languages used to include "what he thinks" >is the minimum requirements of a language. > >Euphoria for instance doesn't come close to meeting these requirements. Ray, that's true, but looking at the Win version, its author seems to be much more accommodating. And anyhow, I thought any sort of more 'objective' comparison would be more interesting than the frequently embarrassing blurb. jiri
4. Re: The Great Computer Language Shootout
- Posted by kbochert at copper.net Nov 08, 2003
- 624 views
On 8 Nov 2003 at 14:01, jiri babor wrote: > > > C. K. Lester wrote: > >Jiri, where ya bean? How ya bean? > > To all sorts of greener pastures: went back to Delphi for any really serious > work, and explored functional languages: Haskell, Caml and Clean (a nice new > version came out last week!). Got a URL for Clean? I also spent a bit of time with Icon (mainly > Unicon), Python (very nice, not at all as slow as some people would like us > to believe, especially if you use the fast array module, but, granted, a bit > on the bulky side) and Lua, which is, I think, the nicest free little > scripting language around, by far! I have also been playing with Linux in > preparation for the moment Bill pulls the plug on Win98SE, the last OS I > bought from those Redmond crooks, but , unfortunately, only the commercial > Lindows support all the weird hardware combinations I always seem to finish > with... > > Ray Smith wrote: > >There was some discussion on the list a while ago about this. > > > >It's interesting in the FAQ is this: > > > >"The language should have most of the following desireable features: > > > > 1. Ability to read/write 4K buffers, bypassing standard I/O. > > 2. Process control (i.e. fork()/wait()). > > 3. Exceptions. > > 4. Regular Expressions (preferably Perl compatible). > > 5. Linux Kernel Threads. > > 6. Internet Sockets. > > 7. Objects. > > 8. Ability to print out its own version number. > > 9. A module system, and separate compilation of modules (if > >compiled). > > > >I may make some exceptions to the above, but only if I feel like it." > > > >The "author" is limiting the languages used to include "what he thinks" > >is the minimum requirements of a language. > > > >Euphoria for instance doesn't come close to meeting these requirements. > > Ray, that's true, but looking at the Win version, its author seems to be > much more accommodating. And anyhow, I thought any sort of more 'objective' > comparison would be more interesting than the frequently embarrassing blurb. > > jiri I have implemented 14 of the benchmarks in Bach, which has exceptions, objects and regular expressions. The built-in hashtable support was also very important for good results on several tests. ktb
5. Re: The Great Computer Language Shootout
- Posted by jiri babor <jbabor at paradise.net.nz> Nov 08, 2003
- 631 views
Clean: http://www.cs.kun.nl/~clean/index.html 14 benchmarks should give you a fair comparison. How did it look? jiri ----- Original Message ----- From: <kbochert at copper.net> > On 8 Nov 2003 at 14:01, jiri babor wrote: > > > > > C. K. Lester wrote: > > >Jiri, where ya bean? How ya bean? > > > > To all sorts of greener pastures: went back to Delphi for any really serious > > work, and explored functional languages: Haskell, Caml and Clean (a nice new > > version came out last week!). > Got a URL for Clean? > > I also spent a bit of time with Icon (mainly > > Unicon), Python (very nice, not at all as slow as some people would like us > > to believe, especially if you use the fast array module, but, granted, a bit > > on the bulky side) and Lua, which is, I think, the nicest free little > > scripting language around, by far! I have also been playing with Linux in > > preparation for the moment Bill pulls the plug on Win98SE, the last OS I > > bought from those Redmond crooks, but , unfortunately, only the commercial > > Lindows support all the weird hardware combinations I always seem to finish > > with... > > > > Ray Smith wrote: > > >There was some discussion on the list a while ago about this. > > > > > >It's interesting in the FAQ is this: > > > > > >"The language should have most of the following desireable features: > > > > > > 1. Ability to read/write 4K buffers, bypassing standard I/O. > > > 2. Process control (i.e. fork()/wait()). > > > 3. Exceptions. > > > 4. Regular Expressions (preferably Perl compatible). > > > 5. Linux Kernel Threads. > > > 6. Internet Sockets. > > > 7. Objects. > > > 8. Ability to print out its own version number. > > > 9. A module system, and separate compilation of modules (if > > >compiled). > > > > > >I may make some exceptions to the above, but only if I feel like it." > > > > > >The "author" is limiting the languages used to include "what he thinks" > > >is the minimum requirements of a language. > > > > > >Euphoria for instance doesn't come close to meeting these requirements. > > > > Ray, that's true, but looking at the Win version, its author seems to be > > much more accommodating. And anyhow, I thought any sort of more 'objective' > > comparison would be more interesting than the frequently embarrassing blurb. > > > > jiri > I have implemented 14 of the benchmarks in Bach, which has exceptions, > objects and regular expressions. The built-in hashtable support was also very > important for good results on several tests. > > > ktb
6. Re: The Great Computer Language Shootout
- Posted by kbochert at copper.net Nov 08, 2003
- 643 views
On 8 Nov 2003 at 17:46, jiri babor wrote: > > > Clean: http://www.cs.kun.nl/~clean/index.html > Thanks. > 14 benchmarks should give you a fair comparison. How did it look? > > jiri > Mostly very good. The complete list of results is at: http://catexa.com/bachman/html/benchmarks.html KtB
7. Re: The Great Computer Language Shootout
- Posted by Derek Parnell <ddparnell at bigpond.com> Nov 08, 2003
- 610 views
----- Original Message ----- From: <kbochert at copper.net> To: <EUforum at topica.com> Subject: Re: The Great Computer Language Shootout > > > On 8 Nov 2003 at 17:46, jiri babor wrote: > > > > > Clean: http://www.cs.kun.nl/~clean/index.html > > > Thanks. > > 14 benchmarks should give you a fair comparison. How did it look? > > > > jiri > > > Mostly very good. The complete list of results is at: > http://catexa.com/bachman/html/benchmarks.html > I assume that the percentages in this comparision mean that Bach is faster than Eu2.3. The format of the table is a bit ambiguous - at first I thought you were saying that Bach took 102% of the time that Eu2.3 took, for example. -- Derek
8. Re: The Great Computer Language Shootout
- Posted by kbochert at copper.net Nov 08, 2003
- 603 views
On 8 Nov 2003 at 20:41, Derek Parnell wrote: > > > ----- Original Message ----- > From: <kbochert at copper.net> > To: <EUforum at topica.com> > Subject: Re: The Great Computer Language Shootout > > > > On 8 Nov 2003 at 17:46, jiri babor wrote: > > > > > > > > Clean: http://www.cs.kun.nl/~clean/index.html > > > > > Thanks. > > > 14 benchmarks should give you a fair comparison. How did it look? > > > > > > jiri > > > > > Mostly very good. The complete list of results is at: > > http://catexa.com/bachman/html/benchmarks.html > > > > I assume that the percentages in this comparision mean that Bach is faster > than Eu2.3. The format of the table is a bit ambiguous - at first I thought you > were saying that Bach took 102% of the time that Eu2.3 took, for example. > > -- > Derek I'll try and clear that up. As you guessed, 102% is good for Bach. The actual result will vary somewhat depending on the exact details of the test, so the 2% is within the margin of error, but it was a moral victory for me. I had to work VERY hard to maintain Eu's speed. regards KtB
9. Re: The Great Computer Language Shootout
- Posted by Irv Mullins <irvm at ellijay.com> Nov 08, 2003
- 652 views
KtB wrote: Jiri wrote: >> 14 benchmarks should give you a fair comparison. How did it look? > > >> jiri >Mostly very good. The complete list of results is at: >http://catexa.com/bachman/html/benchmarks.html So, how do we get Bach compiled for Linux? Irv
10. Re: The Great Computer Language Shootout
- Posted by EUPHORiCK <euphoric at cklester.com> Nov 08, 2003
- 603 views
Ray Smith wrote: Ray, I'm just your ordinary, average hobbyist programmer, with a few commercial programs (by which I mean programs that get used by a company on a daily basis and on which that company depends)... So, in the interest of my education, can you answer the following for me...? >"The language should have most of the following desireable features: > > 1. Ability to read/write 4K buffers, bypassing standard I/O. > Why [should a language have this]? What does EUPHORIA do? > 2. Process control (i.e. fork()/wait()). > This is for threading, right? Is there a good example of when this would be useful? I'm thinking probably for huge database management applications... > 3. Exceptions. > Why? > 4. Regular Expressions (preferably Perl compatible). > Why? And don't we have a library for this? > 5. Linux Kernel Threads. > Okay, so maybe process control isn't for threading... :/ > 6. Internet Sockets. > Available in a library, right? > 7. Objects. > Why? And isn't this available in Bach? > 8. Ability to print out its own version number. > Okaaaay. And why? (EUPHORIA does this when you run the interpreter, right?) > 9. A module system, and separate compilation of modules (if >compiled). > Whosee whatee?! >I may make some exceptions to the above, but only if I feel like it." > >The "author" is limiting the languages used to include "what he thinks" >is the minimum requirements of a language. > Yes... >Euphoria for instance doesn't come close to meeting these requirements. > So...? >Many people have on numerious occasions pointed out these limitations >and strangely enough alot of the people don't seem to be around here >anymore. > > One man's "limitations" is another man's "hurdles."
11. Re: The Great Computer Language Shootout
- Posted by EUPHORiCK <euphoric at cklester.com> Nov 09, 2003
- 593 views
Ray Smith wrote: Ray, thanks for your response. You know I appreciate when people help me expand the brain... ;) >Hi CK, > >EUPHORiCK wrote: > >>Ray, I'm just your ordinary, average hobbyist programmer, with a few >>commercial programs (by which I mean programs that get used by a company >>on a daily basis and on which that company depends)... So, in the >>interest of my education, can you answer the following for me...? > >I don't know why he may have included some of these requirements >but I'll try to give some possible explanations. > >>> 3. Exceptions. >>> >>Why? >> >If you're running any type of server process how do you recover from >errors? By Exceptions. Exceptions also in some cases make >programming more intuitive. Exceptions just aren't for server >programms by the way all proghrams can become more roboust by using >exceptions. > Are we talking exceptions from syntax errors? Obviously not, right? So are exceptions a mere convenience? or do they provide some additional functionality that I'm missing when using EUPHORIA? >>> 6. Internet Sockets. >>> >>Available in a library, right? >> >I don't think we have a good cross platform TCP library. > There are some available, however, to which EUPHORIA could interface, right? >>> 7. Objects. >>> >>Why? And isn't this available in Bach? >> >We aren't talking about Bach :) > I know. But you didn't answer the "why" part. :P >>> 8. Ability to print out its own version number. >>> >>Okaaaay. And why? (EUPHORIA does this when you run the interpreter, >>right?) >> >Yes, eu does this if you don't specify a program to run. >Do you need an answer as to why this is good? > Yes. Why is it good? Or why is not having it bad? >>>Many people have on numerious occasions pointed out these limitations >>>and strangely enough alot of the people don't seem to be around here >>>anymore. >>> Well, if they're runnin' to Python or Clean (sheesh!), then I can't imagine they feel much better... ;) Of course, you have to look at it from my perspective: I'm a single dad with NO time for learning new languages. I use EUPHORIA because it's what I know, and it's been good knowin' it. Fast and easy. That's how I like it. When I consider looking at other languages, most of the time the features of that particular language don't interest me or they bother me enough to shelve it for later. Beyond that, there's a learning curve, and that takes time (which, again, I don't have). One day, when I retire, I'll be able to consider more languages. However, I won't do that because I'll be on the beach playing with my children and grand children. Like Jiri. 'cept I don't know if he's on a beach. heheh. :P
12. Re: The Great Computer Language Shootout
- Posted by Irv Mullins <irvm at ellijay.com> Nov 09, 2003
- 611 views
On Saturday 08 November 2003 10:27 pm, CK wrote: > Are we talking exceptions from syntax errors? Obviously not, right? So > are exceptions a mere convenience? or do they provide some additional > functionality that I'm missing when using EUPHORIA? There are errors which are difficult if not impossible to predict. And others which seem so unlikely that it doesn' t seem worth the effort to write all the necessary "guard code" to catch them. Yet those errors are certain to occur when someone else uses your program, and you might prefer that the error be handled gracefully. A program crash with reference to "see ex.err" is not what I would call "graceful". Wouldn't it be easier to write: try a series of steps involving writing data to a floppy disk otherwise display a message about being "unable to write to disk" end instead of trying to write convoluted code which would check every conceivable way that accessing a floppy disk could go wrong? (no disk, write protected, bad media, not formatted .....) > >>> 6. Internet Sockets. > >> > >>Available in a library, right? > > > >I don't think we have a good cross platform TCP library. > > There are some available, however, to which EUPHORIA could interface, > right? Any complete? > >>> 7. Objects. > >> > >>Why? And isn't this available in Bach? > > > >We aren't talking about Bach :) > > I know. But you didn't answer the "why" part. :P Objects are *way* overrated. Yet they're extremely useful in certain places. Some people feel like they can't program without them, and that may be true; who am I to argue? > >>> 8. Ability to print out its own version number. > >> > >>Okaaaay. And why? (EUPHORIA does this when you run the interpreter, > >>right?) > > > >Yes, eu does this if you don't specify a program to run. > >Do you need an answer as to why this is good? > > Yes. Why is it good? Or why is not having it bad? Suppose your Euphoria program requires features which are found only in 2.4. Would you prefer to politely notify users who are running 2.2 that they should upgrade, or would you rather just have your program crash with some meaningless (to them) error? Besides, since the information obviously exists already, why not make it available as a global constant? VERSION seems like a suitable name:) Irv -- Robert Tappen Morris, Jr., got six months in jail for crashing 10% of the computers that Bill Gates made $100 million crashing last weekend.
13. Re: The Great Computer Language Shootout
- Posted by Pete Lomax <petelomax at blueyonder.co.uk> Nov 09, 2003
- 606 views
On Sun, 9 Nov 2003 00:32:45 -0500, Irv Mullins <irvm at ellijay.com> wrote: >> >>> 8. Ability to print out its own version number. > >Suppose your Euphoria program requires features which are found only in 2.4. <snip> I think I'm in a silly mood, it's difficult to tell Anyway, [drum roll and trumpets please] you can knock that one off the list... include wildcard.e object path integer lp integer fn sequence version integer lv path=lower(command_line()) if equal(path[1],path[2]) then -- if program is bound, we don't care what version -- or even whether euphoria is installed or not. puts(1,"bound?") if getc(0) then end if abort(0) end if path=getenv("EUDIR") if atom(path) then path=command_line() path=lower(path[1]) lp=length(path) if lp>7 and equal(path[lp-6..lp],"exw.exe") then lp-=7 elsif lp>6 and equal(path[lp-5..lp],"ex.exe") then lp-=6 elsif lp>2 and equal(path[lp-1..lp],"eu") then -- untested lp-=2 else puts(1,"unknown executable\n") if getc(0) then end if abort(0) end if if lp<5 or not find(path[lp],"\\/") or not equal(path[lp-3..lp-1],"bin") or not find(path[lp-4],"\\/") then puts(1,"bin dir not recognised\n") if getc(0) then end if abort(0) end if path=path[1..lp-5] end if path&="\\include\\get.e" fn=open(path,"r") if fn=-1 then printf(1,"error opening %s\n",{path}) if getc(0) then end if abort(0) end if version=gets(fn) close(fn) lv=length(version) while find(version[lv],"\r\n") do lv-=1 end while version=version[lv-2..lv] if not equal(version,"2.4") then printf(1,"Version is:%s\n",{version}) puts(1,"upgrade required\n") if getc(0) then end if abort(0) end if Maybe Rob can add this to misc.e <Chuckle> Pete http://palacebuilders.pwp.blueyonder.co.uk/euphoria.html
14. Re: The Great Computer Language Shootout
- Posted by Irv Mullins <irvm at ellijay.com> Nov 09, 2003
- 650 views
On Sunday 09 November 2003 02:00 am, you wrote: > > > On Sun, 9 Nov 2003 00:32:45 -0500, Irv Mullins <irvm at ellijay.com> > > wrote: > >> >>> 8. Ability to print out its own version number. > > > >Suppose your Euphoria program requires features which are found only in > > 2.4. > > <snip> > > I think I'm in a silly mood, it's difficult to tell > > Anyway, [drum roll and trumpets please] you can knock that one off the > list... > > include wildcard.e > object path > integer lp > integer fn > sequence version > integer lv > > path=lower(command_line()) > if equal(path[1],path[2]) then > -- if program is bound, we don't care what version > -- or even whether euphoria is installed or not. > puts(1,"bound?") > if getc(0) then end if > abort(0) > end if > path=getenv("EUDIR") > if atom(path) then > path=command_line() > path=lower(path[1]) > lp=length(path) > if lp>7 and equal(path[lp-6..lp],"exw.exe") then > lp-=7 > elsif lp>6 and equal(path[lp-5..lp],"ex.exe") then > lp-=6 > elsif lp>2 and equal(path[lp-1..lp],"eu") then -- untested > lp-=2 > else > puts(1,"unknown executable\n") > if getc(0) then end if > abort(0) > end if > if lp<5 > or not find(path[lp],"\\/") > or not equal(path[lp-3..lp-1],"bin") > or not find(path[lp-4],"\\/") then > puts(1,"bin dir not recognised\n") > if getc(0) then end if > abort(0) > end if > path=path[1..lp-5] > end if > path&="\\include\\get.e" > fn=open(path,"r") > if fn=-1 then > printf(1,"error opening %s\n",{path}) > if getc(0) then end if > abort(0) > end if > version=gets(fn) > close(fn) > lv=length(version) > while find(version[lv],"\r\n") do > lv-=1 > end while > version=version[lv-2..lv] > if not equal(version,"2.4") then > printf(1,"Version is:%s\n",{version}) > puts(1,"upgrade required\n") > if getc(0) then end if > abort(0) > end if > > > Maybe Rob can add this to misc.e > <Chuckle> > Pete > http://palacebuilders.pwp.blueyonder.co.uk/euphoria.html Contribute that to the archives. It fits perfectly into Rob's philosophy of making his users write everything as "includes", rather than adding such things to the language base. Irv
15. Re: The Great Computer Language Shootout
- Posted by "Mike Sabal" <Sabal.Mike at notations.com> Nov 10, 2003
- 631 views
> One man's "limitations" is another man's "hurdles." ... is another man's (or woman's) blessing. In what other language can you fit an entire Windows application (with no less than 500 objects) on a single floppy disk?
16. Re: The Great Computer Language Shootout
- Posted by euphoric <euphoric at cklester.com> Nov 10, 2003
- 595 views
Mike Sabal wrote: >>One man's "limitations" is another man's "hurdles." >> >> >... is another man's (or woman's) blessing. In what other language can >you fit an entire Windows application (with no less than 500 objects) on >a single floppy disk? > > Preach it!
17. Re: The Great Computer Language Shootout
- Posted by Irv Mullins <irvm at ellijay.com> Nov 10, 2003
- 627 views
On Monday 10 November 2003 09:18 am, Mike wrote: > > One man's "limitations" is another man's "hurdles." > > ... is another man's (or woman's) blessing. In what other language can > you fit an entire Windows application (with no less than 500 objects) on > a single floppy disk? ASM. Take a look at some of the programs on http://grc.com 30 to 100 k, complete, fast, windows programs. I've seen some of his code, and it is actually clearer and more understandable than Eu/Win32lib. Irv
18. Re: The Great Computer Language Shootout
- Posted by Bruce M. Axtens <bruce_axtens at yahoo.com.au> Nov 14, 2003
- 583 views
Possibly a better forum for presenting Euphoria to the outside world would be to submit code to PLEAC "PLEAC - Programming Language Examples Alike Cookbook" <http://pleac.sourceforge.net/>. The maintainer says "Following the great Perl Cookbook (by Tom Christiansen & Nathan Torkington, published by O'Reilly) which presents a suite of common programming problems solved in the Perl language, this project aims to gather fans of programming, in order to implement the solutions in other programming languages. If successful, this project may become a primary resource for quick, handy and free reference to solve most common programming problems using higher-level programming languages, and for comparison on ease-of-use and power/efficiency of these languages. " Bruce.
19. Re: The Great Computer Language Shootout
- Posted by kbochert at copper.net Nov 14, 2003
- 595 views
On 13 Nov 2003 at 22:21, Bruce M. Axtens wrote: > > > Possibly a better forum for presenting Euphoria to the outside world > would be to submit code to PLEAC "PLEAC - Programming Language Examples > Alike Cookbook" <http://pleac.sourceforge.net/>. > > The maintainer says "Following the great Perl Cookbook (by Tom > Christiansen & Nathan Torkington, published by O'Reilly) which presents > a suite of common programming problems solved in the Perl language, this > project aims to gather fans of programming, in order to implement the > solutions in other programming languages. > > If successful, this project may become a primary resource for quick, > handy and free reference to solve most common programming problems using > higher-level programming languages, and for comparison on ease-of-use > and power/efficiency of these languages. " > > Bruce. Sounded great, but I checked the site FAQ page, and they explicitly state that they are only interested in free software (as in GNU, nor free of charge). GPL snobbery Might be interesting to do something similar for non-free scripting languages. There must be others besides Euphoria and Bach ?? Karl Bochert