6.17.5.2 Recognizer order

You may prefer to use a different recognizer sequence, but with (some of the) existing recognizers. You can use the following words for that:

forth-recognize ( c-addr u – ... translate-xt  ) recognizer

The system recognizer: forth-recognize is a deferred word that contains a recognizer (sequence). The system’s text interpreter calls forth-recognize.

recognizer-sequence: ( xt1 .. xtn n "name" –  ) gforth-experimental “recognizer-sequence-colon”

Define name, a recognizer sequence that first searches xtn and last searches xt1. name is a recognizer itself, which makes recognizer sequences nestable. The order of operands is inspired by get-order and set-order.

You probably don’t want to create a new recognizer sequence every time you want to change the system recognizer sequence. There are two ways to change an existing recognizer sequence:

rec-nothing ( c-addr u – 0  ) gforth-experimental

This recognizer recognizes nothing. It can be useful as a placeholder.

Here is an example of adding rec-nothing as last recognizer to the system recognizers:

' rec-nothing action-of forth-recognize >body >back