|| :: load entry point into source :: process novaweb |:: load entry point into source? :entry point: $char| :processed: $char |:: load entry point into source? :processed: $char| :source: $char |:: load entry point into source| |:: process novaweb? :second pass needed:? :processed: $char| :source: $char |:: process novaweb? :second pass needed:| |:: process novaweb? :source: "@@@"| :: signal a second pass is needed :: load link :strip left: :strip right: :: search dictionary |:: process novaweb? :source: $char| :processed: $char |::process novaweb| :: finished compiling |:: signal a second pass is needed :second pass needed:?| |:: signal a second pass is needed| :second pass needed: |:: load link? :source: "@@@"? :incoming link: 9 :strip right:?| |:: load link? :source: "@@@"? :incoming link: 10 :strip right:?| |:: load link? :source: "@@@"? :incoming link: 13 :strip right:?| |:: load link? :source: "@@@"? :incoming link: 32 :strip right:?| |:: load link? :source: "@@@"? :strip right:| |:: load link? :source: "@@@"? :incoming link: $char| :link: $char |:: load link :source: "@@@"| |:: load link? :source: 9 :strip left:?| |:: load link? :source: 10 :strip left:?| |:: load link? :source: 13 :strip left:?| |:: load link? :source: 32 :strip left:?| |:: load link? :strip left:| |:: load link? :source: $char| :incoming link: $char |:: search dictionary? :link: $char? :name: $char?| :: match made |:: search dictionary? :link: $char? :name:?| :: search failed |:: search dictionary? :link: $char? :name: $other-char?| :: search failed |:: search dictionary :name:?| :: search succeeded |:: search dictionary? :link: $char?| :: search exhausted |:: search succeeded| :: restore name dictionary :: flush link :: push code to processed :: restore code |:: restore name dictionary? :consumed name:| :name: |:: restore name dictionary? :consumed name: $char| :name: $char |:: restore name dictionary| |:: restore code? :consumed code:| :code: |:: restore code? :consumed code: $char| :code: $char |:: restore code| |:: flush link? :consumed link: $char| |:: flush link| |:: push code to processed? :code: $char| :processed: $char :consumed code: $char |:: push code to processed :code:| :consumed code: |:: search failed| :: next name in dictionary :: next page of code :: reset link |:: next name in dictionary :name:| :consumed name: |:: next name in dictionary? :name: $char| :consumed name: $char |:: next page of code :code:| :consumed code: |:: next page of code? :code: $char| :consumed code: $char |:: reset link? :consumed link: $char| :link: $char |:: reset link| |:: search exhausted| :: show error :error message: "No reference found for" :error message: (58 32) :: exit |:: show error? :error message: $char| :@stdio: write $char |:: show error? :link: $char| :@stdio: write $char |:: show error| :@stdio: write 10 |:: match made| :: advance link :: advance name dictionary |:: advance link :link: $char| :consumed link: $char |:: advance name dictionary :name: $char| :consumed name: $char |:: finished compiling? :processed: $char| :source: $char |:: finished compiling| :: print source |:: print source? :source: $char| :@stdio: write $char |:: print source|