Differences between version 23 and previous revision of BASIC.
Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 23 | Last edited on Monday, May 2, 2005 4:14:18 am | by AristotlePagaltzis | Revert |
Older page: | version 22 | Last edited on Monday, May 2, 2005 4:09:47 am | by AristotlePagaltzis | Revert |
@@ -11,19 +11,19 @@
Not to be confused with VisualBasic, a wildly extended dialect of [BASIC] that only resembles its ancestor remotely and is still part of MicrosoftCorporation's portfolio and strategy.
In the original [BASIC] language, the available control structures are as primitive as those in AssemblyLanguage. A [BASIC] program is series of numbered statements that are usually executed in sequence. A __[GOTO| GoTo]__ statement sends execution to another statement. An __IF__ statement does that conditionally. Using __GOSUB__ and __RETURN__ you can implement subroutines, but there's no stack to pass parameters with.
-As there are no structuring constructs, there is no concept of scope, and every single variable is global. In the absence of user defined functions, expressiveness is extremely limited, so you need a ''lot'' of temporary variables. Combine these limitations, and the result is that most [BASIC] code is a mess that ranges somewhere between "
hideous"
and "
appalling"
, with occasional side trips to "
hair raising"
and "
seizure inducing"
.
+As there are no structuring constructs, there is no concept of scope, and every single variable is global. In the absence of user defined functions, expressiveness is extremely limited, so you need a ''lot'' of temporary variables. Combine these limitations, and the result is that most [BASIC] code is a mess that ranges somewhere between “
hideous”
and “
appalling,”
with occasional side trips to “
hair raising”
and “
seizure inducing.”
''It is practically impossible to teach good programming style to students that ~[sic] have had prior exposure to [BASIC]; as potential programmers they are mentally mutilated beyond hope of regeneration.''
- <br> --
EdsgerWybeDijkstra
+ <br> –
EdsgerWybeDijkstra
The language is so pathetically limited that it needs to be heavily extended to be useful. Of course, every implementor chose their own ways to do so, so there are thousands of dialects of [BASIC]. Some have quite sophisticated extensions, and most of those still in use have been extended to strongly resemble [Pascal].
[BASIC] became very popular in the era of HomeComputer~s because a [BASIC] interpreter is simple and so could easily be fit on a tiny [ROM]. Lots of little kids learned to program in one of the thousands of flavours of [BASIC] this way, some never to recover.
-BillGates (who for all we know is probably one of those never-recovered [BASIC] kids) started MicrosoftCorporation selling [BASIC] interpreters for various machines. Even the first [PC]s had it in [ROM], waiting to be activated by an __INT 18__ instruction. ''(I remember trying it in [DOS]'s debug program, and the machine would lock up saying "
no BASIC ROM installed"
or something. Sad..
)'' Ever since, MicrosoftCorporation's strategic products have been accompanied by ever evolving, ever less [BASIC]-like dialects of the language. You have probably heard of VisualBasic, which is only the latest (series of) rendition(s).
+BillGates (who for all we know is probably one of those never-recovered [BASIC] kids) started MicrosoftCorporation selling [BASIC] interpreters for various machines. Even the first [PC]s had it in [ROM], waiting to be activated by an __INT 18__ instruction. ''(I remember trying it in [DOS]'s debug program, and the machine would lock up saying “
no BASIC ROM installed”
or something. Sad…
)'' Ever since, MicrosoftCorporation's strategic products have been accompanied by ever evolving, ever less [BASIC]-like dialects of the language. You have probably heard of VisualBasic, which is only the latest (series of) rendition(s).
There is no use for [BASIC] on [Linux]. If you you think you want [BASIC], then you'd probably be happier with [Python] and a good learn-Python textbook.
----
CategoryProgrammingLanguages, CategoryDeprecatedProgrammingLanguages