摘要:
A computing device for receiving a design problem statement describing a design problem in a controlled natural language (CNL) that defines permitted lexicons and syntax structures. The design problem statement is processed using the CNL lexicons and syntax structures to produce a job description executable by a design application for generating a design solution for the design problem statement. An improved CNL user interface that assists users to produce valid design problem statements that are CNL-compliant. The CNL user interface receives user-selectable terms that are compliant with the CNL lexicons and generates candidate problem statements that are compliant with CNL syntax structures and receives a selection of a candidate problem statement that is added to the design problem statement. A graphical user interface may display a graphical representation of a design problem statement that can be directly modified. A dialogue-based design process to explore possible design intentions and design solutions.
摘要:
A computing device for receiving a design problem statement describing a design problem in a controlled natural language (CNL) that defines permitted lexicons and syntax structures. The design problem statement is processed using the CNL lexicons and syntax structures to produce a job description executable by a design application for generating a design solution for the design problem statement. An improved CNL user interface that assists users to produce valid design problem statements that are CNL-compliant. The CNL user interface receives user-selectable terms that are compliant with the CNL lexicons and generates candidate problem statements that are compliant with CNL syntax structures and receives a selection of a candidate problem statement that is added to the design problem statement. A graphical user interface may display a graphical representation of a design problem statement that can be directly modified. A dialogue-based design process to explore possible design intentions and design solutions.
摘要:
A computer implemented system for checking a program code that includes a lexical analyzer to lexically analyze the expressions of the program code and generate tokens representing these expressions. The system includes a parser that receives and parses the tokens to determine whether the tokens form an allowable expression. A tree generation module generates a parsed tree that represents relationship between the tokens in a tree-format. The system further includes an abstractor that cooperates with the tree generation module, and stores at least one meta model that represents program code in an entity-relationship format. A rule engine executes the code checking rule(s) on the populated instance of the meta model, and determines whether said program code complies with the code checking rule(s). The system also includes a report generator that generates at least one report indicating the compliance level of the program code with the code-checking rule(s).
摘要:
Methods, systems, and apparatuses, including computer programs encoded on computer readable media, for generating a plurality of tokens from one or more source files that include source code in a first programming language. The source code includes one or more static conditionals that include a conditional expression and branch code that is operative when the conditional expression is true. Various configurations are possible based upon the conditionals. A first static conditional includes one or more nested static conditionals within the branch code associated with the first static conditional. Each of the one or more nested static conditionals is hoisted to a beginning of the branch code associated with the first static conditional. Each innermost branch code does not contain a static conditional and each possible configuration is preserved.
摘要:
A system and method can support compatibility checking in a programming language environment. The programming language environment can check whether a target type associated with an expression in the programming language environment is functional, wherein the target type is functional when it has exactly one method meeting one or more criteria that define that method as relevant in a counting system. Then, the programming language environment can derive a function descriptor from the target type, which is context-dependent. Furthermore, the programming language environment can type-check the expression with the function descriptor associated with the target type.
摘要:
Program converting methods, apparatus and systems including a code analysis unit for performing lexical and syntactic analyses of a source code of an execution program, an optimization unit for transforming this execution program, and an output code generation unit for converting the transformed execution program into a machine language code. In addition, this optimization unit detects a calling procedure and a called procedure in a procedure call of this execution program analyzed by the code analysis unit, guards an evaluation of an argument described in the called procedure under a predetermined evaluation condition, and transforms the execution program so that the evaluation is performed when referring to this argument.
摘要:
Program converting methods, apparatus and systems including a code analysis unit for performing lexical and syntactic analyses of a source code of an execution program, an optimization unit for transforming this execution program, and an output code generation unit for converting the transformed execution program into a machine language code. In addition, this optimization unit detects a calling procedure and a called procedure in a procedure call of this execution program analyzed by the code analysis unit, guards an evaluation of an argument described in the called procedure under a predetermined evaluation condition, and transforms the execution program so that the evaluation is performed when referring to this argument.
摘要:
Expressions are selectively retrieved from memory during compilation by scanning code for expressions that can be effectively accessed directly from highly cached memory without needing to be loaded into a register, e.g., expressions that are not modified by the rest of the code. The scanning may include examining the use of the expression. Those expressions may be retrieved directly from the highly cached memory rather than being loaded into registers. This reduces compilation time.
摘要:
A method of implementing a grammar in hardware processing is described. The method comprises determining a delineation of one or more terminals in a received string; assigning one or more non-terminals to one or more of the one or more terminals, wherein the one or more non-terminals belong to a grammar and are stored in a symbol table; reducing the one or more non-terminals to one or more reduced non-terminals symbols based on a set of reduction rules; producing one or more leaf non-terminals based on at least one of the one or more reduced non-terminals and a set of production rules; and generating actions and data as a result of the actions based on the production rules used to produce the one or more leaf non-terminals and based on the delineation of the received string.
摘要:
A method for lexically analyzing an input stream including invoking a multipurpose lexical analyzer, wherein invoking the multipurpose lexical analyzer comprises examining a parameter setting, scanning the input stream to obtain a token using a token definition, and determining whether to ignore the token using the parameter setting, returning the token to a calling process if the token is to be processed.