updated LICENSE, added ignored .out files in scconfig

This commit is contained in:
schippes 2020-08-09 09:10:05 +02:00
parent 8840feaba0
commit 9bfdc2bf2f
26 changed files with 802 additions and 0 deletions

View File

@ -0,0 +1,16 @@
print [at 7:1]
arg: {hello world!
}
print [at 11:1]
arg: {hello}
arg: {world!}
arg: {
}
print [at 14:1]
print [at 17:1]
arg: {HELLO}
print [at 17:16]
arg: { WORLD!}
print [at 17:36]
arg: {
}

View File

@ -0,0 +1,36 @@
put [at 4:1]
arg: myvar
arg: {Hello world!
}
print [at 7:1]
arg: myvar
print [at 11:1]
arg: {Hello universe! }
arg: myvar
put [at 15:1]
arg: str
arg: {cats raining from the sky}
put [at 16:1]
arg: tmp
arg: str
print [at 17:1]
arg: str
arg: {==}
arg: tmp
arg: {
}
print [at 21:1]
arg: {safe get: '}
arg: ?nonexist
arg: {'
}
print [at 25:1]
arg: {exists (no): }
arg: &nonexist
arg: {
}
print [at 26:1]
arg: {exists (yes): }
arg: &myvar
arg: {
}

View File

@ -0,0 +1,35 @@
print [at 7:1]
arg: {this is a string}
arg: {
}
print [at 9:1]
arg: {--
}
put [at 11:1]
arg: myblk
arg: {a block
of multiline
data.
}
print [at 16:1]
arg: myblk
put [at 24:1]
arg: myvar
arg: {world}
print [at 25:1]
arg: {--
}
print [at 26:1]
arg: [~ hello ~myvar~! ~]
arg: {
}
print [at 27:1]
arg: {--
}
print [at 28:1]
arg: {
hi @myvar@!
}
print [at 31:1]
arg: {--
}

View File

@ -0,0 +1,42 @@
put [at 1:1]
arg: myvar
arg: {true}
if myvar [at 6:10]
then:
print [at 7:2]
arg: {myvar is true (1)
}
else:
print [at 9:2]
arg: {myvar is false (1)
}
if myvar [at 14:10]
then:
print [at 15:2]
arg: {myvar is true (2)
}
else:
(NOP)
if myvar [at 19:10]
then:
(NOP)
else:
print [at 20:2]
arg: {myvar is false (3)
}
put [at 24:1]
arg: foo
arg: {false}
if myvar [at 25:10]
then:
if foo [at 26:9]
then:
print [at 27:3]
arg: {myvar and bar are true (4)
}
else:
print [at 29:3]
arg: {myvar is true, bar is false (4)
}
else:
(NOP)

View File

@ -0,0 +1,71 @@
put [at 15:1]
arg: myvar
arg: {foobar}
switch myvar [at 16:1]
case {baz}
put [at 17:14]
arg: res
arg: {1}
print [at 17:27]
arg: {this is baz.
}
case {^oob}
put [at 18:14]
arg: res
arg: {2}
print [at 18:27]
arg: {did you mean out-of-band?
}
case {^f}
put [at 19:14]
arg: res
arg: {3}
print [at 19:27]
arg: {starts with f.
}
case {oob}
put [at 20:14]
arg: res
arg: {4}
print [at 20:27]
arg: {OOB!
}
default
put [at 21:14]
arg: res
arg: {0}
print [at 21:27]
arg: {none.
}
print [at 24:1]
arg: {result is: }
arg: res
arg: {
}
put [at 28:1]
arg: patt
arg: {^number$}
put [at 29:1]
arg: REF
arg: {3}
switch [~num ~res~ ber~] [at 30:1]
case patt
print [at 31:23]
arg: {empty
}
case [~^num ~REF~~]
print [at 32:23]
arg: {reference
}
put [at 38:1]
arg: cond
arg: {blobb}
switch cond [at 39:1]
case {lob}
print [at 40:15]
arg: {"then"
}
default
print [at 41:15]
arg: {"else"
}

View File

@ -0,0 +1,32 @@
foreach item in {this is a list of words} [at 7:1]
print [at 8:2]
arg: item
arg: {
}
put [at 15:1]
arg: nl
arg: {
}
foreach item in {foo bar baz} [at 16:1]
foreach w in [~next: ~item~~nl~~] [at 17:2]
print [at 18:3]
arg: w
put [at 27:1]
arg: libs
arg: {-lsdl -ltcl8.4}
foreach l in libs [at 28:1]
print [at 29:2]
arg: {l=}
arg: l
arg: {
}
switch l [at 30:2]
case {^-lsdl}
put [at 31:19]
arg: libs
arg: [~-lm ~libs~ -lsvga~]
print [at 34:1]
arg: {libs=}
arg: libs
arg: {
}

View File

@ -0,0 +1,40 @@
put [at 6:1]
arg: myvar
arg: {Hello world!
}
sub [at 7:1]
arg: myvar
arg: {l}
arg: {2}
print [at 8:1]
arg: myvar
sub [at 13:1]
arg: {myvar}
arg: {l}
arg: {3}
print [at 14:1]
arg: myvar
put [at 19:1]
arg: pointer
arg: {myvar}
sub [at 20:1]
arg: [~~pointer~~]
arg: {l}
arg: {4}
print [at 21:1]
arg: myvar
put [at 25:1]
arg: punctuation
arg: {[!?.]}
sub [at 26:1]
arg: [~~pointer~~]
arg: punctuation
arg: [~ PUNCT:~punctuation~~]
print [at 27:1]
arg: myvar
gsub [at 30:1]
arg: [~~pointer~~]
arg: {o}
arg: {_0_}
print [at 31:1]
arg: myvar

View File

@ -0,0 +1,89 @@
put [at 7:1]
arg: list
arg: {this
is
a
list
of
words,
a
list
of
words.
}
print [at 18:1]
arg: {original:
}
arg: list
arg: {
}
uniq [at 19:1]
arg: list
print [at 20:1]
arg: {uniq:
}
arg: list
arg: {
}
put [at 24:1]
arg: foo
arg: {this
foo
is
a
this
foo
}
uniq [at 31:1]
arg: tmp
arg: foo
print [at 32:1]
arg: {original:
}
arg: foo
arg: {
uniq:
}
arg: tmp
arg: {
}
sortuniq [at 39:1]
arg: tmp
arg: foo
print [at 40:1]
arg: {
sortuniq:
}
arg: tmp
arg: {
}
put [at 49:1]
arg: list
arg: {#define foo
#include "foo20.h"
#include "foo10.h"
/* misc1 */
#define bar
#include "bar1.h"
#include "bar2.h"
/* misc2 */
}
put [at 61:1]
arg: /tmpasm/IFS
arg: {
}
uniq [at 63:1]
arg: tmp
arg: list
arg: {^#define}
arg: {^#include}
print [at 64:1]
arg: {original:
}
arg: list
arg: {
grouped uniq:
}
arg: tmp
arg: {
}

View File

@ -0,0 +1,11 @@
put [at 9:1]
arg: myvar
arg: {!
}
report [at 10:1]
arg: {hello }
arg: {world}
arg: myvar
report [at 11:1]
arg: [~hello world~myvar~~]
abort [at 15:1]

View File

@ -0,0 +1,20 @@
print [at 14:1]
arg: {this goes to the default output
}
redir [at 18:1]
arg: {Tutor10.inc}
print [at 19:1]
arg: {# this is a generated file.}
print [at 20:1]
arg: {
print {hello world from my include!\n}
}
redir [at 25:1]
print [at 26:1]
arg: {back at default output.
}
print [at 45:1]
arg: {Include:
}
include [at 46:1]
arg: {Tutor10.inc}

View File

@ -0,0 +1,10 @@
if ?a [at 5:7]
then:
print [at 6:2]
arg: {empty}
else:
print [at 8:2]
arg: {not empty}
put [at 11:1]
arg: b
arg: ?a

View File

@ -0,0 +1,17 @@
put [at 6:1]
arg: tmp
arg: {true}
if tmp [at 7:8]
then:
foreach item in {foo bar true baz} [at 8:2]
print [at 9:3]
arg: item
arg: {
}
if item [at 10:11]
then:
halt [at 11:4]
else:
(NOP)
else:
(NOP)

View File

@ -0,0 +1,15 @@
append [at 1:1]
arg: tmp
arg: {foo}
append [at 2:1]
arg: tmp
arg: {bar}
append [at 3:1]
arg: tmp
arg: {baz}
foreach n in tmp [at 4:1]
print [at 5:2]
arg: {-> }
arg: n
arg: {
}

View File

@ -0,0 +1,4 @@
print [at 1:1]
arg: data1
print [at 2:1]
arg: data2

View File

@ -0,0 +1,6 @@
error: Excess "end" at 3:4
if {1} [at 1:8]
then:
(NOP)
else:
(NOP)

View File

@ -0,0 +1,6 @@
error: unexpected 'else' - must be in a 'then' block before an else at 2:5
if *NULL - broken AST* [at 1:1]
then:
(NOP)
else:
(NOP)

View File

@ -0,0 +1,6 @@
error: unexpected "end" in "if" - expected "then" at 2:4
if v [at 2:1]
then:
(NOP)
else:
(NOP)

View File

@ -0,0 +1,6 @@
pritn [at 1:1]
arg: {foo}
switch {cond} [at 2:1]
case {1}
print [at 3:11]
arg: {foo}

View File

@ -0,0 +1,2 @@
error: unexpected end of if switch statement; expected a data at 1:7
(NOP)

View File

@ -0,0 +1,2 @@
error: unexpected end of if switch statement; expected a data at 1:7
(NOP)

View File

@ -0,0 +1,41 @@
put [at 1:1]
arg: a
arg: {1}
put [at 2:1]
arg: foo
arg: {example-FOO}
put [at 3:1]
arg: bar
arg: {example-BAR}
put [at 4:1]
arg: baz
arg: {example-BAZ}
put [at 5:1]
arg: hah
arg: {haha}
foreach n in [~foo ~bar~ baz~] [at 9:1]
print [at 10:2]
arg: {n=}
arg: n
arg: {
}
print [at 11:2]
arg: {a11}
arg: [~a12 ~hah~ a14~]
arg: {
}
print [at 12:2]
arg: {a21}
arg: {a22 a23}
arg: {
}
print [at 13:2]
arg: {a31
}
print [at 15:1]
arg: {a41}
arg: {a42}
arg: {a43}
arg: {
}
print [at 16:1]

View File

@ -0,0 +1,15 @@
put [at 1:1]
arg: a
arg: 1
if a [at 2:6]
then:
if b [at 3:7]
then:
print [at 4:3]
arg: {then-then}
else:
print [at 6:3]
arg: {then-else}
else:
print [at 9:2]
arg: {else}

View File

@ -0,0 +1,159 @@
put [at 2:1]
arg: list
arg: {one two three four}
print [at 4:1]
arg: list
arg: {
}
print [at 6:1]
arg: {
nothing:
}
order [at 9:1]
arg: out
arg: list
arg: {one}
arg: {before}
arg: {two}
print [at 10:1]
arg: out
arg: {
}
order [at 12:1]
arg: out
arg: list
arg: {one}
arg: {before}
arg: {one}
print [at 13:1]
arg: out
arg: {
}
order [at 15:1]
arg: out
arg: list
arg: {one}
arg: {after}
arg: {one}
print [at 16:1]
arg: out
arg: {
}
order [at 18:1]
arg: out
arg: list
arg: {two}
arg: {after}
arg: {one}
print [at 19:1]
arg: out
arg: {
}
order [at 22:1]
arg: out
arg: list
arg: {nine}
arg: {after}
arg: {one}
print [at 23:1]
arg: out
arg: {
}
order [at 24:1]
arg: out
arg: list
arg: {one}
arg: {after}
arg: {nine}
print [at 25:1]
arg: out
arg: {
}
print [at 27:1]
arg: {
before:
}
order [at 28:1]
arg: out
arg: list
arg: {two}
arg: {before}
arg: {one}
print [at 29:1]
arg: out
arg: {
}
order [at 31:1]
arg: out
arg: list
arg: {four}
arg: {before}
arg: {one}
print [at 32:1]
arg: out
arg: {
}
order [at 34:1]
arg: out
arg: list
arg: {four}
arg: {before}
arg: {three}
print [at 35:1]
arg: out
arg: {
}
order [at 37:1]
arg: out
arg: list
arg: {three}
arg: {before}
arg: {two}
print [at 38:1]
arg: out
arg: {
}
print [at 40:1]
arg: {
after:
}
order [at 41:1]
arg: out
arg: list
arg: {one}
arg: {after}
arg: {two}
print [at 42:1]
arg: out
arg: {
}
order [at 44:1]
arg: out
arg: list
arg: {one}
arg: {after}
arg: {four}
print [at 45:1]
arg: out
arg: {
}
order [at 47:1]
arg: out
arg: list
arg: {two}
arg: {after}
arg: {three}
print [at 48:1]
arg: out
arg: {
}
order [at 50:1]
arg: out
arg: list
arg: {two}
arg: {after}
arg: {four}
print [at 51:1]
arg: out
arg: {
}

View File

@ -0,0 +1,47 @@
put [at 1:1]
arg: swdata
arg: {lol}
switch swdata [at 2:1]
case data1
print [at 3:24]
arg: {1a}
arg: {11}
print [at 3:41]
arg: {1b}
arg: 12
print [at 3:56]
arg: {1c}
arg: 13
print [at 3:71]
arg: {1d}
arg: 14
case [~data2 ~a~~]
print [at 4:24]
arg: {2a}
arg: 21
print [at 4:41]
arg: {2b}
arg: 22
print [at 4:56]
arg: {2c}
arg: 23
print [at 4:71]
arg: {2d}
arg: 24
default
print [at 5:24]
arg: {3a}
arg: 31
print [at 5:41]
arg: {3b}
arg: 32
print [at 5:56]
arg: {3c}
arg: 33
print [at 5:71]
arg: {3d}
arg: 34
print [at 7:1]
arg: {i1}
print [at 8:1]
arg: {i2}

View File

@ -0,0 +1,62 @@
put [at 2:1]
arg: /local/cflags
arg: {-std=c99 -Wall}
put [at 3:1]
arg: /local/ldflags
arg: {-lm}
put [at 4:1]
arg: /local/objs
arg: {main.o foo.o bar.o}
if /local/debug [at 7:17]
then:
append [at 8:2]
arg: /local/cflags
arg: {-g}
else:
append [at 10:2]
arg: /local/cflags
arg: {-O2}
isempty [at 14:1]
arg: /local/r
arg: /local/somelib
invert [at 15:1]
arg: /local/r
if /local/r [at 16:13]
then:
append [at 17:2]
arg: /local/cflags
arg: { -I/usr/include/somelib}
append [at 18:2]
arg: /local/ldflags
arg: { -lsomelib}
else:
(NOP)
print [at 22:1]
arg: [~
# Makefile generated by scconfig - DO NOT EDIT - please edit Makefile.in
CFLAGS=~/local/cflags~
LDFLAGS=~/local/ldflags~
OBJS=~/local/objs~
all: main
main: $(OBJS)
$(CC) $(LDFLAGS)
~]
foreach /local/o in /local/objs [at 38:1]
put [at 39:2]
arg: /local/c
arg: /local/o
sub [at 40:2]
arg: /local/c
arg: {.o$}
arg: {.c}
print [at 41:2]
arg: [~
~/local/o~: ~/local/c~
$(CC) -c $(CFLAGS) ~/local/c~ -o ~/local/o~
~]
print [at 47:1]
arg: {#end
}

View File

@ -0,0 +1,12 @@
if cnd [at 2:8]
then:
print [at 3:2]
arg: a1
arg: a2
arg: a3
else:
(NOP)
print [at 6:1]
arg: a1
arg: a2
arg: a3