Re: You can't compare language features, only languages

new topic     » goto parent     » topic index » view thread      » older message » newer message
evanmars said...
Shian_Lee said...
jimcbrown said...
Shian_Lee said...
ArthurCrump said...

I agree that 'goto' is a low level command. However, now that it has been introduced it cannot be removed.

"cannot" will never lead us anywhere.

The courage to change will lead us somewhere. But it needs courage.

It's better to solve a problem while it's small. As time goes by, problem only gets more complex.

How do you know that we haven't already passed the point of no return where goto is concerned?

Let the users vote for it in the front page. Add a short objective explanation, and just let them vote for a month or two.

Isn't that kind of how goto got included in the first place? Should we have a vote once a year or so to decide which feature/keywords should be removed and added?

Before you should do something - you have to realize something.

Going full speed forward, without analyzing the current state of the battle field - is what Stalin did, ignoring any possible results (11 to 14 millions dead Russian soldiers).

Moving Euphoria from a very high level language to a mix of low and high level statements - is a new strategy which should be reconsidered again, before moving forward.

GreenEuphorian said...
Shian_Lee said...
ArthurCrump said...

I agree that 'goto' is a low level command. However, now that it has been introduced it cannot be removed.

"cannot" will never lead us anywhere.

The courage to change will lead us somewhere. But it needs courage.

It's better to solve a problem while it's small. As time goes by, problem only gets more complex.

@Sian Lee: 'problem'?!? While I appreciate your posts, frankly I do not understand your worry about the 'goto' statement. I don't see it as a problem at all. What matters most, IMHO, is not having or not having a given feature, but to make sure that the programming experience is as smooth as possible (intuitive / respecting the least surprise principle). I do not see any reason for being bothered with the current features of Euphoria. Like you rightly said in an earlier post, let's make the current version more user friendly - this should be the focus.

When I was programming PLC's I had to change some programs which other people wrote.

Since PLC programming don't place any boundaries on the programmer - the code I found looked like a garbage bin; And I had to rewrite it from the beginning.

'goto' belongs to Assembly, the same way CHR$() or what ever it was belongs to BASIC.

Euphoria is losing its strength by adding strength.

irv said...

I have used 'goto' twice, I think, in EuGTK - and in both cases, it resulted in cleaner, easier to understand code. Using it more often that that would probably have been a mistake.

If 'goto' is a bad thing, perhaps it's not a fault of the language, but the result of the programmer choosing the wrong tool for the job.

If Euphoria should ever be a popular language, used by programmers from all levels, 'goto' is no more then a trouble maker. New users may find 'goto' a "magic" command, a joker card, that solves any distress.

LarryMiller said...

I voted against the inclusion of goto in Euphoria when the question came up. But I later concluded that it has it's place. You need to seriously consider any proposed use of goto. There is almost always a better way. But almost always is not always. There are unusual situations where it is the lesser evil of whatever other options are available. I believe that was the reasoning of those who wished it's inclusion in Euphoria.

The time for the decision on whether goto should be include in Euphoria has come and gone. It is a part of Euphoria and is being used. I don't see a sufficiently compelling reason to remove it.

If you "surrendered" to 'goto', then inline Assembly might be great as well.

I know from my personal experience that there is a solution for everything. Forcing the programmer to think how to solve a problem without using 'goto', only makes a better code and a better programmer.

In simple PLC 'goto' is not exist, only "gosub" (sometimes), it forced me to think about a better solutions, and it leaded me to find a much more advanced method to code a simple PLC - which used the PLC's limited resources in a much more efficient way.

_tom said...
ArthurCrump said...

Could 'goto' be marked as 'undesirable'?

This is the introduction to goto that I intend to put in the new documentation

goto

The goto flow control statement was added to Euphoria after prolonged discussion.

The goto is often considered to be:

  • Evil.
  • Should be removed from all languages.

Search the internet for "goto evil" and you will find lots of interesting reading.

The reality is that a goto, in a few rare situations, is the best choice.

Do not use the goto and be content that many programmers will support your programming style.

Use the goto, with discretion, and be grateful that Euphoria gives you a choice.

I am not grateful at all for this choice.

The lack of 'goto' in Euphoria has no meaning for me. I can live without it forever.

The existence of 'goto' in Euphoria leads me to think "What's next...?" and "What's the strategy?".

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu