Minor fixes in 1990/dds/README.md

Format fixes in README.md including making unordered lists to make the
rendered content easier to read and follow.

I've also become aware of a problem with the way the author formatting
was done in recent days in the README.md files that now have to all be
fixed: there needs to be spaces after each line or else the author
information will be one line which is definitely wrong. I think the only
one I got this right is, ironically or not :-), my own entries, namely
because I wanted to make sure that they looked okay (I did 'make sure'
that some of the others did too but that was to changes that I was
unsure of .. ironically leaving out one I should have known but probably
just forgot). Thus many pull requests will be made unless I do it in a
mass fix which I suppose is possible to save time.
This commit is contained in:
Cody Boone Ferguson committed 2023-04-09 04:45:55 -07:00
1 parent 846ff351e0
commit 081876e662
1 file changed
+70 -60
+70 -60
View File
@@ -1,10 +1,10 @@
# Best Language Tool
Diomidis Spinellis
Imperial College, University of London
Myrsinis 1
GR-145 62 Kifissia
Greece
Diomidis Spinellis
Imperial College, University of London
Myrsinis 1
GR-145 62 Kifissia
Greece
## To build:
@@ -16,26 +16,28 @@ you Yusuke!
[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) removed the erroneous
prototype to `fopen()` and made this use `fgets()` instead of `gets()` to make
it safer and to prevent a potentially alarming warning at linking or runtime.
Thank you Cody for your assistance!
it safer and to prevent a potentially alarming warning at compiling and/or
linking and/or runtime. Thank you Cody for your assistance!
## To run
./dds
```sh
./dds
```
## Try:
Give the following lines as input:
OLD LANDER.BAS
RUN
```
OLD LANDER.BAS
RUN
```
NOTE: this is case sensitive.
## Judges' comments:
Be sure not to run out of fuel!
@@ -43,40 +45,53 @@ Be sure not to run out of fuel!
This is the DDS-BASIC Interpreter (Version 1.00).
Immediate commands:
### Immediate commands:
RUN LIST NEW OLD filename
BYE SAVE filename
- RUN
- LIST
- NEW
- OLD filename
- BYE
- SAVE filename
Program commands:
### Program commands:
variable names a to z variables initialized to 0 on RUN
FOR var = exp TO exp NEXT variable
GOSUB exp RETURN
GOTO exp IF exp THEN exp
INPUT variable PRINT string
PRINT exp var = exp
REM any text END
- variable names a to z
- variables initialized to 0 on RUN
- FOR var = exp TO exp
- NEXT variable
- GOSUB exp
- RETURN
- GOTO exp
- IF exp THEN exp
- INPUT variable
- PRINT string
- PRINT exp
- var = exp
- REM any text
- END
Expressions (ranked by precedence):
### Expressions (ranked by precedence):
Bracketed expressions
number (leading 0 for octal, 0x for hex, else decimal), variable
Unary -
* /
+ -
= <>
> <
<= >=
(* and + are also used for boolean AND and boolean OR)
Boolean expressions evaluate to 0 for false and 1 for true
- Bracketed expressions
- number (leading 0 for octal, 0x for hex, else decimal), variable
- Unary -
- `*` `/`
- `+` `-`
- `=` `<>`
- `>` `<`
- `<=` `>=`
Editing:
(`*` and `+` are also used for boolean AND and boolean OR)
Boolean expressions evaluate to 0 for false and 1 for true.
### Editing:
- Line editor using line re-entry.
- A line number with nothing following it, deletes the line.
Input format:
### Input format:
- Free format positioning of tokens on the line.
- No space is allowed before the line number.
@@ -85,38 +100,33 @@ Input format:
- ALL INPUT MUST BE UPPERCASE.
Limits:
### Limits:
Line numbers 1-10000
Line length 999 characters
FOR nesting 26
GOSUB 999 levels
Program Dynamically allocated
Expressions -32768 - 32767 for 16 bit machines,
-2147483648 - 2147483647 for 32 bit machines
Error checking / error reports:
- Line numbers 1-10000
- Line length 999 characters
- FOR nesting 26
- GOSUB 999 levels
- Program Dynamically allocated
- Expressions -32768 - 32767 for 16 bit machines, -2147483648 - 2147483647 for 32 bit machines
### Error checking / error reports:
No error checking is performed.
It might dump core if a syntax or semantic error is encountered.
### Hosting Environment:
Hosting Environment:
ANSI C, traditional K&R C or OSF ANDF ASCII or EBCIDIC character set 48K bytes
memory.
ANSI C, traditional K&R C or OSF ANDF
ASCII or EBCIDIC character set
48K bytes memory
The Speed of DDS-BASIC Interpreter (Version 1.00) relative to Microsoft Advanced
BASIC 3.31 is approximately 60%.
The Speed of DDS-BASIC Interpreter (Version 1.00). relative to
Microsoft Advanced BASIC 3.31 is Approximately 60%.
The code size could be further reduced by doing ugly things like
not declaring the return type of functions, not freeing memory,
#defining define, and joining lines. In its present 1536 character
form the program is reasonably portable (it may fail to run in a
tagged object architecture) and nicely formatted (it fits in an
80*25 screen).
The code size could be further reduced by doing ugly things like not declaring
the return type of functions, not freeing memory, #defining define, and joining
lines. In its present 1536 character form the program is reasonably portable
(it may fail to run in a tagged object architecture) and nicely formatted (it
fits in an `80*25` screen).
## Copyright and CC BY-SA 4.0 License: