lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


> > I believe that this "break N" will kill code readability as sure as
> > "goto" would.
> 
> Yeah, I would get lost pretty quick!  Named labels would help [...]

If that could save Steve's right arm, we like the idea of break with
labels.

In Lua, we cannot have traditional labels, because the syntax "foo:"
already has a different meaning. Instead, a simple syntax would be to
add labels only to "do end" blocks, for instance like this:

  do :label:
    ...
  end

Then, a continue could be written like here:

  while cond do
    do :process_item:

                    break :process_item:

    end
  end

There are several details that could change (other mark instead
of colons, whether the label after break needs marks, whether an
optional [or mandatory] label could be added after the corresponding
'end', etc.), but the basic idea would not change much.

-- Roberto