David W Noon wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Thu, 08 Oct 2015 16:12:56 +0000, Mark Morgan Lloyd
(markmll.fpc-de...@telemetry.co.uk) wrote about "Re: [fpc-devel] new
features and facilities" (in <mv64m9$95v$1...@pye-srv-01.telemetry.co.uk>):
Ondrej Pokorny wrote:
As Michael has said, adding an extra else or for that matter
otherwise would be a problem.
And what about the inline if? That should be backwards compatible
at a first glance. And it would be a fun thing because the Delphi
community has asked for it for many years and Embarcadero looks
like they won't add it at all :)
Inline if is an ALGOL feature, and it's inexplicable why it's never
been in Pascal.
Indeed, it is even more succinct in C/C++:
x = <boolean> ? <then part> : <else part>;
At which point you'll have various members of the Pascal community
decrying it as too C-like.
This was taken directly from ALGOL 60 and remains a very elegant feature.
However, Jensen & Wirth excluded it from the original Pascal Report.
More to the point, I don't believe it was in in Wirth's early Pascal
compilers although it was in ALGOL-W. This is actually quite a messy
area, since ALGOL 68 changed the syntax to add an explicit FI for
compatibility with the statement-level IF THEN ELSE FI.
ALGOL also had inline CASE etc., and some implementations (e.g.
Burroughs) extended this to accomodate jump tables etc. Curiously,
Wirth's Stanford-era compilers use these liberally.
--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk
[Opinions above are the author's, not those of his employers or colleagues]
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel