From 8e9f1b4ab6610d814eac799e2da9679f65f97047 Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Fri, 10 Dec 2010 14:23:29 +0100 Subject: [PATCH] @@ um strings auf den here-stack zu legen --- presentation.fs | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/presentation.fs b/presentation.fs index a372387..25daf23 100755 --- a/presentation.fs +++ b/presentation.fs @@ -23,26 +23,29 @@ : csi c, <_> ; : csi c, <_> ; : begin , 0<> until ; -: <+> ( addr1 len1 addr2 len2 -- addrdst lendst ) - rot 2dup + here ( addr1 addr2 len2 len1 lendst addrdst ) - 2-rot -rot ( lendst addrdst addr1 len1 addr2 len2 ) - 2swap 2rot ( addr2 len2 addr1 len1 lendst addrdst ) - 2dup cells allot ( dst allocated ) - copy copy +\ : <+> ( addr1 len1 addr2 len2 -- addrdst lendst ) +\ rot 2dup + here ( addr1 addr2 len2 len1 lendst addrdst ) +\ 2-rot -rot ( lendst addrdst addr1 len1 addr2 len2 ) +\ 2swap 2rot ( addr2 len2 addr1 len1 lendst addrdst ) +\ 2dup chars allot ( dst allocated ) +\ copy copy +\ ; +: @@ ( addr len -- ) + here -rot ( dst src len ) + copy drop ; -: " s" ; immediate bye -" Dies ist eine Testpresentation" -" Eines Tages hatten wir (" @@ " Harald Steinlechner" @@ " und" - " Denis Knauf" " die tolle Idee, eine Presentationssoftware zu schreiben"

+s" Dies ist eine Testpresentation" +s" Eines Tages hatten wir (" @@ s" Harald Steinlechner" @@ s" und" @@ + s" Denis Knauf" @@ s" die tolle Idee, eine Presentationssoftware zu schreiben" @@

-" Ergebnis:" -" Das hier"

+s" Ergebnis:" @@ + s" Das hier" @@

-" Sieht doch garnicht so schlecht aus"

+s" Sieht doch garnicht so schlecht aus" @@

\ presentation ist gestartet: erste Seite wird angezeigt