+ dq p_2drop
+ dq p_literal, 1
+p_evaluate_stream_BAD:
+ dq p_Rgt
+ dq p_drop
+ dq p_exit
+
+ WORD p_colon,':'
+ ;; ( -- )
+ ;; Read next word as a new word into current wordlist, set it
+ ;; to be a doforth word, and set compiling mode.
+ dq p_literal, doforth
+ dq p_stdin
+ dq p_read_word
+ dq p_create
+ dq p_tfa2cfa
+ dq p_put
+ dq p_right_bracket
+ dq p_exit
+
+ WORD p_semicolon,';',,IMMEDIATE
+ ;; ( -- )
+ ;; Lay out p_exit, and set interpreting mode
+ dq p_left_bracket
+ dq p_literal, p_exit
+ dq p_comma
+ dq p_left_bracket
+ dq p_exit
+
+ WORD p_immediate,'IMMEDIATE',fasm,IMMEDIATE
+ ;; ( -- )
+ ;; Set "immediate flag" of the word being defined
+ mov rax,qword [p_wordlist_DFA]
+ mov rax,qword [rax] ; tfa of most recent word
+ mov qword [rax+16],1 ; set the flags field to 1
+ next
+
+ WORD p_open_file_quote,'OPEN-FILE"'
+ ;; ( "name" -- fd )
+ dq p_double_quote
+ dq p_create
+ dq p_tfa2namez
+ dq p_literal,0
+ dq p_literal,0
+ dq sys_open
+ dq p_exit
+
+ WORD p_load_file_quote,'LOAD-FILE"'
+ ;; ( "name" -- )
+ ;; Create a word for the nominated file for a stream to,
+ ;; and store that stream pointer, then invoke evaluate-stream
+ dq p_open_file_quote ; fd
+ dq p_literal, 15000 ; buffer size
+ dq p_stream
+ dq p_dup
+ dq p_comma
+ dq p_evaluate_stream