Parsing, Syntax Analysis, And Semantic Analysis Patents (Class 717/143)
-
Patent number: 8429626Abstract: Aspects of the present invention are directed at obtaining user feedback and causing a package of content updates to be created and distributed based on the received feedback. In accordance with one embodiment, a method is provided for creating a package that contains one or more content updates configured to change the content that is displayed by default when a program executes. More specifically, the method includes obtaining input that describes one or more content updates. In this regard, the input received may include the user-defined content that will be displayed when the program executes and the identity of the content displayed by default. Then, the method assembles selected content updates into a package that is suitable for transmission over a network connection. When the package is assembled, processing is provided that allows the content updates in the package to be implemented on a remote computing device.Type: GrantFiled: February 15, 2007Date of Patent: April 23, 2013Assignee: Microsoft CorporationInventors: Cameron B. Lerum, Catherine A. Wissink, Roxanne M. Seubert, Sushmita Subramanian, Vivek R. Rao, Yaron Hezroni
-
Patent number: 8423971Abstract: Generating an application software library comprises: a static analyser processing a binary input library to identify one or more locations in the binary input library which satisfy a semantic analysis condition; inserting metadata into the binary input library at the one or more locations which satisfy the semantic analysis condition; and linking the binary input library with a binary aspect library to generate the application software library, wherein the binary aspect library includes an aspect definition using the metadata.Type: GrantFiled: May 24, 2006Date of Patent: April 16, 2013Assignee: International Business Machines CorporationInventor: Adrian Mark Colyer
-
Patent number: 8423977Abstract: System and method for converting a class oriented data flow program to a structure oriented data flow program. A first data flow program is received, where the first data flow program is an object oriented program comprising instances of one or more classes, and wherein the first data flow program is executable to perform a first function. The first data flow program is automatically converted to a second data flow program, where the second data flow program does not include the instances of the one or more classes, and where the second data flow program is executable to perform the first function. The second data flow program is stored on a computer memory, where the second data flow program is configured to be deployed to a device, e.g., a programmable hardware element, and where the second data flow program is executable on the device to perform the first function.Type: GrantFiled: April 27, 2009Date of Patent: April 16, 2013Assignee: National Instruments CorporationInventors: Stephen R. Mercer, Akash B. Bhakta, Matthew E. Novacek
-
Patent number: 8418148Abstract: A thread execution analyzer analyzes blocking events of threads in a program using execution data and callstacks collected at the blocking events. The thread execution analyzer attempts to identify an application programming interface (API) responsible for each blocking event and provides blocking analysis information to a user. The blocking analysis information may be used by a developer of the program to understand the causes of blocking events that occur for threads of the program.Type: GrantFiled: February 27, 2009Date of Patent: April 9, 2013Assignee: Microsoft CorporationInventors: Hazim Shafi, Brian Adelberg, Khaled S. Sedky
-
Patent number: 8413124Abstract: A system and method for compiling and matching regular expressions is disclosed. The regular expression compiling system includes a syntax analyzing module and at least two types of compiling modules. The syntax analyzing module is configured to analyze syntactic characteristics of a regular expression and send the regular expression to an appropriate compiling module according to preset syntactic rules and the syntactic characteristics of the regular expression; and the appropriate compiling module is configured to receive the regular expression and compile the regular expression into a data structure of a specific form.Type: GrantFiled: January 29, 2010Date of Patent: April 2, 2013Assignee: Huawei Technologies Co., Ltd.Inventor: Hao Wang
-
Publication number: 20130074054Abstract: The described embodiments present techniques for recovering from syntax errors. These techniques correct potential errors while preserving the shape of the parse tree, and the specific implementation of the techniques can be automatically generated from the grammar. These techniques may operate by looking back at states associated with previously-received tokens to determine pair matching status, when a synchronizing symbol is received. The techniques can respond to the pair matching status determination by potentially adding a synthesized token or by deleting a token that has already been received. The techniques may use a structure referred to herein as a tuple to assist with the evaluation of the pair matching status. Some of the techniques utilize indentation information to evaluate the pair matching status, while other techniques ignore such information. The described embodiments also include a technique for automatically generating the tuples from a set of grammar rules associated with the parser.Type: ApplicationFiled: November 15, 2012Publication date: March 21, 2013Applicant: The MathWorks, Inc.Inventor: The MathWorks, Inc.
-
Patent number: 8402547Abstract: A static code analysis (SCA) tool, apparatus and method detects, prioritizes and fixes security defects and compliance violations in SAP® ABAP™ code. The code, meta information and computer system configuration settings are transformed into an interchangeable format, and parsed into an execution model. A rules engine is applied to the execution model to identify security and compliance violations. The rules engine may include information about critical database tables and critical SAP standard functions, and the step of applying the rules engine to the execution model may include the calculation of specific business risks or whether a technical defect has a business-relevant impact. In particular, an asset flow analysis may be used to determine whether critical business data is no longer protected by the computer system. Such critical business data may include credit or debit card numbers, financial data or personal data.Type: GrantFiled: March 11, 2011Date of Patent: March 19, 2013Assignee: Virtual Forge GmbHInventors: Andreas Wiegenstein, Markus Schumacher, Xu Jia
-
Patent number: 8402427Abstract: A method, system and apparatus for providing a web application or to generate the basis for a complete web application source code. Based on user interface input files provided by graphic designers, the web application or generates application framework code, an event handler skeleton and s logic foundation code. Web developers then prepare additional source code object-oriented programming language based on the event handler skeleton and business logic foundation code to create web application business logic objects and handler methods. Ultimately the graphical user interface input files prepared by the designers and web application source code prepared by the web developers dynamically bound at runtime.Type: GrantFiled: August 29, 2006Date of Patent: March 19, 2013Assignee: Gutenberg Printing LLCInventor: Hiang-Swee Chiang
-
Patent number: 8402430Abstract: A method includes receiving a modeling template, the modeling template comprising a plurality of modeling constructs and profile constructs, each profile construct generated from a modeling profile and comprising an extension of one of the modeling constructs. The method further includes parsing the modeling template into the plurality of modeling constructs and profile constructs. One or more object-oriented constructs are defined based, at least in part, on the parsed modeling constructs and profile constructs. Source code is automatically generated in an object-oriented programming language based, at least in part, on the defined object-oriented constructs. The object-oriented programming language comprises an object-oriented programming language with embedded inferencing.Type: GrantFiled: September 20, 2010Date of Patent: March 19, 2013Assignee: CA, Inc.Inventors: Kirk D. Wilson, Christopher X. Condit, It-Beng Tan
-
Patent number: 8397222Abstract: Methods for constructing an Any-to-Any data machine (consisting of Any-to-Any data components and their environmental requirements) and an Any-to-Any code machine (consisting of Any-to-Any code components and their environmental requirements) and relating them together so that they harmoniously interact and so that the data Any-to-Any machine controls and is also acted upon by the code Any-to-Any machine so as to produce an Any-to-Any system that transforms data in a manner that is useful and which is analogous to the harmonious interaction of the Any-Any binary code and Any-to-Any transistor systems, and which handles data and transforms it in a sufficiently similar manner to the manner in which the human handles and transforms data that the human finds it easy and intuitive to operate, all supported by methods that enable data to be stored in a single logical grid structure that can accept and correctly relate, transmit and receive any data, together examples of methods to derive benefits from these inventiType: GrantFiled: December 5, 2008Date of Patent: March 12, 2013Inventor: Peter D. Warren
-
Patent number: 8397221Abstract: Bounding resource consumption of code that processes recursive data structures and collections includes making use of quantitative functions (based on user input) that are associated with a tuple of data-structures and whose semantics is specified by describing the effect of various data-structure methods on the relevant quantitative functions. Counter variables are incorporated into source code to count loop iterations (and number of recursive procedure call invocations). Relevant quantitative functions are incorporated into the source code to allow computation of invariants (and hence bounds) on the incorporated counter variables in terms of the quantitative functions.Type: GrantFiled: October 7, 2008Date of Patent: March 12, 2013Assignee: Microsoft CorporationInventors: Sumit Gulwani, Krishna Kumar Mehra, Trishul A Chilimbi
-
Publication number: 20130055223Abstract: Disclosed is a programming language system that can produce executable program code from source code, even if the source code contains errors. In embodiments, the programming language system includes a fault tolerant compiler that can detect errors in the source code, but nonetheless produce valid compiler constructs representative of the errors in the source code. Accordingly, the compilation process can proceed despite errors in the source code and produce executable program code.Type: ApplicationFiled: December 20, 2011Publication date: February 28, 2013Applicant: MYEZAPP INC.Inventor: Sichun Xu
-
Patent number: 8387029Abstract: A method for parsing and executing a software program includes receiving a portion of a software program in an original linguistic form, wherein the portion of the software program includes a nonlinear program element having a body, and, while retaining the original linguistic form, directly executing the nonlinear program element by manipulating a parse state and an input stream of tokens representing the body of the nonlinear program element, wherein directly executing comprises executing tokens until the dynamic end of the nonlinear program element is reached. A system includes a tokenizer operable to tokenize the software program and a parser operable to directly execute a nonlinear program element in the software program by manipulating a parse state and an input stream of tokens representing the body of the nonlinear program element, while preserving the original linguistic form of the software program.Type: GrantFiled: July 25, 2006Date of Patent: February 26, 2013Assignee: Hercules Software, LLCInventor: Peter L. Bird
-
Patent number: 8387025Abstract: A system for dynamically integrating changes in the rules governing business operations into an application program that implements the rules in order to control business operations includes a dynamic business logic rule integrator (“DBLRI”) that essentially provides business logic rules to the application software as executable routines. The DBLRI presents to a user one or more graphical user interfaces (“GUIs”) through which the user writes functional-language expressions for the business logic rules. The respective GUIs correspond to various types of business logic rules, and provide to the user menus of associated functions, operators and parameters that are available for use. The set of parameters associated with a given GUI is dynamically updated, to correspond to changes in the underlying business logic rules. The user writes and/or edits the expressions for the respective business logic rules by selectively combining the available functions, operators and parameters.Type: GrantFiled: September 8, 2006Date of Patent: February 26, 2013Assignee: Millennium IT (USA) Inc.Inventor: Lakshitha C. Surasinghe
-
Patent number: 8387030Abstract: A back-end service adaptation system provides access to normalized data in a data repository for a consumer runtime environment sending a query request for denormalized data. The back-end service adaptation system can include a data access service layer, a parser layer, and a back-end service adaptation runtime layer. The consumer runtime can use a service adaptation definition language (SADL), and the parser and data access service can be configured to convert and translate the SADL request for the back-end service adaptation runtime layer.Type: GrantFiled: December 28, 2009Date of Patent: February 26, 2013Assignee: SAP AGInventors: Frank Brunswig, Thomas Fiedler, Oswald Gschnitzer, Marcel Hermanns, Markus Viol, Jens Weiler, Gerhard Wenzel
-
Patent number: 8381178Abstract: The system and method in one aspect allow understanding of Boolean expressions by representing them graphically as a flow of information. NOTs are represented as switches in the flow, capturing the original structure of the expression as written by the user. Verification of those expressions with live data is also enabled.Type: GrantFiled: July 2, 2009Date of Patent: February 19, 2013Assignee: International Business Machines CorporationInventors: Jacquelyn A. Martino, Paul M. Matchen, Rosario A. Uceda-Sosa
-
Patent number: 8381201Abstract: In many messaging systems, message selection filtering involves a significant processing overhead. This includes the parsing and preparing of the message selection filters in readiness for evaluation, as well as the evaluation itself. In systems which involve parsing and prepare processing for expressions that include repeated patterns (such as in many JMS environments), a template-based shortcutting of the conventional processing improves performance. A stored parsing template is used to parse an input sequence such as a received data processing instruction. The parse is used to identify expressions of a first type that can then be implicitly optimized by using a stored evaluation template that is associated with expressions of that type.Type: GrantFiled: February 7, 2012Date of Patent: February 19, 2013Assignee: International Business Machines CorporationInventor: Stephen James Todd
-
Patent number: 8380830Abstract: A system and method for processing an input data stream in a first data format of a plurality of first data formats to an output data stream in a second data format of a plurality of second data formats. A plurality of input connector modules receive respective input data streams and at least one input queue stores the received input data streams. A plurality of job threads is operatively connected to the at least one input queue, each job thread formatting a stored input data stream to produce an output data stream. At least one output queue stores the output data streams from the plurality of job threads. A plurality of output connector modules is operatively connected to the at least one output queue, the output connector modules supplying respective output data streams.Type: GrantFiled: April 22, 2011Date of Patent: February 19, 2013Assignee: Open Text S.A.Inventors: Dennis D. Ladd, Anders Hermansson
-
Patent number: 8375373Abstract: In a change-resilient intermediate language code, registers have been allocated but symbolic references and pseudo instructions still use unbound items. Pseudo instructions having a specific location within generated intermediate language code request insertion of machine instruction(s) at the location to perform specified operations. Specified operations may include, for example, operations to perform or facilitate garbage collection, memory allocation, exception handling, various kinds of method calls and execution engine service calls, managed object field access, heap management, generic code, static variable storage access, address mode modification, and/or symbolic reference to types. A binder may transform the intermediate language code into executable code. Little or no register allocation is needed during binding, but unbound items such as offsets, sizes, slots, and the like are determined and specified to produce executable code.Type: GrantFiled: April 19, 2010Date of Patent: February 12, 2013Assignee: Microsoft CorporationInventor: Peter Franz Valentin Sollich
-
Patent number: 8370818Abstract: Methods and apparatus for analyzing the interface usage and requirements within software applications. In one embodiment, the interfaces comprise application programming interfaces (APIs) used with Java-based software, and the apparatus comprises a computer program that analyzes file paths (or classpaths) containing one or more files comprising Java bytecode. The names of the classes are extracted and placed into a class dictionary. The different classes listed in the dictionaries are broken down into their individual methods. Each method is then dissembled and analyzed for method or field invocations on other classes found in the dictionary. Methods called are added to a “used class” report. The used class report preferably contains the name of the class, method and the instruction information.Type: GrantFiled: December 2, 2006Date of Patent: February 5, 2013Assignee: Time Warner Cable Inc.Inventors: Matt Osminer, Robert F. Gazdzinski
-
Patent number: 8370817Abstract: A mechanism is provided for optimizing scalar code executed on a single instruction multiple data (SIMD) engine by aligning the slots of SIMD registers. With the mechanism, a compiler is provided that parses source code and, for each statement in the program, generates an expression tree. The compiler inspects all storage inputs to scalar operations in the expression tree to determine their alignment in the SIMD registers. This alignment is propagated up the expression tree from the leaves. When the alignments of two operands in the expression tree are the same, the resulting alignment is the shared value. When the alignments of two operands in the expression tree are different, one operand is shifted. For shifted operands, a shift operation is inserted in the expression tree. The executable code is then generated for the expression tree and shifts are inserted where indicated.Type: GrantFiled: May 27, 2008Date of Patent: February 5, 2013Assignee: International Business Machines CorporationInventors: Alexandre E. Eichenberger, John Kevin Patrick O'Brien
-
Patent number: 8365155Abstract: Presently described is a decompilation method of operation and system for parsing executable code, identifying and recursively modeling data flows, identifying and recursively modeling control flow, and iteratively refining these models to provide a complete model at the nanocode level. The nanocode decompiler may be used to determine if flaws, security vulnerabilities, or general quality issues exist in the code. The nanocode decompiler outputs in a standardized, human-readable intermediate representation (IR) designed for automated or scripted analysis and reporting. Reports may take the form of a computer annotated and/or partially human annotated nanocode listing in the above-described IR. Annotations may include plain English statements regarding flaws and pointers to badly constructed data structures, unchecked buffers, malicious embedded code or “trap doors,” and the like. Annotations may be generated through a scripted analysis process or by means of an expert-enhanced, quasi-autonomous system.Type: GrantFiled: May 24, 2010Date of Patent: January 29, 2013Assignee: Veracode, Inc.Inventor: Christien Rioux
-
Patent number: 8365156Abstract: Management of changes involving base classes is facilitated. An intermediate language code has execution-ready register allocation but unbound object field layout and/or virtual method slot assignment, thereby providing resilience. A symbolic reference rather than a direct offset can identify a field, and intermediate language code can be field order independent. Other symbolic references may also be used. Intermediate language code pseudo instructions can express items such as a field access, a method call, a virtual method call, part or all of a method prolog, part or all of a method epilog. A binder binds the intermediate language code to produce executable code. Thus, one may avoid recompilation otherwise required when a base class is revised by adding a field, removing a private field, rearranging field order, adding a virtual method, or rearranging virtual method order.Type: GrantFiled: April 17, 2010Date of Patent: January 29, 2013Assignee: Microsoft CorporationInventor: Peter Franz Valentin Sollich
-
Patent number: 8359582Abstract: Method, computer readable medium, and system for specifying before-compiled code, compiling the before-compiled code into a compiled code snippet, specifying an insertion point in a compiled code block of a computer program, and inserting the compiled code snippet into the compiled code block at the specified insertion point while the computer program is running.Type: GrantFiled: September 27, 2008Date of Patent: January 22, 2013Assignee: Hewlett-Packard Development Company, L.P.Inventor: Tavis Elliott
-
Patent number: 8356279Abstract: A program generating device configured to be capable of reducing an operation burden on the user who has conventionally been required to extract portions to be changed from a script. A script acquiring section acquires script information for execution of a predetermined process. An attribute information-acquiring section acquires attribute information representing conditions for operation of a control target of the program generating device. A difference extracting section extracts difference. A script correcting section changes the script information based on difference between the attribute information and the script information.Type: GrantFiled: March 30, 2008Date of Patent: January 15, 2013Assignee: Canon Kabushiki KaishaInventor: Yohei Shogaki
-
Publication number: 20130014093Abstract: The present invention relates to a code inspection executing system for performing a code inspection of ABAP source codes, and particularly, to a code inspection executing system for performing a code inspection of ABAP source codes, which provides the reliable maintainability, performance, accuracy, stability, and security of an ABAP application by inspecting coding defects such as system failure and stoppage, data loss and transformation, excessive performance deterioration, erroneous behavior of functions and results thereof, complex code structures, and spelling errors.Type: ApplicationFiled: April 5, 2010Publication date: January 10, 2013Applicant: SOFT4SOFT CO., LTD.Inventor: Heon Ki Lee
-
Publication number: 20130014094Abstract: Creating and executing a distributed stream processing operator graph based on a query. The operator graph includes movable stream algebra operators for processing events received from high volume data streams. The operators are partially compiled and distributed to computing devices for completion of the compilation and subsequent execution. During execution, the operators maintain minimal state information associated with received events via an expiration time assigned to each of the event instances. Additional events are generated and aggregated by the operators for communication to a service responsible for the query.Type: ApplicationFiled: September 13, 2012Publication date: January 10, 2013Applicant: Microsoft CorporationInventors: Gueorgui B. Chkodrov, Paul F. Ringseth, Tihomir T. Tarnavski, Andy Shen, Roger Shane Barga, Jonathan Goldstein
-
Publication number: 20130007722Abstract: Disclosed are embodiments a computer-implemented method, a system and an associated program storage device that provide for automatic programming language grammar partitioning to solve the “code too large” problem. The embodiments partition a particular programming language grammar into logical subsets based on a set of partitioning heuristics and using a dependency graph that is preprocessed so as to be devoid of any cyclically connected grammar rule nodes. For each logical subset, textual code for a corresponding portion of a parsing program can be generated and then converted into machine-readable code for that corresponding portion of the parsing program. Thus, small amounts of textual code for portions of a parsing program are discretely converted into machine-readable code, thereby avoiding the “code too large” problem. The machine-readable code for all portions of the parsing program can then be merged and the parsing program can be executed in order to parse a corpus.Type: ApplicationFiled: June 28, 2011Publication date: January 3, 2013Applicant: International Business Machines CorporationInventors: Pankaj Dhoolia, Mangala G. Nanda, Krishna Nandivada Venkata, Diptikalyan Saha
-
Patent number: 8347272Abstract: A method of analyzing program source code prepared for a multithreading platform comprises analyzing a targeted source code set to extract a set of characteristic information for each wait operation; analyzing the targeted source code set to extract a set of characteristic information for each notification call to an application programming interface of the multithreading platform; identifying a one-way branching correspondence with a wait operation for each notification call by comparing the extracted set of characteristic information for the notification operation and the extracted set of characteristic information for each wait operation with a set of predefined asynchronous operation correspondence pattern information for notification and wait functions implemented by the application programming interface; extracting a set of information for each identified one-way branching correspondence; and storing the extracted set of information for each identified one-way branching correspondence in a data store.Type: GrantFiled: July 23, 2008Date of Patent: January 1, 2013Assignee: International Business Machines CorporationInventors: Naoki Sugawara, Tadashi Yamamoto
-
Patent number: 8341597Abstract: The present invention relates to the field of computer programming. More specifically the invention relates to a method and a data processing system for editing the source code of a computer program. It is an object of the present invention to provide an easy source code editing technique, by which programming errors and type errors can reliably be avoided in cases where changes to the program are supposed not to change the semantics of the program. This object is achieved according to the invention by a method for editing source code, the method comprising the steps of: receiving a modification to the source code, said modification being made by a user, determining whether the modification would change the semantics of the source code, and handling the modification depending on the result of the determining step.Type: GrantFiled: January 16, 2008Date of Patent: December 25, 2012Assignee: International Business Machines CorporationInventors: Andreas Arning, Friedemann Schwenkreis
-
Patent number: 8341607Abstract: Embodiments of the present invention address deficiencies of the art in respect to pattern matcher generation and provide a method, system and computer program product for automatic pattern matching and generation of intermediate language patterns. In one embodiment of the invention, a pattern matcher generation method can be provided. The method can include identifying input elements from intermediate language code, reducing the identified input elements from the intermediate language code to inputs of common and unique use, creating a unifiable form for each of the input elements of common and unique use, and generating a pattern matcher for each of the input elements of common and unique use in the intermediate language code using a corresponding unifiable form in place of each of the input elements of common and unique use. In particular, the generated pattern matcher can be expression matching and transformation programming framework (EMTF) conformant.Type: GrantFiled: March 13, 2008Date of Patent: December 25, 2012Assignee: International Business Machines CorporationInventors: Kevin A. Stoodley, Arie Tal
-
Patent number: 8336037Abstract: Client Native method Interface (CNI) minimizing eXtensible Mark-up Language (XML) parsing is provided using array pair data structures. An empty array pair is passed to an engine from client code via a CNI call. The engine parses the XML document and fills the array pair with fixed width elements. The filled array pair is passed back to client code. The client code iterates through the elements in the array pair and invokes the appropriate handlers or builds appropriate tree objects for Document Object Model parsing. Thus, one CNI call passes the empty array pair from client code to the engine, and the filled array pair is returned from the engine to client code. Individual sets of CNI calls for each element are avoided, minimizing the number of CNI calls. Further, since elements in the array pair are of fixed width, they can be processed more efficiently by the client code.Type: GrantFiled: May 16, 2007Date of Patent: December 18, 2012Inventor: Richard A. Ross
-
Patent number: 8321846Abstract: Systems, methods, and other embodiments associated with executable templates are described. One example method includes generating an executable template from a set of template data. When an executable template is executed, the executable template creates one or more instantiated entities. These instantiated entities may then be combined with entities created from portions of the original template that were not compilable into the executable format.Type: GrantFiled: November 13, 2008Date of Patent: November 27, 2012Assignee: Oracle International CorporationInventor: Ramkrishna Chatterjee
-
Patent number: 8321847Abstract: A device receives selection of a function category associated with a dynamically-type programming language, receives selection of a function associated with the selected function category, dynamically generates one or more function signatures associated with the selected function, and stores at least a subset of the one or more function signatures in a memory or displays at least a subset of the one or more function signatures to a user.Type: GrantFiled: May 17, 2007Date of Patent: November 27, 2012Assignee: The MathWorks, Inc.Inventors: Christopher F. Garvin, Roy Lurie
-
Patent number: 8321848Abstract: The described embodiments present techniques for recovering from syntax errors. These techniques correct potential errors while preserving the shape of the parse tree, and the specific implementation of the techniques can be automatically generated from the grammar. These techniques may operate by looking back at states associated with previously-received tokens to determine pair matching status, when a synchronizing symbol is received. The techniques can respond to the pair matching status determination by potentially adding a synthesized token or by deleting a token that has already been received. The techniques may use a structure referred to herein as a tuple to assist with the evaluation of the pair matching status. Some of the techniques utilize indentation information to evaluate the pair matching status, while other techniques ignore such information. The described embodiments also include a technique for automatically generating the tuples from a set of grammar rules associated with the parser.Type: GrantFiled: April 16, 2009Date of Patent: November 27, 2012Assignee: The Mathworks, Inc.Inventor: Stephen C. Johnson
-
Patent number: 8316358Abstract: A method and apparatus are set forth for creating a Document Object Model of an XML document of predetermined type, comprising a first process for receiving and opening a compressed input file containing the XML document; a second process for opening and parsing the contents of a relationships file to create a map of name-value pairs and detecting a value for identifying the predetermined type from among a plurality of types of XML documents; and a further process for parsing data in the XML document according to the predetermined type, and building the Document Object Model.Type: GrantFiled: May 31, 2007Date of Patent: November 20, 2012Assignee: Research In Motion LimitedInventors: Jack Chen, David Weintraub, Jian Frank Li
-
Patent number: 8311806Abstract: An apparatus for processing a sequence of tokens to detect predetermined data, wherein each said token has a token type, and the predetermined data has a structure that comprises a predetermined sequence of token types, including at least one optional token type. The apparatus comprises a processor arranged to: provide a tree for detecting the predetermined data, the tree comprising a plurality of states, each said state being linked with at least one other state by a respective condition, the arrangement of linked states forming a plurality of paths; and compare the token types of the sequence of tokens to respective conditions in the tree to match the sequence of tokens to one or more paths in the tree, wherein the predetermined data can be detected without using an epsilon reduction to take account of said at least one optional token type.Type: GrantFiled: September 29, 2008Date of Patent: November 13, 2012Assignee: Apple Inc.Inventors: Olivier Bonnet, Frederic de Jaeger, Romain Goyet
-
Patent number: 8312437Abstract: Architecture allows a programmer to answer questions about the source code the programmer is authoring, questions that cannot be answered by other means. A searching mechanism is provided over a much more structured presentation of the source code. The architecture utilizes components that provide an intimate knowledge about the structure of the text, namely, the source code of some particular programming language. The search mechanism employs an abstract syntax tree representation of the code over which the search is conducted. The program source code (as edited by the programmer) is transformed into the abstract syntax tree to embody the structure of the program. If the syntax tree is provided in XML, for example, an XML search mechanism such as Xpath can be utilized to perform the actual searching. This tree is then queried, allowing richer searching criteria to be expressed (by virtue of the structured format of the tree).Type: GrantFiled: December 30, 2008Date of Patent: November 13, 2012Assignee: Microsoft CorporationInventor: Peter Villadsen
-
Patent number: 8312432Abstract: A method of adjusting a control timing accompanying a program correction of a machine language program executed by an information processor includes preparing a first machine language program obtained by compiling a first source program and generating a second intermediate language program from a second source program, the second source program being corrected from the first source program. Then, the method computes a first number of clock cycles, that is a number of clock cycles to execute a first machine language program obtained by compiling the first source program and computes a second number of clock cycles, that is a number of clock cycles to execute a second machine language program obtained by compiling the second source program, using the second intermediate language program, the second intermediate language program including an instruction that is uniquely correlated with a machine language instruction of the second machine language program.Type: GrantFiled: September 9, 2008Date of Patent: November 13, 2012Assignee: Renesas Electronics CorporationInventor: Kenji Mori
-
Patent number: 8307351Abstract: A system and method is provided for performing code provenance review in a software due diligence system. In particular, performing code provenance review may include sub-dividing source code under review and third-party source into logical fragments using a language-independent text fracturing algorithm. For example, the fracturing algorithm may include a set of heuristic rules that account for variations in coding style to create logical fragments that are as large as possible without being independently copyrightable. Unique fingerprints may then be generated for the logical fragments using a fingerprint algorithm that features arithmetic computation. As such, potentially related source code may be identified if sub-dividing the source code under review and the third-party source code produces one or more logical fragments that have identical fingerprints.Type: GrantFiled: March 18, 2009Date of Patent: November 6, 2012Assignee: Oracle International CorporationInventor: Juergen Weigert
-
Patent number: 8307344Abstract: In a method for tracing data within an integrated circuit, a default time stamp granularity is selected for a sequence of time stamps, wherein each time stamp has a resolution of 2**N. A sequence of trace events is captured and an elapsed time is determined between each time sequential pair of trace events in the sequence of trace events. A time stamp is formed to associate with each trace event of the sequence of trace events, wherein each time stamp has an associated time stamp granularity, wherein the time stamp has the default time stamp granularity if the elapsed time between a current trace event and a sequentially prior trace event is less than 2**N time slots, otherwise the time stamp granularity is slid to a larger value such that the elapsed time can be represented by N bits, whereby a small number N of bits can accurately represent a large range of elapsed times.Type: GrantFiled: August 29, 2008Date of Patent: November 6, 2012Assignee: Texas Instruments IncorporatedInventors: Gilbert Laurenti, Gary A. Cooper
-
Patent number: 8302084Abstract: A technique is disclosed for correcting inconsistent language model parameters associated with a compiled computer readable project. One or more compiled units are analyzed to identify compiler commentary therein. Based on the debugging information, it is determined whether inconsistent language model parameters exist. If so, a user is allowed to apply a correction strategy to correct the one or more inconsistent parameters.Type: GrantFiled: November 9, 2007Date of Patent: October 30, 2012Assignee: Oracle America, Inc.Inventors: Alexander Simon, Andrew Krasny
-
Patent number: 8300531Abstract: Methods and apparatus are provided for overload control of prioritized message flows in a state machine execution environment. A state machine employs a flow graph associated with a system. The flow graph provides a flow control mechanism that defines a plurality of states and one or more transitions between the states. Tokens circulate within the flow graph and execute functions during the transitions between the states. The state machine parses one of the tokens to extract one or more predefined information elements; assigns a priority to the token based on the extracted information elements and a state occupancy of the token, wherein the assigned priority controls an order in which the token is processed; assesses an overload status of the system and selectively discards one or more of the tokens based on the assigned priority and assessed overload status.Type: GrantFiled: May 30, 2008Date of Patent: October 30, 2012Assignee: Alcatel LucentInventors: John H. Shamilian, Thomas L. Wood
-
Patent number: 8302085Abstract: A method (1) of developing software code for executing on a target digital processor uses a memory in which it maintains data structures having elements, each of the elements storing data which is represented by a label, and at least some links between the elements are created by the target processor as data is being processed. The method comprises the step (3) of writing the software code with data structure processing operations which comply with random structure preservation rules (2). A static analysis timing tool automatically parses (4) the code developed in step (2) to identify all operations. It determines (7) from an operation and all possible input states for that operation an average time value for execution of the operation by a target data processor, and stores (9) said average time value. It determines (8) from the operation and all possible input states all possible output states for that operation.Type: GrantFiled: February 16, 2006Date of Patent: October 30, 2012Assignee: University College Cork—National University of IrelandInventor: Michel Schellekens
-
Patent number: 8296744Abstract: Embodiments of tree-based directed graph programming structures for a declarative programming language are provided. In various embodiments, complex graph structured data, referred to as “DGraphs” herein in one non-limiting implementation, is authored using a compact, human friendly syntax without the use of explicit identifiers. In one non-limiting aspect, the syntax includes support for conformance relationships, also referred to as factored relationships. In another non-limiting aspect, the semistructured graph data is a tree-based representation and the syntax includes lexical resolution of references or lexical scoping, and/or non local initialization.Type: GrantFiled: October 3, 2008Date of Patent: October 23, 2012Assignee: Microsoft CorporationInventors: David E. Langworthy, John L. Hamby, Bradford H. Lovering, Donald F. Box
-
Publication number: 20120266141Abstract: API description techniques are described for consumption by dynamically-typed languages. In one or more implementations, machine-readable data is parsed to locate descriptions of one or more application programming interfaces (APIs). The descriptions of the one or more application programming interfaces are projected into an alternate form that is different than a form of the machine-readable data.Type: ApplicationFiled: April 13, 2011Publication date: October 18, 2012Applicant: MICROSOFT CORPORATIONInventors: Michael C. Fanning, Ani Babaian, Jomo A. Fisher, Anson M. Horton, Lucas J. Hoban
-
Patent number: 8291392Abstract: Methods and apparatuses for creating a dynamic profile for a plurality of structurally similar extensible markup language (XML) documents based at least in part on a document structure or data pattern of the XML documents. A specialized XML parser is generated based at least in part on the dynamic profile and then is specialized in parsing XML documents that substantially match the dynamic profile.Type: GrantFiled: September 30, 2008Date of Patent: October 16, 2012Assignee: Intel CorporationInventors: Jianhui Li, Hui Chen, Tianyou Li, Tao Xie, Kevin Jones
-
Patent number: 8286150Abstract: A computer is caused to function as a parsing unit, a macroblocking analyzing unit, a junction-node restructuring unit, an identical portion merging/restructuring unit, a similar portion merging/restructuring unit, and an intermediate language restructuring unit. The parsing unit performs syntax analysis of a source code. The macroblocking analyzing unit segments the program written in the source code into blocks and appends a virtual portion representing a unique number in a statement, to a number for identifying a variable for the statement in each block to virtualize a calculation pattern. The junction-node restructuring unit extracts a node directly related to a subroutine block. The identical portion merging/restructuring unit merges pre-processing together and post-processing together for a subroutine called up at a multiple portions in the program. The similar portion merging/restructuring unit integrates subroutines having similar structures into a related subroutine.Type: GrantFiled: August 18, 2009Date of Patent: October 9, 2012Assignee: Fujitsu LimitedInventor: Koichiro Yamashita
-
Patent number: 8286149Abstract: A novel and useful mechanism for optimizing the detection of dependencies in a software system via feedback between static and dynamic engines. The present invention enables dynamic analysis to be more effective by using the results of static analysis to identify sections that need to be traced during dynamic analysis. The method also increases the accuracy of static analysis by using dynamic values as inputs to static analysis. Dynamic values used as inputs for static analysis are a result of dynamic analysis. The mechanism first executes a static analysis, then executes a dynamic analysis targeting the sections identified by the static analysis and finally executes a static analysis using the dynamic values identified during the dynamic analysis in order to detect dependencies.Type: GrantFiled: October 15, 2007Date of Patent: October 9, 2012Assignee: International Business Machines CorporationInventors: Nurit Dor, Yishai Abraham Feldman, Inbal Ronen, Sara Porat
-
Patent number: 8286151Abstract: The present invention provides an overlay instruction accessing unit and method, and a method and apparatus for compressing and storing a program.Type: GrantFiled: September 26, 2008Date of Patent: October 9, 2012Assignee: International Business Machines CorporationInventors: Liang Chen, Kuan Feng, Wang Zheng, Min Zhu