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:
1 parent
846ff351e0
commit
081876e662
1 file changed
+70
-60
+70
-60
@@ -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:
|
||||
|
||||
|
||||
Reference in new issue
Block a user