Loop pointers
AssigneeZoho Corporation Private Limited
InventorsSridhar Vembu, Akshhayaa S
Life of this patent
Estimating the term…
Abstract
A Loop Pointer (LP) construct is disclosed for identifying terms in a recursive expression operated with an iterator. A Loop Pointer Variable (LPV) is assigned the current value of the recursive expression comprising one or more previous values or prior terms of the LPV. The prior terms or values are identified in source code by a loop pointer construct modifying a reference to the loop pointer variable. A compiler, responsive to encountering a loop pointer construct, generates instructions to access each of the one or more identified variable values for use in computation of the current value of the loop pointer variable at runtime. An access to the iterator construct output can request the terminal value of the loop pointer variable.
Claims26
A method of compiling source code comprising:
- encountering in the source code an iterator construct comprising a statement defining computation of a current value of a variable, the statement including one or more references to the variable modified by a pointer construct, each pointer construct identifying one of the previous values of the variable for use in computation of the current value of the variable;
- and
- generating instructions to access each of the one or more identified variable values for use in computation of the current value of the variable at runtime.
A non-transitory computer-readable medium having stored thereon a source code compilable by a compiler and executable by a processor, the source code comprising a code segment including an iterator construct comprising a statement defining computation of a current value of a variable, the statement including one or more references to the variable modified by a pointer construct, each pointer construct identifying one of the previous values of the variable for use in computation of the current value of the variable at runtime.
Dependencies are inferred from the claim text.