Path: csiph.com!eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail
From: "R.Wieser"
Newsgroups: microsoft.public.scripting.vbscript
Subject: Re: inline "End If" bug, was Re: Weird bug
Date: Tue, 17 Nov 2015 20:47:36 +0100
Organization: Aioe.org NNTP Server
Lines: 137
Message-ID:
References:
NNTP-Posting-Host: XSLsI1Jcl7NultOj/0AyIg.user.speranza.aioe.org
X-Complaints-To: abuse@aioe.org
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200
X-Notice: Filtered by postfilter v. 0.8.2
X-Newsreader: Microsoft Outlook Express 5.00.2615.200
X-Priority: 3
X-MSMail-Priority: Normal
Xref: csiph.com microsoft.public.scripting.vbscript:11203
Evertjan,
> I am not interested in "other languages" here,
> only in the developement of this:
>
> Beginners All-purpose Symbolic Instruction Code.
Than our conversation ends here.
Not because of the language, but as you are going into the realm of the
"what if's". I have no interest in second-guessing what a language designer
might decide *his* language should evolve in.
> Seen in the light of other languages,
> Basic was as bad as Edsger Wybe Dijkstra
> promised it to be, IMO:
Which version of it please ?
> "BASIC programmers are mentally mutilated beyond hope of regeneration"
> said Edsger Wybe Dijkstra in
> How do we tell truths that might hurt? (1975-06-18)
So, you take that statement outof its context and time and are trying to put
it on several BASIC variants that have evolved sinds than, meaning for the
last 40 years ?
BASIC *might* have been bad in those days, but so is *any* programming
language in the hands of a nitwit. I've seen enough junk over the years, in
all sorts of languages (PHP, Java, .NET, C{something}, BASIC, you name it).
> The "End If" was never, formally or otherwise planned, introduced
> in the older single line If, it only was discovered in this NG
> and recognised as a bug by MS.
So ? They *stated* it was a bug, but I doubt it. And even if it was
introduced by accident, what does that matter if the result is quite
usefull, and does not break anything else (read: is consistent with the rest
of the language) ?
You know what *I* find odd ? That an "end if" may be followed by a colon
and than more code. That certainly breaks the "multi-line if" approach. :-)
Ofcorse, *not* allowing that would be an exception to the rule that *any*
command may be followed by a colon ...
> > Ofcourse, several of those languages have "command grouping"
Too bad you have taken a stance, bluntly disregarding this, quite important
difference between two types of implementation of a language, where VBScript
is in the group of "do not have it", and has, to solve it, created the "end
if".
The *only* squabble we have here is if it should be allowed in a single-line
"if" or not. Nothing more, nothing less.
Regards,
Rudy Wieser
-- Origional message:
Evertjan. schreef in berichtnieuws
XnsA555C799E3BFDeejj99@194.109.6.166...
> "R.Wieser" wrote on 17 Nov 2015 in
> microsoft.public.scripting.vbscript:
> >> Correct is:
> >>
> >> If boolean Then statement Else statement
> >
> > Nope. Its just how quite a few (but definitly not all!) languages have
> > defined it. It does not mean its the *only way* anyone may implement
> > it in his language.
> >
> > I know of languages which use your above description and work as
> > Mayayana described (continuing after a "then" if no "else" is found, or
> > after the first command after the "else").
>
> I am not interested in "other languages" here,
> only in the developement of this:
>
> Beginners All-purpose Symbolic Instruction Code.
>
> Seen in the light of other languages,
> Basic was as bad as Edsger Wybe Dijkstra promised it to be, IMO:
>
> "BASIC programmers are mentally mutilated beyond hope of regeneration"
> said Edsger Wybe Dijkstra in
> How do we tell truths that might hurt? (1975-06-18)
>
> [In fact our Edsger was primarily fighting a language that did everything
> with GoTo, no subroutines, no functions, so no modularity or black box
> testing, just making a unresolvable knot of even the smallest logical
> construct. And no possibility to sensibly name variables other than by a
> single Capital letter plus a number. Referring to his 1975 words however
is
> a joy in itself]
>
> =========================
>
> In principio [in the beginning] there was only:
>
> If boolean GoTo linenumber
>
> then came:
>
> If boolean Then statement
>
> and then:
>
> If boolean Then statement Else statement
>
> after that the multiline If was introduced:
>
> If boolean Then
> statement
> Else
> statement
> End If
>
> The multiline "ElseIf" addition even later.
>
> The "End If" was never, formally or otherwise planned, introduced
> in the older single line If, it only was discovered in this NG
> and recognised as a bug by MS.
>
> >
> > Ofcourse, several of those languages have "command grouping"
>
> [snip]
>
> --
> Evertjan.
> The Netherlands.
> (Please change the x'es to dots in my emailaddress)