endbasic 0.12.1

The EndBASIC programming language - CLI

    EndBASIC X.Y.Z
    Copyright YYYY-YYYY Julio Merino

    Type HELP for interactive usage information.

>>> Test logical AND
FALSE
FALSE
FALSE
TRUE
ERROR: 1:12: Cannot AND BOOLEAN and INTEGER
>>> Test logical OR
FALSE
TRUE
TRUE
TRUE
ERROR: 1:12: Cannot OR BOOLEAN and INTEGER
>>> Test logical XOR
FALSE
TRUE
TRUE
FALSE
ERROR: 1:12: Cannot XOR BOOLEAN and INTEGER
>>> Test logical NOT
TRUE
FALSE
>>> Test bitwise AND
 5
 0
 1234
ERROR: 1:11: Cannot AND DOUBLE and DOUBLE
>>> Test bitwise OR
 7
 6
-1
ERROR: 1:11: Cannot OR DOUBLE and DOUBLE
>>> Test bitwise XOR
 2
 6
-1235
ERROR: 1:11: Cannot XOR DOUBLE and DOUBLE
>>> Test bitwise NOT
-1
ERROR: 1:7: Expected INTEGER but found DOUBLE
>>> Test bitwise shift left
 12
-268435456
-2147483648
 0
-536870912
 0
 0
 0
ERROR: 1:13: Cannot << BOOLEAN and BOOLEAN
ERROR: 1:13: Cannot << BOOLEAN and INTEGER
ERROR: 1:11: Cannot << DOUBLE and INTEGER
ERROR: 1:13: Cannot << STRING and INTEGER
ERROR: 1:9: Cannot << INTEGER and BOOLEAN
ERROR: 1:9: Cannot << INTEGER and DOUBLE
ERROR: 1:9: Number of bits to << (-1) must be positive
>>> Test bitwise shift right
 3
-268435456
-1
 1
-2
-268435456
-1073741824
 939524096
 0
 0
-1
-1
ERROR: 1:13: Cannot >> BOOLEAN and BOOLEAN
ERROR: 1:13: Cannot >> BOOLEAN and INTEGER
ERROR: 1:11: Cannot >> DOUBLE and INTEGER
ERROR: 1:13: Cannot >> STRING and INTEGER
ERROR: 1:9: Cannot >> INTEGER and BOOLEAN
ERROR: 1:9: Cannot >> INTEGER and DOUBLE
ERROR: 1:9: Number of bits to >> (-1) must be positive
>>> Test = types
TRUE
FALSE
ERROR: 1:12: Cannot = BOOLEAN and INTEGER
TRUE
FALSE
TRUE
FALSE
TRUE
FALSE
TRUE
FALSE
TRUE
FALSE
ERROR: 1:10: Cannot = STRING and BOOLEAN
>>> Test <> types
FALSE
TRUE
ERROR: 1:12: Cannot <> BOOLEAN and INTEGER
FALSE
TRUE
FALSE
TRUE
FALSE
TRUE
FALSE
TRUE
FALSE
TRUE
ERROR: 1:10: Cannot <> STRING and BOOLEAN
>>> Test < types
ERROR: 1:13: Cannot < BOOLEAN and BOOLEAN
FALSE
TRUE
FALSE
FALSE
TRUE
FALSE
TRUE
FALSE
FALSE
TRUE
FALSE
TRUE
ERROR: 1:10: Cannot < STRING and BOOLEAN
>>> Test <= types
ERROR: 1:13: Cannot < BOOLEAN and BOOLEAN
FALSE
TRUE
TRUE
FALSE
TRUE
TRUE
FALSE
TRUE
TRUE
FALSE
TRUE
TRUE
FALSE
TRUE
TRUE
ERROR: 1:10: Cannot <= STRING and BOOLEAN
>>> Test > types
ERROR: 1:13: Cannot > BOOLEAN and BOOLEAN
FALSE
TRUE
FALSE
FALSE
TRUE
FALSE
TRUE
FALSE
FALSE
TRUE
FALSE
TRUE
ERROR: 1:10: Cannot > STRING and BOOLEAN
>>> Test >= types
ERROR: 1:13: Cannot > BOOLEAN and BOOLEAN
FALSE
TRUE
TRUE
FALSE
TRUE
TRUE
FALSE
TRUE
TRUE
FALSE
TRUE
TRUE
FALSE
TRUE
TRUE
ERROR: 1:10: Cannot >= STRING and BOOLEAN
>>> Test + types
ERROR: 1:13: Cannot + BOOLEAN and BOOLEAN
 7.1
 9.5
 5
 2147483647
 2147483647
ERROR: 1:15: Integer overflow
 2147483648
 9.3
ab
ERROR: 1:10: Cannot + STRING and BOOLEAN
>>> Test - types
ERROR: 1:13: Cannot - BOOLEAN and BOOLEAN
-1
-1.5
-1
-2147483648
-2147483648
ERROR: 1:15: Integer underflow
-2147483649
-1.5
ERROR: 1:12: Cannot - STRING and STRING
>>> Test * types
ERROR: 1:13: Cannot * BOOLEAN and BOOLEAN
 40
 20.5
 6
 2147483647
 2147483647
ERROR: 1:15: Integer overflow
 4294967294
 20.8
ERROR: 1:10: Cannot * STRING and STRING
>>> Test / types
ERROR: 1:13: Cannot / BOOLEAN and BOOLEAN
 4
 inf
 5.1
 2
 6
-2147483648
-2147483648
ERROR: 1:9: Division by zero
ERROR: 1:15: Integer underflow
 2147483648
 4
ERROR: 1:10: Cannot / STRING and STRING
>>> Test MOD types
ERROR: 1:13: Cannot MOD BOOLEAN and BOOLEAN
 0
 NaN
 0.3000000000000007
 0
 2
ERROR: 1:9: Modulo by zero
ERROR: 1:15: Integer underflow
-0
 1
ERROR: 1:10: Cannot MOD STRING and STRING
>>> Test ^ types
ERROR: 1:13: Cannot ^ BOOLEAN and BOOLEAN
 1
 8.574187700290345
 1024
 1
 9
 2147483647
 2147483647
ERROR: 1:15: Integer overflow
 4611686014132420600
ERROR: 1:9: Exponent -3 cannot be negative
 1024
ERROR: 1:10: Cannot ^ STRING and STRING
>>> Test unary - types
ERROR: 1:7: BOOLEAN is not a number
-6.12
 5.53
-6
 5
ERROR: 1:7: Integer overflow
 2147483648
ERROR: 1:7: STRING is not a number
End of input by CTRL-D