Not exactly true. While modern BASIC has c ome a long way it
will never escape its roots which were not in the IT Production
world. Like Pascal it was intended to teach concepts and,
believe it or not, one of those concepts was not programming
Interesting statement. Coming from someone who admits to not being
familiar with the language.
Misunderstanding, again. What I am is not an expert in VMS BASIC.
I have used BASIC since the Kemeny/Kurtz days. I have done real
production work using BASIC on everything from Micros to Mainframes.
I have done business, financial and engineering programming in BASIC.
Perhaps older implementations of Basic were as described.
I stated that modern BASIC had improved but that doesn't change the
original purpose. The idea of "fixing" these languages (like they
also tried with Pascal even after the original author of Pascal
gave them an alternative) is little more than a band-aid when you
consider there were/are languages designed to do the work people
try to do with these languages.
Some time back, as I recall things, some of the compiler people at DEC
asked the question, "why cannot every language be able to do what
others do?". The result was the implementation of many new features
Exactly. "Lets put a band-aid on the language rather than do the proper
software engineering task of choosing the right tool for the job."
Simple: Choose the right tool for the job.
BASIC, like Pascal was intended to teach certain concepts. It was
not intended as a production language. Production languages existed,
even when BASIC and Pascal were created. In those days, new languages
weren't just ego trips. They were designed for particular tasks.
They should be used for the tasks they were designed for. That is
a major part of real software engineering.
You seem to be implying that VMS Basic is not a "right tool for the job".
Depends on the job. I only have an inkling into just what the
program(s) you do in BASIC are or do but I suspect from a real
software engineering standpoint BASIC was the wrong tool. What
made it the right tool may have been just your familiarity with
Does your opinion (that's what it is) out weight the opinions
My opinion based on decades of research by people much better at this
stuff than I am, but, yes, my opinion. Does the CDC's opinion on how
to handle COVID outweigh ordinary people's opinions? They claim to be
backed by "science". I, too, claim to be backed by computer science.
In the end, everyone is free to do as they please. The discussion is
purely academic. I have done many things in many different fields of
endeavor that I was told (usually after the fact) were impossible.
There have been and still are many serious applications
implemented using VMS Basic. Are all those people who use VMS Basic
"Wrong" is another of those words that can be more subjective than
objective. Could those applications actually be better if done
in a more suitable language? Probably. Are they doing the task
that was needed to be done. Yes.
I guess you can take 3 different approaches to evaluating Basic.
The anecdotal approach.
Basic was created in the mid 60's specifically for teaching.
Dartmouth Basic was not that useful for real world usage.
And computer scientists soon started criticizing Basic. Including
Dijkstra "It is practically impossible to teach good programming to
students that have had a prior exposure to BASIC: as potential
programmers they are mentally mutilated beyond hope of regeneration."
And that must mean that everything Basic will forever be bad.
The engineering approach.
Does the language has the data types, control structures, IO
support etc. to enable writing business applications.
Dartmouth Basic did not.
But VMS Basic seems to have what is needed. Data types
including decimal. Conditional and loops. Sequential and
There are a few warts: implicit type by last character in
variable name, lack of thread safety etc..
But overall VMS Basic is no worse than other VMS
Good solid 1980's technology.
And if one has to chose one of those traditional
1980's VMS procedural languages (Fortran, Cobol,
Basic, Pascal, C) then Pascal and Basic seems
by far the most obvious to use - they will result in
less more readable code than the other.
VB.NET Microsoft's latest incarnation of Basic
is a full blown OOP language with some FP support.
Good solid 2000's technology.
Microsoft's previous incarnation VB6 and VBS had
some limitations but were definitely usable as well.
The empirical approach.
VMS Basic has a piece of the VMS application development
market - I don't know exactly how how big - but while
Ada, PL/I etc. are gone then Basic is still supported, so
Dave is not the only user.
VB6 and VBS (in ASP) must have been one of the worlds
most used programming languages 1995-2005. It must have
VB.NET is definitely lacking behind C# but are still widely
used. It must be useful.
Trying to evolve existing languages into a different type
of language is not always a success.
I believe nobody in the Cobol community liked OO Cobol.
Fortran 77 to Fortran 90 was really an entirely new language
and a lot of users were lost in the process.
The Ada 83 to Ada 95 made the language very complicated.
The FP stuff added to Java 8 is not pretty.
But other are more lucky.
Object-Pascal and Delphi may not be super elegant addon
of OO, but the users liked it.
VMS Basic and the later MS Basic implementation also
managed to add totally new features (full OO for VB.NET,
somewhat OO for VB6/VBS) and be popular with
Basic seems to be good language to extend.
So Jon Reagan - when do we see OO in VMS Basic?