Scanning And Lexical Analysis Patents (Class 717/142)
  • Patent number: 6802059
    Abstract: A method and apparatus for transforming character strings that are contained in a unit of code. A conversion mechanism performs a macro substitution by transforming hard coded strings into unique macro strings. The conversion mechanism is configured to receive a set of computer instructions that are contained in one or more files. The conversion mechanism parses the instructions to identify character strings included within the computer instructions, while copying the files to one or more output source code files. Upon identifying each string, the conversion mechanism generates a unique macro string as a substitute for the original string. The conversion mechanism then substitutes the unique macro string for the identified string in the source code of the computer program. The conversion mechanism also generates an entry in a macro list that associates the unique macro string with the identified string for use during compilation of the computer instructions.
    Type: Grant
    Filed: August 2, 1999
    Date of Patent: October 5, 2004
    Assignee: Ricoh Corporation
    Inventors: Yevgeniya Lyapustina, Tetsuro Motoyama
  • Patent number: 6754892
    Abstract: A process for packing an instruction word including providing a word value representing an instruction word into which an operation is to be fit be equal to some initial value having a plurality of portions representing constraints, operating on the initial value of the value word with operation class values having a plurality of portions representing constraints of a new operation as the new operation is attempted to be fit into the instruction to affect the processor word value in a manner to indicate when the limit of any constraint for the instruction is reached, and determining a violation of any constraint to determine that the new operation does not fit the format.
    Type: Grant
    Filed: December 15, 1999
    Date of Patent: June 22, 2004
    Assignee: Transmeta Corporation
    Inventor: Stephen C. Johnson
  • Patent number: 6748585
    Abstract: Programming language constructs called pronouns and referents, and a method, system, and apparatus for translating computer source code that contains the pronouns and referents. A referent is any semantic or syntactic construct in the source code (e.g., a statement, a portion of a statement, an expression, or a value) to which a pronoun refers. A pronoun is a programming-language defined source-code symbol or a sequence of symbols that refers to the referent. As a result, pronouns eliminate the need to define new names or macros for repeated program segments. When a translator encounters the pronoun in the source code, the translator searches the source code for the referent and substitutes the referent for the pronoun. Thus, by using pronouns and referents, the programmer can write programs faster and easier and eliminate program redundancy without losing readability.
    Type: Grant
    Filed: November 29, 2000
    Date of Patent: June 8, 2004
    Assignee: Microsoft Corporation
    Inventors: Todd A. Proebsting, Benjamin G. Zorn
  • Publication number: 20040093200
    Abstract: A concept recognition system includes a concept recognition training system and a real-time system. The concept recognition training system processes a training set and produces a lexical profile keyed to a target category. The lexical profile comprises a set of lexical cues, which are words and phrases associated with the target category. A trainer starts with an initial lexical profile that comprises a small set of seed cues. The training system retrieves samples from the training set that match lexical cues in the lexical profile. The trainer determines which of the retrieved samples are positive instances of the target category. The training system extracts lexical cues from the positive instances and adds new lexical cues to the lexical profile. The real-time system uses the lexical profile as the basis for making confidence judgments for each new incoming message from the same input stream with respect to whether the message is an instance of the target category.
    Type: Application
    Filed: November 7, 2002
    Publication date: May 13, 2004
    Applicant: Island Data Corporation
    Inventor: Eric D. Scott
  • Publication number: 20040083466
    Abstract: Dedicated hardware is employed to perform parsing of documents such as XML™ documents in much reduced time while removing a substantial processing burden from the host CPU. The conventional use of a state table is divided into a character palette, a state table in abbreviated form, and a next state palette. The palettes may be implemented in dedicated high speed memory and a cache arrangement may be used to accelerate accesses to the abbreviated state table. Processing is performed in parallel pipelines which may be partially concurrent. dedicated registers may be updated in parallel as well and strings of special characters of arbitrary length accommodated by a character palette skip feature under control of a flag bit to further accelerate parsing of a document.
    Type: Application
    Filed: December 31, 2002
    Publication date: April 29, 2004
    Inventors: Michael C. Dapp, Eric C. Lett
  • Patent number: 6728952
    Abstract: A computer system identifies a predicate in a computer language containing constant expressions as vacuous. The system identifies distinct variables contained in the predicate and represents the predicate by a set of bounding rectangles. The bounding rectangles are represented in a space having a number of dimensions equal to the number of variables. There are finite limits on dimensions of a bounding rectangle which represent the relationship between the variables in the predicate and the constant expressions in the predicate. The predicate is identified as vacuously FALSE where the set of bounding rectangles is empty.
    Type: Grant
    Filed: September 24, 1999
    Date of Patent: April 27, 2004
    Assignee: International Business Machines Corporation
    Inventors: Michael James Carey, Serge Philippe Rielau, Bennet Vance
  • Publication number: 20040068717
    Abstract: A system and method of executing an interpretive language in a system having a processing component with native software processes and a memory component. A hardware component is coupled with the processing component and the memory component. The hardware component assists with the processing of the interpretive language and the system is permitted to execute the native software processes of the processing component.
    Type: Application
    Filed: December 13, 2001
    Publication date: April 8, 2004
    Inventors: Vidyasagar Edara, Paul Zimmerman, Anuradha Bommaji
  • Patent number: 6715141
    Abstract: A multiphase single pass interpreter switches modes of execution. The interpreter scans a program file in a scan phase until a tag signaling the presence of a script language is encountered. The interpreter then switches its mode to full parse phase where each line scanned is tokenized and parsed. Tokens are replaced with their dynamic content, if any. When the interpreter detects logic blocks, the interpreter changes its mode to p-code generation phase and generates p-code for the lines of code within the logic block. The generated p-code is then executed by the interpreter in its p-code execution phase. The interpretation is performed in a single pass through the program file.
    Type: Grant
    Filed: June 15, 2000
    Date of Patent: March 30, 2004
    Inventor: Bruce Hodge
  • Publication number: 20040015907
    Abstract: In a system that uses collectors to gather data indicating the status of nodes in an enterprise, analyzers are provided to analyze the collector data. Each analyzer includes a program and an accompanying XML analyzer descriptor. Each analyzer program is written in one of several programming language. Each descriptor identifys the types of collectors whose data the program accepts and also identifys the language in which the program is written. A framework exercises a set of one or more of these analyzer programs repeatedly, and during each such repetitive exercise of the set, presents the set of analyzers with collector output data gathered from a different specific set of one or more nodes. During each exercise of each analyzer program, the framework reviews the analyzer's descriptor and executes the program in a program execution environment appropriate to the language in which the program is written.
    Type: Application
    Filed: May 21, 2002
    Publication date: January 22, 2004
    Inventors: Peter Van Giel, Michael Joseph Brandon, William Paul Wedlake, Peter A. Put, Adam M. Carr, Paul Edward Holland, Mark W. McDowell
  • Publication number: 20040015892
    Abstract: A compiler comprises a lexical scanner with a dynamic character identification table that accommodates different standards for encoding characters in source and target characters. The scanner is associated with data files that enable conversion of the character identification table and also source code to conform to different standard character set representations. The scanner compares the character sets associated with the source and target codes. The source code is loaded into a buffer, and if a discrepancy in character sets exists, the buffered source code is converted to the target character set. The scanner also compares the character sets associated with the target code and the character identification table. If a mismatch exists, the scanner converts the character identification table to conform to the target character set. The lexical scanner provides greater flexibility in reading and generating program code.
    Type: Application
    Filed: March 28, 2002
    Publication date: January 22, 2004
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Ibrahim Batthish
  • Patent number: 6675374
    Abstract: A technique is provided for inserting memory prefetch instructions only at appropriate locations in program code. The instructions are inserted into the program code such that, when the code is executed, the speed and efficiency of execution of the code may be improved, cache conflicts arising from execution of the prefetch instruction may be substantially eliminated, and the number of simultaneously-executing memory prefetch operations may be limited to prevent stalling and/or overtaxing of the processor executing the code.
    Type: Grant
    Filed: October 12, 1999
    Date of Patent: January 6, 2004
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: John Samuel Pieper, Steven Orodon Hobbs, Stephen Corridon Root
  • Patent number: 6675370
    Abstract: Documentation of a software application is automatically generated for the classes, written in an object oriented-language, which comprise the application. The classes within the application are typically arranged in a hierarchy and contain productions of a specification grammar in Extended Backus Naur form. The automatically generated documentation corresponding to these productions are closely wired to the underlying class hierarchy by creating hypertext links between the productions in different classes. Thus, these generated hyperlinks allow browsing of the automatically generated documentation according to the hierarchical structure of the classes in the object-oriented class hierarchy being documented.
    Type: Grant
    Filed: February 2, 2000
    Date of Patent: January 6, 2004
    Assignee: International Business Machines Corporation
    Inventor: Neelakantan Sundaresan
  • Patent number: 6658646
    Abstract: For a large system having an associated monitoring system with one or more user interfaces that each requires a large amount of direct user interaction, a scripting language especially well suited to write a script (that generates liaison interface between the user and the existing user interfaces) is provided. The liaison interface requires much less direct user interaction by taking the place of the user in the extensive direct interaction required by the existing user interfaces. Such a scripting language that includes an integration construct data structure that permits commands of discrete interfaces to be integrated in a single script that is to be executed by a machine. Also provided are scripts according to the scripting language, that include at least two of the integration construct data structures.
    Type: Grant
    Filed: September 29, 1999
    Date of Patent: December 2, 2003
    Assignee: Lucent Technologies Inc.
    Inventor: Gaspar Hernandez, III
  • Patent number: 6654953
    Abstract: Attribute tags embedded in the statements of a source program system extend a programming language. A compiler for the program includes an interface to detect the attribute tags and to call one of a number of attribute-provider programs external to the compiler. The provider programs modify the operation of the compiler, for example by injecting additional statements or other code into the program at one or more predetermined points remote from the attribute tag. The compiler interface lists the names of the attributes and locations of their associated provider programs.
    Type: Grant
    Filed: October 9, 1998
    Date of Patent: November 25, 2003
    Assignee: Microsoft Corporation
    Inventors: Christian Beaumont, Jonathan Caves, Paul F. Ringseth
  • Patent number: 6651241
    Abstract: A scriptor and interpreter are disclosed. The scriptor and interpreter each not only check the syntax of a command in a script, but also that the values for the variables passed as arguments to command are consistent with the values attributed to those variables in preceding portions of the script.
    Type: Grant
    Filed: September 29, 1999
    Date of Patent: November 18, 2003
    Assignee: Lucent Technologies Inc.
    Inventor: Gaspar Hernandez, III
  • Patent number: 6629313
    Abstract: Systems and methods that enable a source code file containing in-line database access statements to be compiled into object code for an application without the use of a pre-compiler are disclosed. In one aspect of the system, the source code contains delimiters that enclose an attribute section comprising in-line database access statements. The compiler of the system communicates the attribute section to an attribute provider, which translates the attribute section into statements that can be processed by the compiler. A further aspect of the system is that the attribute provider is a software component. The software component can be a COM (Component Object Model) component. A still further aspect of the system is that the attribute provider can communicate with a database management system in order to assist in validating the attributes against the tables and columns of the database.
    Type: Grant
    Filed: June 29, 2000
    Date of Patent: September 30, 2003
    Assignee: Microsoft Corporation
    Inventors: Dean Rowe, David Lee
  • Patent number: 6581206
    Abstract: Language subset validation includes validating multiple program modules that comprise a program. The program modules include multiple bytecodes defined for a first computer language that is a hardware-dependent subset of a second computer language. The validation includes indicating an error condition for items in the multiple program modules that are not defined for the first computer language, indicating an error condition for items in the multiple program modules that are not supported by an execution environment of the first computer language and indicating an error condition for items in the multiple program modules that are defined for the first computer language but used in a manner inconsistent with the first computer language.
    Type: Grant
    Filed: November 12, 1999
    Date of Patent: June 17, 2003
    Assignee: Sun Microsystems, Inc.
    Inventor: Zhiqun Chen
  • Patent number: 6578197
    Abstract: A system and method for high-speed execution of graphics application programs, including shading language instructions, that utilize 3D graphics hardware. The method involves expressing a graphics computation in a platform-independent procedural shading expression, converting the expression (i.e., user application program) into an intermediate representation such as a tree, and then translating it into a sequence of parametric shading expressions. The method can alternatively processes the intermediate tree representation using a cost-based, tree-grammar recognizer such as iburg. The result is a platform-specific and least-cost, in terms of the underlying hardware, sequence of parametric shading expressions that realizes the graphics computation. The system and method is useful in translating platform-independent RenderMan™ Shading Language programs into fast-executing, platform-specific OpenGL™ or Direct3D™ executable code.
    Type: Grant
    Filed: April 8, 1998
    Date of Patent: June 10, 2003
    Assignee: Silicon Graphics, Inc.
    Inventors: Mark Peercy, John M. Airey, Jonathan Brandt
  • Patent number: 6574792
    Abstract: Dynamically generating expanded user messages, in a computer system having a logging tool for creating a log file. The log file comprises log messages produced in response to events occurring during execution of an application program. Firstly, the application program source code is pre-analysed to extract a plurality of program components, including comments. The different component types and comments associated with them are ordered into tabular form. An individual log message is read from the log file and its program components are determined. Comments associated with these program components are read from the relationship tables. The comments are used to supplement the original log message by combining them to produce expanded user messages in a user-friendly format. These expanded user messages may be further grammatically parsed into natural language, in order to provide the end user with more meaningful diagnostic information.
    Type: Grant
    Filed: May 31, 2000
    Date of Patent: June 3, 2003
    Assignee: International Business Machines Corporation
    Inventor: John Paul Easton
  • Patent number: 6523171
    Abstract: A method for translating source code programs written in a procedural computer language in source code programs written in an Object Oriented language. The method of the invention provides a parser which adds to the lexicographic and syntactical analysis of the source code a semantic analysis: a parser is written for identifying the semantic patterns in the source code. At execution, the parser reads the instructions of the procedural language and classify the sequences of instructions identified as using a known pattern. According to the matched patterns, the parser creates different categories of classes containing both functional (linearly translated code) or references to other object instances. Each time an object is discovered in the code it is stored in an Object Dictionary with its description and reused when referred later in the code.
    Type: Grant
    Filed: November 29, 1999
    Date of Patent: February 18, 2003
    Assignee: International Business Machines Corporation
    Inventors: Jean-Christophe Dupuy, Martine Linares-Langloys, Rémi Piro, Marc Fiammante, Eric Menguy, Patrick Boeuf
  • Patent number: 6516461
    Abstract: A source code translating method includes the steps of representing a particular source code in the form of an abstract syntax tree without using nodes representing expression statements, and converting such abstract syntax tree into a character string, wherein as the type of the root node in the abstract syntax tree being processed is if-statement (T71), a branch is taken to invoke the “procedure for producing if-statement” where a character string “if (” is first produced, and then, to produce “x==0” contained in the first occurrence of the subtree, the “procedure for outputting the abstract syntax tree as an expression” is recursively invoked, then a character string “)” is produced; to produce “y=0;” contained in the second occurrence of the subtree, the “procedure for outputting the abstract syntax tree as a statement” is recursively invoked, then a character string “else” is produced; and
    Type: Grant
    Filed: March 21, 2000
    Date of Patent: February 4, 2003
    Assignees: Secretary of Agency of Industrial Science & Technology
    Inventor: Yuuji Ichisugi
  • Publication number: 20020170041
    Abstract: A method of forming an executable program from a plurality of object code modules, each object code module having section data, a set of relocation instructions and one or more symbols, each symbol having a plurality of attributes associated therewith, wherein said relocation instructions includes a data retrieval instruction having a symbol field identifying a symbol and an attribute field identifying a symbol attribute associated with said identified symbol to be retrieved, the method includes: reading at least one relocation from said set of relocations instruction and where said relocation instruction is a data retrieval instruction, determining the symbol identified by the symbol field and retrieving one of said plurality of symbol attributes associated with said symbol in dependence on the contents of the symbol attributes field of said instruction.
    Type: Application
    Filed: December 20, 2001
    Publication date: November 14, 2002
    Applicant: STMicroelectronics Limited
    Inventor: Richard Shann
  • Publication number: 20020166114
    Abstract: Programming language constructs called pronouns and referents, and a method, system, and apparatus for translating computer source code that contains the pronouns and referents. A referent is any semantic or syntactic construct in the source code (e.g., a statement, a portion of a statement, an expression, or a value) to which a pronoun refers. A pronoun is a programming-language defined source-code symbol or a sequence of symbols that refers to the referent. As a result, pronouns eliminate the need to define new names or macros for repeated program segments. When a translator encounters the pronoun in the source code, the translator searches the source code for the referent and substitutes the referent for the pronoun. Thus, by using pronouns and referents, the programmer can write programs faster and easier and eliminate program redundancy without losing readability.
    Type: Application
    Filed: November 29, 2000
    Publication date: November 7, 2002
    Inventors: Todd A. Proebsting, Benjamin G. Zorn
  • Patent number: 6453464
    Abstract: The present invention relates to a method for translating computer programs from a language having the attributes of computer programming language COBOL to a language having the attributes of the computer programming language Java. In particular, source language primitive functions are represented by archetypal templates having code that is selectable based upon the applicable case. In one implementation, the source language is translated to target language code which is, in turn, compiled by a target language compiler, thereby providing a two-step source language compiler.
    Type: Grant
    Filed: August 25, 1999
    Date of Patent: September 17, 2002
    Assignee: LegacyJ. Corp., Inc.
    Inventor: Brian J. Sullivan
  • Patent number: 6446256
    Abstract: A bilateral interface may comprise an object interface and, optionally, a language interface. The object interface comprises at least an object-side object interface to be included in an external object, and a structure-side object interface to be included in a parsable structure. When executed, an object initialization routine included in the object-side object interface provides an identification of the structure-side object interface to the external object. Conversely, a structure initialization routine included in the structure-side object interface provides an identification of at least one object interaction routine to the external object. The external object can then invoke the at least one object interaction routine to interact with the parsable structure. The language interface is similarly constructed.
    Type: Grant
    Filed: June 30, 1999
    Date of Patent: September 3, 2002
    Assignee: Microsoft Corporation
    Inventors: Michael I. Hyman, Phani K. Vaddadi
  • Patent number: 6434742
    Abstract: The present symbol renaming process allows a symbol in a first source code file to be renamed by the linker. This allows new layers of software to be added under an existing interface without recompiling existing code. Symbol renaming in the linker also allows a programmer to easily fix mismatched symbols in linked files without recompiling the source code in all of the linked files. The linker scans a first intermediate object code file to detect a substitution indicator indicating a variable or function in a second file is to be renamed. The symbol to be replaced is read and then the substitution symbol is read. The linker then replaces every occurrence of the symbol as the symbol is read from a second file with the substitution symbol in the intermediate code file generated by the linker.
    Type: Grant
    Filed: May 10, 1999
    Date of Patent: August 13, 2002
    Assignee: Lucent Technologies Inc.
    Inventor: John Curtis Koepele, Jr.
  • Patent number: 6427232
    Abstract: A method and implementing computer system is provided in which a software debug program is operable to display to a user the flow of a program being debugged. The program flow is illustrated in an example by highlighting, on a program structural representation which is presented on a display screen, the locations of sequential calls within the program being debugged. In one example, a user is selectively able to stop the debug program at any observed step within the displayed flow sequence, to make programming changes or take other action as may be appropriate. In the example, the debug program user is also able to select an automatic sequencing through the flow of a program being developed and to designate a preferred display time duration for each step of the displayed sequencing.
    Type: Grant
    Filed: June 10, 1999
    Date of Patent: July 30, 2002
    Assignee: International Business Machines Corporation
    Inventors: William Hsiao-Yu Ku, Joey Allen Perry, John Shih-Yuan Wang
  • Patent number: 6397383
    Abstract: The present invention provides a system and method for parsing a constraint language in a computer network. The method includes receiving a constraint string; parsing the constraint string, comprising replacement of valid operators, variables, and values with special characters; and determining if the parsed constraint string indicates the existence of errors in the constraint string. The parser of the present invention is based upon an analysis of the constraint language from which patterns of the language are identified. The easily implemented parser of the present invention is developed based on these patterns. Because the method of the present invention replaces members of a finite set of valid operators, variables, and values, instead of attempting to identify an infinite number of possible errors, it is able to detect all invalid constraints.
    Type: Grant
    Filed: February 26, 1999
    Date of Patent: May 28, 2002
    Assignee: International Business Machines Corp.
    Inventors: David Yu Chang, Ajay Reddy Karkala, John Shih-Yuan Wang
  • Patent number: RE38104
    Abstract: A hybrid compiler-interpreter comprising a compiler for “compiling” source program code, and an interpreter for interpreting the “compiled” code, is provided to a computer system. The compiler comprises a code generator that generates code in intermediate form with data references made on a symbolic basis. The interpreter comprises a main interpretation routine, and two data reference handling routines, a dynamic field reference routine for handling symbolic references, and a static field reference routine for handling numeric references. The dynamic field reference routine, when invoked, resolves a symbolic reference and rewrites the symbolic reference into a numeric reference. After re-writing, the dynamic field reference routine returns to the main interpretation routine without advancing program execution to the next instruction, thereby allowing the rewritten instruction with numeric reference to be reexecuted.
    Type: Grant
    Filed: March 3, 1999
    Date of Patent: April 29, 2003
    Assignee: Sun Microsystems, Inc.
    Inventor: James Gosling