view src/ploki/t/10-regress.pk @ 12246:f3be034784d0 draft

<b_jonas> addwhatis brachylog(1egobot) - Brachylog, a Prolog-like golf language
author HackEso <hackeso@esolangs.org>
date Thu, 05 Dec 2019 23:44:34 +0000
parents ac0403686959
children
line wrap: on
line source

#!ploki
"1..8
(#<"ok 1"#> . 0 _ "

IF @NOT ("X" ~ "[{.}^]|{.}"
	"not "
ELSE
	IF \0 ; "X" | (\1 ; "")
		"not "
	FI
FI
"ok 2

IF @NOT ("Y" ~ "<{.}>Z|{.}"
	"not "
ELSE
	IF \0 ; "Y" | (\1 ; "")
		"not "
	FI
FI
"ok 3

IF @NOT ("Z" ~ "[{.}&]X|{.}"
	"not "
ELSE
	IF \0 ; "Z" | (\1 ; "")
		"not "
	FI
FI
"ok 4

(#<"not " "ok "#> [ 1 _ #<5#> _ "

LET f @OMFG @throw \@
LET e "E"
LET x @EVAL #<"A" (f . e)#>
IF x ; "" | (\_ ; e)
	"not "
FI
"ok 6

LET fh @APERS #<"/ this file does not exist!" "RF"#>
IF fh
	CLAUDS fh
	"not "
FI
"ok 7

LET n "tmp.txt"
LET fh @APERS #<n "W+"#>
IF @NOT fh
	WUNT \FEHL "open: " _ n _ ": " _ \! _ "
	END 1
END IF
LET txt "zomg
WUNT fh txt
IF @SUCH #<fh 0#>
	WUNT \FEHL "seek: " _ n _ ": " _ \! _ "
	END 1
FI
LET s fh . @NEG 1
IF @ERR-P fh
	WUNT \FEHL "read: " _ n _ ": " _ \! _ "
	END 1
FI
CLAUDS fh
IF \_
	WUNT \FEHL "close: " _ n _ ": " _ \! _ "
	END 1
END IF
LET () @REMOVE n
IF s ; txt
	"not "
FI
"ok 8

END

FOR throw IACS \@