Topic: block machines

topics > Thesa topics > Thesa > ThesaGroup: out-of-date work

machine model
list processing
reduction machines
words defined by words


Block machines were developed as a formal basis for Thesa programming systems. A block is a bounded list of block references, selectors, and numeric terminals. Block applications are a block reference followed by a literal argument block. Blocks are reduced to an equivalent sequence of terminals. First applications are reduced by substituting the argument block for corresponding parameter selections. Then selectors applied to a block produce a block component. Machine instructions are hardware implemented block selections. For instance 'inc x' uses x as a selector on the block 1,2,3,...,OFFFFh,O. Block machines were obsoleted by removing basic functions from Thesa. (cbb 5/80)
QuoteRef: cbb_1973 ;;12/16/76 have block element selectors on fixed blocks and on arguments of an application eg DBL A means A,A FST F A mean F A.1, A(2..n) then FST DBL A.B = DBL A,A,B = A,A,A,B or INVERT B means B.n. INVERT B(1..n-1)
QuoteRef: cbb_1973 ;;12/16/76 block machine-- bounded blocks of components (terminal-mark, block-mark selector-mark, application), reduction of a selector-mark block is an element of that block or null (can't be an application?), reduction of a block-mark block is the corresponding block with its parameter block set a block is reduced if it contains only terminals(includes null)
QuoteRef: cbb_1973 ;;12/16/76 best if fixed block size
QuoteRef: cbb_1973 ;;12/16/76 conditional application is (1..0) eg B(1..0) A is the null element
QuoteRef: cbb_1973 ;;12/17/76 machine operations are condensed selections on a block eg inc is the block (1,2,3,4,...) so 0 selects 1, 1 selects 2 etc.
QuoteRef: cbb_1973 ;;12/25/76 block machine is Lisp i.e. name of list, car and cdr selectors, lambda stu
QuoteRef: cbb_1973 ;;1/4/77 tried basic actions-append a block component with hook, replace a hook's component, delete an appendage to a block, test for end of block, test for component equality, access component by hook, access component by next position
QuoteRef: cbb_1973 ;;7/10/77 an executable block is one consisting of numbers only

Related Topics up

Group: machine model   (13 topics, 206 quotes)
Topic: list processing (15 items)
Topic: reduction machines (14 items)
Topic: words defined by words
(24 items)

Updated barberCB 4/04
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.