# GOTO operator

- Thread: https://externals.io/message/11645
- Original archive: https://news-web.php.net/php.internals/11645
- Started by Frank M. Kromann on 2004-07-29T23:15:31+00:00
- Messages: 5
- Reply by email to internals@lists.php.net
- More for agents: search with https://externals.io/search.md?q={query} · JSON API at https://externals.io/api · documentation at https://externals.io/llms.txt

---

## #11645 — Frank M. Kromann — 2004-07-29T23:15:31+00:00

URL: https://externals.io/message/11645#11645

We were all newbies at some point and most of us (not including myself)
learned how to handle the language, and so will the newbies of today, even
if GOTO is a part of the language. I don't see a need to make this an
ini-option. It is allready an option - use t or leave it alone.

- Frank

> Hello,
> 
>   I think we should add an INI option:
> 
>   php_newbie true|false
> 
>   ;)
> 
> -- 
> Best regards,
>  Jason                            mailto:jason@ionzoft.com
> 
> Thursday, July 29, 2004, 8:54:34 PM, you wrote:
> 
> AH> Sara Golemon wrote:
> > […]
> AH> The "hack" is working. The manual says :
> AH> " Advanced C users may be familiar with a different usage of the
do..while loop,
> AH> to allow stopping execution in the middle of code blocks, by
encapsulating them
> AH> with do..while (0), and using the break  statement. The following
code fragment
> AH> demonstrates this:" (a similar code follows)
> AH> " Don't worry if you don't understand this right away or at all. You
can code scripts
> AH> and even powerful scripts without using this 'feature'. "
> AH> (the manual states that people can code powerful things without goto
hack).
> AH> Sara, if you need to have the goto, you know how to implement it
with do..while.
> AH> The average Joe may not need goto in some case but he will find that
it simplifies
> AH> his job (but making code clumsy, something what he does not
realize).
> AH> It is not because I don't like the power of goto, I would like not
to be given in the
> AH> hands of the newbie.
> 
> AH> andrey

---

## #11662 — Jevon Wright — 2004-07-30T10:53:37+00:00

URL: https://externals.io/message/11645#11662 · In reply to: #11645

Why not make it hard for users to use GOTO in the first place?

Develop some wacky construct that you have to use instead... that way, it
will scare off novice users, and expert programmers will HAVE to know what
they're doing and know that they really need it before they have to
implement it. It's along the lines of "make the most dangerous stuff the
hardest to do".

I'm not sure how, though... a huge language construct
(goto_this_line_please)? Use numbers instead of labels? Relative jumping?
Require extra messages? A weird symbolic construct? *shrug*

On another note, if a GOTO was added, the ability to go " goto foo$bar "
(dynamic goto) could add another gold star onto PHP's coolness.

Jevon

----- Original Message ----- 
From: "Frank M. Kromann" <frank@kromann.info>
To: <internals@lists.php.net>
Sent: Friday, July 30, 2004 11:15 AM
Subject: Re: [PHP-DEV] GOTO operator


> We were all newbies at some point and most of us (not including myself)
> learned how to handle the language, and so will the newbies of today, even
> if GOTO is a part of the language. I don't see a need to make this an
> ini-option. It is allready an option - use t or leave it alone.
>
> - Frank
>
> > […]
> do..while loop,
> > […]
> encapsulating them
> > […]
> code fragment
> > […]
> can code scripts
> > […]
> hack).
> > […]
> with do..while.
> > […]
> it simplifies
> > […]
> realize).
> > […]
> to be given in the
> > […]

---

## #11663 — Paul G — 2004-07-30T12:10:42+00:00

URL: https://externals.io/message/11645#11663 · In reply to: #11662

----- Original Message ----- 
From: "Jevon Wright" <jevon@jevon.org>
To: "Frank M. Kromann" <frank@kromann.info>; <internals@lists.php.net>
Sent: Friday, July 30, 2004 6:53 AM
Subject: Re: [PHP-DEV] GOTO operator


> Why not make it hard for users to use GOTO in the first place?

how about a --with-more-rope (to hang yourself with) autoconf option?

paul

---

## #11666 — Aidan Lister — 2004-07-30T13:38:15+00:00

URL: https://externals.io/message/11645#11666 · In reply to: #11662

> Develop some wacky construct that you have to use instead... that way, it
> will scare off novice users, and expert programmers will HAVE to know what
> they're doing and know that they really need it before they have to
> implement it. It's along the lines of "make the most dangerous stuff the
> hardest to do".

I think this is probably one of the best ideas...

> I'm not sure how, though... a huge language construct
> (goto_this_line_please)? Use numbers instead of labels? Relative jumping?
> Require extra messages? A weird symbolic construct? *shrug*

I'd just disable it by default, force them to compile --with-goto

That definitely stops the novices, and allows experts to use it if they
reallllly need it.

Of course then portability then becomes a problem...

---

## #11763 — Derick Rethans — 2004-07-31T12:38:57+00:00

URL: https://externals.io/message/11645#11763 · In reply to: #11666

> > […]
>
> I think this is probably one of the best ideas...
>
> > […]
>
> I'd just disable it by default, force them to compile --with-goto
>
> That definitely stops the novices, and allows experts to use it if they
> reallllly need it.
>
> Of course then portability then becomes a problem...

So this is yet-another-bogus-idea ;-)

Derick
