~rabbits/uxnlin

3c681ad6be4877b0e4629e4d44419bad566d5250 — neauoire 12 days ago 7fb6e9c main
Faster parsing
1 files changed, 7 insertions(+), 9 deletions(-)

M src/uxnlin.tal
M src/uxnlin.tal => src/uxnlin.tal +7 -9
@@ 85,13 85,12 @@
		( >> )

@parse ( char -- )
	( char ) POP
	( mute ) [ LIT &mute $1 ] ?&ignore
	( blank ) ;token LDA #00 EQU ?&ignore
	POP ;token
	( mute ) [ LIT &mute $1 ] ?<sclr>
	( blank ) LDAk #00 EQU ?<sclr>
	( token count ) .stats/tokens LDZ2k INC2 ROT STZ2
	( new scope ) ;token is-scope #00 EQU ?{
		;token INC2 ;scope <scpy> }
	( include ) ;token LDA [ LIT "~ ] EQU ?include
	( new scope ) DUP2 is-scope #00 EQU ?{ INC2k ;scope <scpy> }
	( include ) LDA [ LIT "~ ] EQU ?include
	;rules2/end ;rules2
	&loop2 ( -- )
		( a ) DUP2 ;token/last scmp-wild STH


@@ 131,9 130,8 @@
		;dead-region <print-warn2> &>no-dead
	&cleanup ( -- )
		;token/last ;token/last2 <scpy>
		;token ;token/last <scpy>
	&ignore ( -- )
		;token !<sclr>
		;token DUP2 ;token/last <scpy>
		!<sclr>

@reset ( -- )
	;token <sclr>