From 67d25d837ac55f28a366c0a3b262e439a6e75fc3 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sat, 19 Aug 2017 12:15:28 +0200 Subject: Add AmForth --- .../msp430/lib/forth-2012/core/evaluate.frt | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 amforth-6.5/msp430/lib/forth-2012/core/evaluate.frt (limited to 'amforth-6.5/msp430/lib/forth-2012/core/evaluate.frt') diff --git a/amforth-6.5/msp430/lib/forth-2012/core/evaluate.frt b/amforth-6.5/msp430/lib/forth-2012/core/evaluate.frt new file mode 100644 index 0000000..9f4cf3b --- /dev/null +++ b/amforth-6.5/msp430/lib/forth-2012/core/evaluate.frt @@ -0,0 +1,22 @@ +\ evaluate +\ temporarily redirect the input source +\ to string buffer. Return the the previous +\ input source afterwards and continue + +\ some helper words +variable strlen +variable str +: source-string str @ strlen @ ; + +: evaluate \ i*x addr len -- j*y + ['] source defer@ >r + >in @ >r + 0 >in ! + strlen ! + str ! + ['] source-string to source + ['] interpret catch + r> >in ! + r> to source + throw +; -- cgit v1.2.3