Patent ID: 7284242
Filing Date: 2007-10-16
Classification: G06F

Abstract:
1. An apparatus having a processor and a memory, with instructions stored in the memory that are executable by the processor for compiling source code, comprising: a tokenizer for segmenting source code into a sequence of tagged segments; the source code including at least one instruction having a selected composition operator composing a first abstraction and a second abstraction; a parser for building a tree using the sequence of tagged segments; a type checker for performing a first pass of the tree to determine whether abstractions on the tree are well typed; the type checker detecting that the at least one instruction is defined using the selected composition operator; a composer for (i) composing the first abstraction and the second abstraction with the selected composition operator to reduce the at least one instruction to a new third abstraction and (ii) substituting the selected composition operator and the first and the second abstractions on the tree with the new third abstraction; wherein the type checker performs a second pass of the tree to determine whether the new third abstraction is well typed; wherein the first abstraction, the second abstraction, and the new third abstraction are functional abstractions that operate on at least one variable.