Claims Analysis
Total Claims: 13
Claim 1
Independent Claim
150 words
A modular compiler (120) for use in handling a plurality of applications (100) using an agent engine (108), comprising: a class independent parser (122) for parsing program code which includes commands to be executed by the agent engine (108); a plurality of class dependent parsers (123,124, 167, 168), each class dependent parser (123,124,167,168) associated with an application (100) from the plurality of applications (100), each class dependent parser (123,124,167,168) able to parse program code which includes commands to be executed by the application (100) associated with that class dependent parser (123,124,167,168), each class dependent parser (123,124,167,168) being added to the modular compiler (120) when the application (100) associated with that class dependent parser (123,124,167,168) is added to the computing system, and each class dependent parser (123,124,167,168) being removed from the modular compiler (120) when the application (100) associated with the class dependent parser (123,124,167,168) is removed from the computing system.
Claim 2
Dependent Claim
150 words
A modular compiler (120) for use in handling a plurality of applications (100) using an agent engine (108), comprising: a class independent parser (122) for parsing program code which includes commands to be executed by the agent engine (108); a plurality of class dependent parsers (123,124, 167, 168), each class dependent parser (123,124,167,168) associated with an application (100) from the plurality of applications (100), each class dependent parser (123,124,167,168) able to parse program code which includes commands to be executed by the application (100) associated with that class dependent parser (123,124,167,168), each class dependent parser (123,124,167,168) being added to the modular compiler (120) when the application (100) associated with that class dependent parser (123,124,167,168) is added to the computing system, and each class dependent parser (123,124,167,168) being removed from the modular compiler (120) when the application (100) associated with the class dependent parser (123,124,167,168) is removed from the computing system.
Claim 3
Dependent Claim
46 words
A modular compiler (120) as in Claim 1 additionally comprising: a scanner (122a) which scans a source file containing code and delivers tokens to the class independent parser (122) and each class dependent parser (123,124,167,168) in the plurality of class dependent parsers (123, 124, 167, 168).
Claim 4
Dependent Claim
172 words
A modular compiler (120) as claimed in claim 2 wherein the first scanner routine (122a) returns a token to the class independent parser (122) when the first scanner routine (122a) is called by the class independent parser (122); and comprising a plurality of class dependent parsers (123, 124, 167, 168) called by the first scanner routine (122a), each class dependent parser (123,124,167,168) parsing a different set of commands; a plurality of scanner routines (123a,124a), one scanner routine (123a,124a) from the plurality of scanner routines (123a,124a) being called by a class dependent parser (123,124,167,168) from the plurality of class dependent parsers (123,124, 167, 168) so that each class dependent parser (123,124,167,168) calls its own scanner routine (123a,124a), and the called scanner routine (123a,124a) returns a token to the calling class dependent parser (123,124,167,168); and, an input stream processor (164), called by the first scanner routine (122a) and each scanner routine (123a,124a) from the plurality of scanner routines (123a,124a), which returns a token to the scanner routine (123a,124a) calling the input stream processor (164).
Claim 5
Dependent Claim
37 words
A modular compiler (120) as in Claim 2 or 3 additionally comprising: an expression parser (166), called by the class independent parser (122) and each of the class dependent parsers (123, 124, 167, 168), which parses expressions.
Claim 6
Dependent Claim
40 words
A modular compiler (120) as in Claim 3, wherein the first scanner routine (122a) includes a focus means (167) for determining which one out of the class dependent parsers (123,124, 167, 168) and the input stream processor (164) to call.
Claim 7
Dependent Claim
50 words
A modular compiler (120) as in Claim 3, wherein when one of the class dependent parsers (123,124, 167, 168) returns an error, the first scanner routine (122a) calls the input stream processor (164), and returns the token received from the input stream processor (164) to the class independent parser (122).
Claim 8
Dependent Claim
90 words
In a computing system, a method for compiling program code into commands to be executed by an agent engine (108) and a plurality of applications (100), each application (100) able to execute a different set of commands, the method comprising the steps of: (a) parsing program code which contains commands to be executed by the agent engine (108) using a class independent parser (122); and (b) parsing program code which contains commands to be executed by an application (100) with a class dependent parser (123,124,167,168) associated with that application (100).
Claim 9
Dependent Claim
90 words
In a computing system, a method for compiling program code into commands to be executed by an agent engine (108) and a plurality of applications (100), each application (100) able to execute a different set of commands, the method comprising the steps of: (a) parsing program code which contains commands to be executed by the agent engine (108) using a class independent parser (122); and (b) parsing program code which contains commands to be executed by an application (100) with a class dependent parser (123,124,167,168) associated with that application (100).
Claim 10
Dependent Claim
232 words
In a computing system, a method for generating code using a class independent parser (122), at least one class dependent parser (123,124,167,168), a class independent scanner routine (122a) for the independent parser (122) and a class dependent scanner routine (123a,124a) for each of the dependent parsers (123,124, 167, 168), the method comprising the steps of: (a) calling the class independent scanner routine (122a) from the independent parser (122); (b) when a first class dependent parser (123,124,167,168) has precedence performing the following substeps: (b.1) calling from the class independent scanner routine (122a) the first class dependent parser (123,124,167,168); (b.2) at least once calling from the first class dependent parser (123,124,167,168) a first class dependent scanner (123a,124a) for the first class dependent parser (123,124,167,168); (b.3) returning from the first class dependent scanner (123a,124a) to the first class dependent parser (123,124,167,168) a token every time the first class dependent parser (123,124,167,168) calls the first class dependent scanner (123a,124a); (b.4) attempting with the first class dependent parser (123,124,167,168) to parse the token(s) received from the first class dependent parser (123,124,167,168); (b.5) returning from the first class dependent parser (123,124,167,168) to the class independent scanner routine (122a) an error when the first class dependent parser (123,124,167,168) is unable to parse a token received from the first class dependent scanner (123a,124a); (c) returning a token from the class independent scanner routine (122a) to the class independent parser (122).
Claim 11
Dependent Claim
232 words
In a computing system, a method for generating code using a class independent parser (122), at least one class dependent parser (123,124,167,168), a class independent scanner routine (122a) for the independent parser (122) and a class dependent scanner routine (123a,124a) for each of the dependent parsers (123,124, 167, 168), the method comprising the steps of: (a) calling the class independent scanner routine (122a) from the independent parser (122); (b) when a first class dependent parser (123,124,167,168) has precedence performing the following substeps: (b.1) calling from the class independent scanner routine (122a) the first class dependent parser (123,124,167,168); (b.2) at least once calling from the first class dependent parser (123,124,167,168) a first class dependent scanner (123a,124a) for the first class dependent parser (123,124,167,168); (b.3) returning from the first class dependent scanner (123a,124a) to the first class dependent parser (123,124,167,168) a token every time the first class dependent parser (123,124,167,168) calls the first class dependent scanner (123a,124a); (b.4) attempting with the first class dependent parser (123,124,167,168) to parse the token(s) received from the first class dependent parser (123,124,167,168); (b.5) returning from the first class dependent parser (123,124,167,168) to the class independent scanner routine (122a) an error when the first class dependent parser (123,124,167,168) is unable to parse a token received from the first class dependent scanner (123a,124a); (c) returning a token from the class independent scanner routine (122a) to the class independent parser (122).
Claim 12
Dependent Claim
64 words
A method as in Claim 8 wherein substep (b.4) includes the following substep: (b.4.a) calling semantic routines to generate application dependent commands embedded within code when the first class dependent parser (123,124,167,168) is able to parse the token(s) received from the first class dependent scanner (123a,124a), the commands to be extracted by an agent engine (108) and forwarded to an application (100) for execution.
Claim 13
Dependent Claim
40 words
A method as in Claim 9 additionally comprising the following step: (d) when the independent parser (122) is able to parse the token from the scanner 122a, calling semantic routines to generate code for execution by the agent engine (108).