From dc1ef25f1a7f8e36e93928e5b0288e203833e14a Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Fri, 18 Feb 2022 09:39:53 +0200 Subject: Clean up --- samples/list.slam | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 samples/list.slam (limited to 'samples/list.slam') diff --git a/samples/list.slam b/samples/list.slam new file mode 100644 index 0000000..c0fa5da --- /dev/null +++ b/samples/list.slam @@ -0,0 +1,27 @@ +define prepend + $prepend_val ! + $prepend_phrase ! + '[ $prepend_val @ $prepend_phrase @ unphrase '] phrase + $prepend_val forget $prepend_phrase forget + ; + +define append + $append_val ! + $append_phrase ! + '[ $append_phrase @ unphrase $append_val @ '] phrase + $append_val forget $append_phrase forget + ; + +define stack-empty? stack-size 0 eq? ; + +define .. + [ stack-empty? not ] + [ . ] loop + ; + +[ 2 3 ] 1 prepend . +[ 2 3 ] 4 append . +[ 1 2 3 ] pop $1 ! pop $2 ! pop $3 ! +$1 ? +$2 ? +$3 ? -- cgit v1.3