Re: Eu's poor design
- Posted by Ted Fines <fines at macalester.edu> Aug 16, 2003
- 531 views
Hi Andreas, You wrote: > If you wanted to make a functional programming > language, why did you implement variables and loops? Recursion & > constants would do. ...but then you wrote... > If Euphoria is intended for programming newbies, why is Euphoria case > sensitive? (Why are so many languages case sensitive by the way? That > way I have to remember exactly how the identifier was being written!) You seem to be criticizing the use of loops and variables (as opposed to recursion), yet you also seem to complain that Eu's case sensitivity is not good for programming newbies. Recursion is a much more difficult concept to anyone, including newbie programmers. It is also much more difficult to make changes to, and just not intuitive for most people. My point is that you seem to be making arguments from two opposing views here. By the way, I am not crazy about case sensitivity, either, be it in Unix, Linux, etc., or Euphoria or Perl. It's just something I don't like but have just accepted as something I have to deal with until I write my own OS/language. :) > - Block comments: While they are not essential, it is really dump > to put "--" before any line if I just want to comment out some code for > a short period time. I completely agree that block comments would be a great addition. They should already be available in Eu, and should be added. I disagree about the '--' as a comment indicator. Basically, who cares? This is a really minor point of Eu syntax and is not worth arguing about. As in, is "for i=1 to 10 do" better than "for (i=1;i+=1;i<11) {"? I'd say no, they're just different. You might as well argue over who is better, King Kong or Godzilla. (Though Kong obviously is.) Ted --On Saturday, August 16, 2003 11:47 AM +0000 Andreas Rumpf <pfropfen at gmx.net> wrote: > > > Lets face it, at its current state, Euphoria is rather useless for > programming real applications, for several reasons: > It lacks: > - Call by reference (the most important feature I want to add!): > Some say, it isn't needed in Eu, because you can simply return > a sequence. Yes, that's true. But apart from being tedious to type, > it makes the code much less efficient. > example: > seq[2][3][5] = func(seq[2][3][5]) -- this is just stupid > > So for real applications I would use global variables all over the place > (like the other Eu programmers do). (Great improvement over call by > reference!) > > (The reason why call by reference is missing is probably because Rob > didn't understand functional programming properly. Hey Rob, Euphoria is > no functional language! If you wanted to make a functional programming > language, why did you implement variables and loops? Recursion & > constants would do.) > > - Block comments: While they are not essential, it is really dump > to put "--" before any line if I just want to comment out some code for > a short period time. Apart from that, line comments (though being very > useful!) are really inconsequent: If line endings are not important for > the Eu interpreter why are comments/include statements different? And > why use -- for line comments when # would do (#! is allowed in the first > line for linux compability anyway!)? > By the way, the scanner should not be line-based for Euphoria (although > Rob probably did it this way - nobody knows why, it doesn't make much > sense), so block comments are NOT harder to scan than line comments! > > But there are other drawbacks: > allocate() and free() ??? I thought Euphoria had a garbage collector! > > If Euphoria is intended for programming newbies, why is Euphoria case > sensitive? (Why are so many languages case sensitive by the way? That > way I have to remember exactly how the identifier was being written!) > > I used to use hashing a lot. Guess what, in Euphoria most hash functions > can't be implemented (or only with poor performance!), because integers > don't wrap around but are converted to floating point when they get to > big! > > > This is really annoying because Euphoria is a great language full of > good ideas. I like it for small scripting tasks, but it is simply not > suited well for bigger programming tasks. > > --^---------------------------------------------------------------- > This email was sent to: fines at macalester.edu > > > TOPICA - Start your own email discussion group. FREE! > >