Entries |
Document | Title | Date |
20080201697 | EXTENSIBLE MARKUP LANGUAGE PARSING USING MULTIPLE XML PARSERS - Disclosed are a method, information processing system, and a computer readable medium for parsing a hierarchical markup document. The method includes initializing a first parser for parsing a hierarchical markup document. The first parser parses the hierarchical markup document. A shared parsing state associated with a set of parsers including the first parser is monitored. The parsing control is passed to at least a second parser. The at least second parser parses the hierarchical markup document. The shared parsing state is also monitored during the parsing by the at least second parser. | 08-21-2008 |
20080229293 | Data Reporting Application Programming Interfaces in an XML Parser Generator for XML Validation and Deserialization - A method for interfacing with an XML (Extensible Markup Language) parser generator to generate deserialization information interleaved with XML parsing and validation, including: providing an XML parser generator with information about the schema which the instance data conforms to; providing a data reporting application programming interface (API) and a generator module; providing one or more implementations of the data reporting API; providing the XML parser generator with a selected data reporting API implementation module; generating an XML parser to parse and validate instance documents conforming to the specified input schema and deserializing the instance documents into the desired deserialization format during the parse. | 09-18-2008 |
20080244540 | METHOD AND SYSTEM FOR ASSEMBLING INFORMATION PROCESSING APPLICATIONS BASED ON DECLARATIVE SEMANTIC SPECIFICATIONS - A method for assembling an information processing application, includes: inputting a plurality of component descriptions, wherein each of the component descriptions includes a graph pattern that semantically describes an applicability condition of a component and a graph pattern that semantically describes an inclusion effect of the component; inputting a processing request, wherein the processing request includes a goal that is represented by a graph pattern that semantically describes a desired processing outcome; assembling a processing graph, wherein the processing graph includes at least one component that satisfies the desired processing outcome; and outputting the processing graph. | 10-02-2008 |
20080244541 | CODE TRANSLATOR AND METHOD OF AUTOMATICALLY TRANSLATING MODELING LANGUAGE CODE TO HARDWARE LANGUAGE CODE - The present invention provides a method of automatically translating modeling language code to hardware language code and a code translator. The modeling language code is parsed to extract values associated with predetermined ones of a plurality of constructs to generate parsed modeling language code; and a transformation block is applied to the parsed modeling language code. The transformation block is adapted to convert the parsed modeling language code into hardware language code. | 10-02-2008 |
20080244542 | SOAP SERVICE-ORIENTED SYSTEMS AND METHODS - A service-oriented computer programming language is disclosed. The language includes keywords and operators that enable simple definition and invocation of SOAP services. In operation, a linkable data entity can be associated with one or more SOAP services dynamically, such that the SOAP services associated with the linkable data entity at any given time can change as a computer program executes. In addition, once a SOAP service is associated with a linkable data entity, the association can persist until it is eliminated, changed, or the computer program completes execution. | 10-02-2008 |
20080271001 | METHOD OF GENERATING PROGRAM, INFORMATION PROCESSING DEVICE AND MICROCOMPUTER - In programming in high-level language, a method of generating a program supporting external specifications for generating secure codes having high tamper-resistance and automatically generating an executable program having tamper-resistance with regard to a portion designated by a user is provided. A syntax analysis step, an intermediate representation generation step, a register allocation step, an optimization processing step, an assembly language generation step, a machine language generation step and a machine language program linkage step are executed. And between finish of reading of the source program and generating the executable program, a tamper-resistant code insertion step of automatically generating a code having tamper-resistance coping with unjust analysis of an operation content of the executable program is executed to the source program, the intermediate representation, the assembly language program or the machine language program based on an instruction of a user. | 10-30-2008 |
20080295083 | EXPLICIT DELIMITATION OF SEMANTIC SCOPE - Systems and methods are provided with respect to computer programming. Program behavior can be tuned to provide a seamless mixture of semantic behavior across a single program language syntax. Semantic behavior can be explicitly specified at arbitrary levels of syntactic granularity (e.g. expressions, members, types, compilation units . . . ), wherein semantic scope is commensurate with the specified level of granularity. | 11-27-2008 |
20080320454 | Variable address length compiler and processor improved in address management - The present invention discloses a program converting unit for generating a machine language instruction from a source program for a processor that manages an N-bit address while processing M-bit data, N being greater than M, and such a processor that runs the converted program. The program converting unit comprising: a parameter holding unit for holding a data width and a pointer width designated by a user; the data width representing the number of bits of data used in the source program while the pointer width representing the number of bits of an address; and a generating unit for generating an instruction to manage the data width when a variable operated by the instruction represents the data, and for generating an instruction to manage the pointer width when a variable operated by the instruction represents the address. | 12-25-2008 |
20080320455 | PEDIGREE ANALYSIS FOR SOFTWARE COMPLIANCE MANAGEMENT - Embodiments of the present invention address deficiencies of the art in respect to source code analysis and provide a novel and non-obvious method, system and computer program product for source code pedigree management. In one embodiment of the invention, a method for source code pedigree management can be provided. The method can include parsing source code to identify copyright rights holders for corresponding copyright constructs, rejecting copyright constructs not associated with corresponding rights holders, compiling a list of the identified copyright rights holders, corresponding copyright statements, and lists of files corresponding to each of the copyright rights holders, and displaying the compiled list. | 12-25-2008 |
20090007083 | TECHNIQUES FOR PARSING ELECTRONIC FILES - Techniques for parsing electronic files are disclosed. In one particular exemplary embodiment, the techniques may be realized as an apparatus for parsing electronic files comprising an input module operable to read one or more electronic files, a syntax element store, associated with one or more syntax elements, a mutation module operable to mutate one or more of the one or more syntax elements and parse the one or more electronic files read from the input module, and an output module operable to create one or more normalized electronic files from the one or more parsed electronic files. | 01-01-2009 |
20090044178 | AUTOMATED SEMANTIC-BASED UPDATES TO MODIFIED CODE BASE - An apparatus and program product generate difference data representative of modifications made to one release of a standard code base to facilitate the adaptation of later releases of the standard code base. The difference data is generated at least in part in connection with canonical parsing of a modified version of a release of a standard code base such that the difference data is representative of semantic changes made in the modified version. | 02-12-2009 |
20090049431 | METHOD AND COMPILER OF COMPILING A PROGRAM - The present invention provides a method and a compiler of compiling a source program. According to an aspect of the present invention, there is provided a method of compiling a source program comprising: identifying a hint related to vector aligning when syntax analyzing said source program; and generating a simplified code based on said identified hint related to vector aligning when generating a code. | 02-19-2009 |
20090089764 | Call stack parsing in multiple runtime environments - Where a process in a computing system comprises mixed code, having different sections of code managed by different runtimes, the call stack used to coordinate function invocations may comprise call stack frames created according to multiple calling conventions. In order to analyze this call stack in a stack walk or unwinding, a debugger may be configured to request the runtimes managing the process to claim a particular call stack frame, and to request the runtime that claims it to parse the contents of the frame, or to utilize call stack analysis techniques if the call stack frame was created by unmanaged code. | 04-02-2009 |
20090133005 | METHOD FOR VALIDATION OF BINARY CODE TRANSFORMATIONS - A method of validating binary code transformation in one aspect includes analyzing original program and transform program. Control flow graphs are generated for both programs. The two graphs are traversed to create respective linear invariant representations. The linear representations are compared to identify incorrect transformations. | 05-21-2009 |
20090138861 | Trace Log Rule Parsing - A method, system and computer program product for handling errors in trace logs is presented. In an exemplary manner, the method includes detecting, in an error log, an error line entry for an error that is associated with a software execution. The error line entry includes a variable component and a static component. The variable component is associated with a real-time description of the software execution that changes every time the software execution occurs, and the static component is a fixed error descriptor of the error. The fixed error descriptor is parsed out from the error line entry to create a parsed static component, which is correlated with a resource that can be used to correct the error. | 05-28-2009 |
20090172649 | AUTOMATION OF SOFTWARE VERIFICATION - A method, system, and computer program product are disclosed for automatic test generation for a compiler. In one approach, the method, system and computer program product represent a test case for the compiler in a structure with one or more elements of a programming language, associate at least one syntactic rule and semantic rule with the one or more elements in the structure, create a test with the structure compiling the test with the compiler, and display results of the test. | 07-02-2009 |
20090178031 | Method and System for presenting and analyzing software source code through intermediate representation - The present invention provides a method and system for producing intermediate representation of source code listings with possibly mixed syntaxes to assist software development applications in presenting and analyzing the source code listings through reading the intermediate representation. A source code processor calls Application Programming Interfaces (APIs) to preserve source code information, which includes intermediate representation data sets and is preferably stored in a file-based repository. The source code processor is of a compiler, a preprocessor, a parser, or a comment document processor. The data sets capture lexical, syntax and semantic information of source code construct elements, and comprise of location, processor identification, construct category, and attribute data. A software development environment through a source code search engine is able to present source code construct elements, outlines, and symbol references from software packages over a plurality of distributed servers in a network such as the Internet. | 07-09-2009 |
20090222799 | SYSTEM REPRESENTATION AND HANDLING TECHNIQUES - An implementation tool for generating an implementation of a first data structure, wherein the first data structure comprises a plurality of linked structural components, and wherein the first data structure represents meaningful components of a given system and a parent set of interrelationships between those meaningful components, the tool comprising: first-data-structure input means, operable to receive a said first data structure, or a description thereof; and processing means operable to generate an implementation of the received first data structure, the implementation comprising: a second data structure, or a description thereof, corresponding to said first data structure, wherein said second data structure is defined by a subset of the parent set of interrelationships; and implementation rules which allow the parent set of interrelationships to be enforced during a subsequent processing operation which utilises said implementation. | 09-03-2009 |
20090328016 | GENERALIZED EXPRESSION TREES - Expression tree versatility and applicability are enhanced to facilitate programming across various program languages and execution contexts. An expression tree can represent programmatic code as data in a representation common to multiple process mechanisms. As a result, entire programs or portions thereof can be captured and processed by a numerous common language components. Further, language specific concepts can be reduced to the common representation to enable language independent employment. | 12-31-2009 |
20100031240 | ONTOLOGY-BASED GENERATION AND INTEGRATION OF INFORMATION SOURCES IN DEVELOPMENT PLATFORMS - Methods and systems to generate derivative information sources, from original information sources, use an ontology that provides a logic-based representation formalism of each of a number of original information sources, the original information sources having heterogeneous representation formalisms. The original information sources are transformed to the ontology. A number of derivative information sources, corresponding to the original information sources, may be automatically generated from the ontology. | 02-04-2010 |
20100070956 | METHODS AND APPARATUS FOR JOINT PARALLELISM AND LOCALITY OPTIMIZATION IN SOURCE CODE COMPILATION - Methods, apparatus and computer software product for source code optimization are provided. In an exemplary embodiment, a first custom computing apparatus is used to optimize the execution of source code on a second computing apparatus. In this embodiment, the first custom computing apparatus contains a memory, a storage medium and at least one processor with at least one mufti-stage execution unit. The second computing apparatus contains at least two multi-stage execution units that avow for parallel execution of tasks. The first custom computing apparatus optimizes the code for both parallelism and locality of operations on the second computing apparatus. This Abstract is provided for the sole purpose of complying with the Abstract requirement rules. This Abstract is submitted with the explicit understanding that it will not be used to interpret or to limit the scope or the meaning of the claims. | 03-18-2010 |
20100088686 | PROGRAMMING LANGUAGE WITH EXTENSIBLE SYNTAX - The subject disclosure relates to an extensible syntax for a scripting language that allows data intensive applications to be written in a compact, human friendly, textual format, and also according to self-defined syntax within the data intensive applications so that a single compilation unit of a program can support multiple syntaxes. An extensible syntax is provided for M that allows alternate syntaxes to be defined in line and then used in the program so as to accommodate user-defined syntaxes and other pre-existing domain specific languages. In one embodiment, the alternate syntaxes can be defined at pre-designated functional points in the program. | 04-08-2010 |
20100115500 | Tool For Analyzing Siebel Escripts - A method, system and computer program product for enabling automated analysis of an extracted eScript to identify one or more problems within a configuration and script. The eScript is extracted from a Siebel repository and received in a DAVID (Development Application Verification Information on Demand for Siebel application where the VB.NET application, called SiebelParser, is utilized to conduct the analysis of the eScript. Occurrences of issues within an eScript are detected by SiebelParser. Issues within the eScript may include one or more of: empty event handlers, explicit object release, setting field values utilizing hard coded values, unnecessarily activated fields, call to next record after a call to delete record, and functions containing unnecessary code. Results from the analysis are reported to one log file document. The results of SiebelParser's log file are later incorporated to a spreadsheet by DAVID, to provide a more readable output format. | 05-06-2010 |
20100131935 | SYSTEM AND METHOD FOR COMPILING AND MATCHING REGULAR EXPRESSIONS - 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. | 05-27-2010 |
20100138816 | MULTIMEDIA SERVICE COMPOSITION FACTORY - Systems and methods for the creation and deployment of services on a converged network are described herein. These services can be initially created from visual constructs and have their life cycle performed and monitored by a multimedia service composition factory. Functions for design, implementation, installation, verification and coordination can be provided to compose services after pre-compiled code segments are received from a user interface. | 06-03-2010 |
20100146494 | Compiler generator - A system including an input compiler that receives a unified input description containing syntax rules for both regular and context-free expressions and interspersed code, the first compiler configured to translate the unified input description into a common internal representation is disclosed. The system also includes a regular expression checker, a context-free expression checker, a code checker and a second compiler coupled to the code checker. | 06-10-2010 |
20100153932 | MANAGING SET MEMBERSHIP - The present invention extends to methods, systems, and computer program products for managing set membership. A set definition is translated into one or more membership conditions. Each membership condition includes statements about the attributes of a resource that are to be true if the resource is to be included in the set. For any given resource request, resources touched by the request are compared to membership conditions applicable to the touched resources. Thus, embodiments of the invention minimize the work that is done to determine which sets a resource may or may not belong to whenever a resource is modified. Accordingly, based on available resources, embodiments of the invention can scale to accommodate larger numbers of sets and larger numbers of potential members of sets. | 06-17-2010 |
20100211939 | PROCESSING AN OBJECT-ORIENTED QUERY TO RETRIEVE DATA FROM A DATA SOURCE - An object-oriented query to retrieve data from a data source stored on a data storage device connected to a computer is processed. One implementation involves receiving a Java Query Language (JQL) user query, compiling the JQL query using a Java compliant compiler, and detecting any compilation error due to a syntax error in the JQL query. If a compilation error is detected, then informing the user of the compilation error such that the user may correct the syntax error in the JQL query. Otherwise if a compilation error is not detected, then processing the JQL query for execution. | 08-19-2010 |
20100218173 | IMPLICIT LINE CONTINUATION - Modified compilers and other development tools provide implied line continuation within a sequence of syntax tokens of a programming language grammar which includes multiple semantic contexts and which uses line termination as presumptive statement termination. When source code parsing encounters a line terminator adjacent a context-dependent implicit line continuation token in an associated semantic context, an explicit decision is made whether to imply line continuation. Line continuation may also be implied in response to other specified tokens. | 08-26-2010 |
20100306750 | PARALLEL PROGRAM GENERATION METHOD - A method for producing parallel computer programs by using a compilation method that produces executable computer programs having an undefined execution order. The execution order is defined during execution of the program depending on the execution architecture. This allows the best possible level of concurrent execution in different architectures. The compilation method includes producing data dependency and data flow graphs that are used for executable code generation. | 12-02-2010 |
20100306751 | EXECUTION RESULT CACHING AND SEARCHING - An apparatus and a method for searching and caching results of pure functions in a computer program is described. The computer program is parsed to identify pure functions. A computed result of the identified pure functions is stored and shared with at least one process of the computer program. Each identified pure functions is replaced with the computed result of the corresponding pure function. | 12-02-2010 |
20100325618 | FAULT TOLERANT COMPILATION WITH AUTOMATIC ERROR CORRECTION - A compilation method is provided for automated user error correction. The method includes using a compiler driver run by a processor to receive a source file for compilation. With a compiler component invoked by the compiler driver, the method includes identifying an error in the source file such as a linking problem or syntax error in the user's program. The method includes receiving with the compiler driver an error message corresponding to the identified error. With an error corrector module run by the processor, the method includes processing the error message to determine an error correction for the identified error in the source file. The compiler driver modifies the source file based on the error correction and compiles the modified source file with the compiler component. | 12-23-2010 |
20100325619 | FAULT TOLERANT COMPILATION WITH AUTOMATIC OPTIMIZATION ADJUSTMENT - A compilation method is provided for correcting compiler errors that include compiler internal errors and errors produced by running a validation suite. The method includes running a compiler on a computer and storing a set of optimization levels in memory accessible by the compiler. The method includes receiving a source file with the compiler that includes a user-defined optimization level to be used in compiling the source file. The method includes identifying a set of functions within the source file and using compiler components to compile these functions using the original optimization level. When the compiling results in an internal error occurring and being reported for one or more of the functions, the method includes using an optimization adjustment module to process the internal error and assign an adjusted or lower optimization level to the one or more functions and recompiling of these functions again with the lower optimization level. | 12-23-2010 |
20110088019 | Asynchronous Preemptive Edit Time Semantic Analysis of a Graphical Program - System and method for analyzing a graphical program. A graphical program is displayed on a display. A semantic edit operation is performed on the graphical program in response to user input. The semantic edit operation is performed by a first process. Semantic analysis of the graphical program is performed by a second process in response to performing the semantic edit operation, where the second process is asynchronous with respect to the first process. Results from the semantic analysis of the graphical program are displayed in response to completion of the semantic analysis. If during the semantic analysis, another semantic edit operation is performed on the graphical program, the semantic analysis may be preemptively terminated and re-initiated. Displaying results from the semantic analysis of the graphical program may then include displaying results from the re-initiated semantic analysis of the graphical program in response to completion of the re-initiated semantic analysis. | 04-14-2011 |
20110161942 | SERVICE ADAPTATION DEFINITION LANGUAGE - 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. | 06-30-2011 |
20110179404 | SYSTEM AND METHOD FOR CODE AUTOMATION - A system is provided for computer application code automation comprising a code automation computer server configured for presenting an electronic user interface for receiving user input for generating a Structured Query Language (SQL) query, the user input comprising a plurality of SQL tokens, a processor, associated with the code automation computer server, for receiving the plurality of SQL tokens, the processor retrieving from memory and executing computer executable instructions for at least one of: (a) optimizing performance of the SQL query while receiving the user input, and (b) error checking the SQL query while receiving the user input, wherein the processor is adapted for automatically incorporating the generated SQL query into the computer application code and storing the computer application code in a non-transitory computer readable medium. | 07-21-2011 |
20110191757 | Defining Code by its Functionality - A system and method for defining code by its functionality is disclosed. The technology initially accesses a portion of code. Once the portion of code is accessed at least one functional operation embedded in the code is determined. When the functional operation in the code is determined, the portion of code is then defined by the functional operation. In so doing, the portion of code can be defined by functional operation without requiring the consideration of any semantics related to the portion of code. | 08-04-2011 |
20110276953 | DYNAMIC TOKEN RESOLUTION DURING COMPILATION - A method includes, during compilation of a portion of source code at a compiler, initiating token resolution with respect to a token included in the portion of source code. A static context and a dynamic context of the compiler are queried to identify one or more lookup results of the token. A particular lookup result is selected to resolve the token based on one or more semantic rules of the compiler. The particular lookup result is selected independently of whether the particular lookup result is sourced from the static context or from the dynamic context. The method includes resolving the token based on the selected particular lookup result. | 11-10-2011 |
20110302563 | PROGRAM STRUCTURE RECOVERY USING MULTIPLE LANGUAGES - A parser parses an application that comprises two or more different modules; the modules are bytecodes, object codes, and/or modules compiled using different programming languages. The parser identifies code statements in the modules or source code for the modules that correspond to common AST node types. A common AST node type is an abstraction of common elements in programming languages/bytecodes/object codes. Examples of code statements that are common in programming languages/bytecodes/object codes are branching, returns from functions, assignments, and the like. The use of common AST node types allows a user to generate different diagrams of the structure of the application. For example, a code flow diagram can be generated that allows a user to view the flow of code between the different modules implemented in different languages. | 12-08-2011 |
20120072891 | Computer Language Syntax for Automatic Callback Function Generation - In one embodiment, a compiler parses a function call that invokes a function and a first symbol associated with the function call; and in response to the first symbol, generates a first set of code that, when executed, determines whether the function is associated with an activity; and if the function is associated with an activity, then: creates a first callback function for the activity; and associates the first callback function with the activity so that the first callback function is automatically invoked when the activity is completed. | 03-22-2012 |
20120079464 | QUERY CONSTRAINT ENCODING WITH TYPE-BASED STATE MACHINE - A query specified in a source programming language can be analyzed as a function of a type-based state machine that encodes query constraints of a target programming language. The type-based state machine can encode such constraints as types representing states and methods representing transitions between states or types. | 03-29-2012 |
20120110559 | PROCESSING METHOD - A method for processing computer program code to enable different parts of the computer program code to be executed by different processing elements of a plurality of communicating processing elements. The method comprises identifying at least one first part of the computer program code, which is to be executed by a particular one of said processing elements. The method further comprises identifying at least one further part of the computer code which is related to the at least one first part of the computer code. The at least one first part of the computer program code and the at least one further part of the computer program code are caused to be executed by the particular one of said processing elements. | 05-03-2012 |
20120137276 | PROCESSING OF EXPRESSIONS - 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. | 05-31-2012 |
20120167065 | Compiler compiler system with syntax-controlled runtime and binary application programming interfaces - A compiler compiler system with a design paradigm different from traditional compiler compiler systems in many aspects. First, instead of parsing tree, compiler compiler runtime and binary are designed according to compiler compiler parsing model. Second, any semantics processing is totally separated from syntax processing. Third, the whole compilation process is defined as syntax processing and semantics processing followed by syntax processing performed under compiler compiler management supervision. Fourth, syntax processing has two phases: building compiler compiler runtime, and converting compiler compiler runtime into compiler compiler binary with available option to convert back compiler compiler binary to compiler compiler runtime. Fifth, compiler compiler runtime and binary syntax-controlled APIs are defined in terms of syntax. Sixth, there are formal methods de-compiling compiler compiler runtime and/or binary into original program text accordingly to syntax. Seventh, compiler compiler runtime and binary with their syntax-controlled APIs serve as a multiplatform for obfuscation, security, binary files processing, and program-to-program communication. | 06-28-2012 |
20120192163 | METHOD AND APPARATUS FOR COMPILING REGULAR EXPRESSIONS - Apparatus, systems, and methods for a compiler are described. One such compiler converts source code into an automaton comprising states and transitions between the states, wherein the states in the automaton include a special purpose state that corresponds to a special purpose hardware element. The compiler converts the automaton into a netlist, and places and routes the netlist to provide machine code for configuring a target device. | 07-26-2012 |
20120216178 | COMPILER GENERATOR - A method of generating an executable that operates as a compiler includes: receiving a unified input description containing syntax rules for both regular and context-free expressions and interspersed code; generating a common internal representation from the unified input description; checking regular expressions in the common internal representation; checking context-free expressions in the common representation; checking the interspersed code; and outputting the executable. | 08-23-2012 |
20120222020 | LIMITING EXECUTION OF SOFTWARE PROGRAMS - Techniques are disclosed for limiting execution of software programs. For example, a method comprises the following steps. A first set of program code is extracted from a second set of program code. The extracted first set of program code is parsed to generate a parsed structure. The parsed structure generated from the first set of program code is examined for one or more expressions predetermined to be unsafe for execution. The one or more expressions predetermined to be unsafe for execution that are contained in the first set of program code are detected. In one example, the first set of program code may be a script generated with the JavaScript™ scripting language and the second set of program code may be a business process. | 08-30-2012 |
20120222021 | Method and System for presenting and analyzing software source code through intermediate representation - The present invention provides a method and system for producing intermediate representation of source code listings with possibly mixed syntaxes to assist software development applications in presenting and analyzing the source code listings through reading the intermediate representation. A source code processor calls Application Programming Interfaces (APIs) to preserve source code information, which includes intermediate representation data sets and is preferably stored in a file-based repository. The source code processor is of a compiler, a preprocessor, a parser, or a comment document processor. The data sets capture lexical, syntax and semantic information of source code construct elements, and comprise of location, processor identification, construct category, and attribute data. A software development environment through a source code search engine is able to present source code construct elements, outlines, and symbol references from software packages over a plurality of distributed servers in a network such as the Internet. | 08-30-2012 |
20120233601 | Recompiling with Generic to Specific Replacement - Executable code may be recompiled so that generic portions of code may be replaced with specific portions of code. The recompilation may customize executable code for a specific use or configuration, making the code lightweight and executing faster. The replacement mechanism may replace variable names with fixed values, replace conditional branches with only those branches which are known to be executed, and may eliminate executable code portions that are not executed. The replacement mechanism may comprise identifying known values defined in the executable code for variables, and replacing those variables with the constant value. Once the constants are substituted, the code may be analyzed to identify branches that may be evaluated using the constant values. Those branches may be reformed using the constant value and the rest of the conditional code that may not be accessed may be removed. | 09-13-2012 |
20130007722 | METHOD, SYSTEM AND PROGRAM STORAGE DEVICE THAT PROVIDE FOR AUTOMATIC PROGRAMMING LANGUAGE GRAMMAR PARTITIONING - 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. | 01-03-2013 |
20130014094 | IMPLEMENTATION OF STREAM ALGEBRA OVER CLASS INSTANCES - 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. | 01-10-2013 |
20130055223 | Compiler with Error Handling - 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. | 02-28-2013 |
20130074054 | METHOD AND SYSTEM FOR SYNTAX ERROR REPAIR IN PROFRAMMING LANGUAGES - 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. | 03-21-2013 |
20130152061 | FULL FIDELITY PARSE TREE FOR PROGRAMMING LANGUAGE PROCESSING - An augmented parser can create an augmented parse tree that captures all the information in the source code as additional elements. Information included in the augmented parse tree can include whitespace, comments, pre-processor directives, line continuation characters, missing text, text errors, and original text. Thus, the augmented parse tree can be used to fully reconstruct the original source code, character for character, including spaces, comments, and incorrect code. The improved parser can store syntactic error information in the original source code in the parse tree. The augmented parse tree can be used to generate or modify source code. The parse tree created by the augmented parser can be used for incremental parsing to create a new augmented parse tree after a change. | 06-13-2013 |
20130152062 | SOFTWARE ANALYSIS FRAMEWORK - 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. | 06-13-2013 |
20130159981 | EXTENSION MECHANISM FOR SCRIPTING LANGUAGE COMPILER - A method for forming an extension to a scripting language compiler is disclosed. A compiler of a machine receives a source code that has a new keyword to a scripting language of the compiler. An extension compiler module processes the source code to support the new keyword. The compiler and the extension compiler module generate an executable machine code based on a process of the extension compiler module and the compiler. | 06-20-2013 |
20130167128 | Application Compiling - A computer implemented method includes receiving a programming language input having a client portion and a server portion, where client symbols of the client input portion are usable in the server input portion and server symbols of the server input portion are usable in the client input portion. The method includes parsing the input to separate the client input portion from the server input portion, identifying the usage of any client symbols in the server input portion and any server symbols in the client input portion, producing at least one communication service between the separated client and server input portions to support the usage of any client symbols in the separated server input portion and any server symbols in the separated client input portion, and translating the client input portion into an executable client application and the server input portion into an executable server application with communication there between. | 06-27-2013 |
20130346951 | SYSTEMS AND METHODS FOR DYNAMIC STRUCT VARIABLE CREATION INCLUDING INLINE DECLARATION WITH DYNAMIC KEYS - A parser can be configured to parse source code to generate code for dynamically generating structures at runtime. Any or all of the structure name, keys, and values can be defined dynamically (i.e. at runtime), rather than requiring declaration in the source code. Embodiments include a method in which a source file is parsed to identify an expression creating a dynamic structure with at least one key-value pair. The method can comprise generating a plurality of expressions for creating intermediate data structures which, at runtime, can cause the dynamic structure to be defined as set forth in the declarative expression. The dynamic structure may comprise one or more declared key-value pairs and/or may comprise one or more key-value pairs that are also dynamic. | 12-26-2013 |
20140019948 | SYSTEM AND METHOD FOR COMPILING LAMBDA EXPRESSION IN A PROGRAMMING LANGUAGE ENVIRONMENT - A system and method can support context-dependent expression compilation in a programming language environment. A compiler in the programming language environment can provide one or more context objects that operate to compile various context-dependent expressions in different programming contexts. Then, the compiler can use a said context object to derive a target type associated with a context-dependent expression, and use the context object to perform compatibility check for the context-dependent expression in the programming language environment. | 01-16-2014 |
20140068577 | Automatic Exploitation of Data Parallelism in Streaming Applications - An embodiment of the invention provides a method for exploiting stateless and stateful data parallelism in a streaming application, wherein a compiler determines whether an operator of the streaming application is safe to parallelize based on a definition of the operator and an instance of the definition. The operator is not safe to parallelize when the operator has selectivity greater than 1, wherein the selectivity is the number of output tuples generated for each input tuple. Parallel regions are formed within the streaming application with the compiler when the operator is safe to parallelize. Synchronization strategies for the parallel regions are determined with the compiler, wherein the synchronization strategies are determined based on the definition of the operator and the instance of the definition. The synchronization strategies of the parallel regions are enforced with a runtime system. | 03-06-2014 |
20140068578 | Automatic Exploitation of Data Parallelism in Streaming Applications - An embodiment of the invention provides a method for exploiting stateless and stateful data parallelism in a streaming application, wherein a compiler determines whether an operator of the streaming application is safe to parallelize based on a definition of the operator and an instance of the definition. The operator is not safe to parallelize when the operator has selectivity greater than 1, wherein the selectivity is the number of output tuples generated for each input tuple. Parallel regions are formed within the streaming application with the compiler when the operator is safe to parallelize. Synchronization strategies for the parallel regions are determined with the compiler, wherein the synchronization strategies are determined based on the definition of the operator and the instance of the definition. The synchronization strategies of the parallel regions are enforced with a runtime system. | 03-06-2014 |
20140137088 | Method for Enforcing Language Subsets - A method of operating a data processing system to examine a compiled program for violations of a set of rules that do not constitute violations detected by the compiler that generated the program. The method includes obtaining a restricted rule set defined in terms of rules in a decompiled representation of the program. The method also includes decompiling the compiled program to the decompiled representation of the compiled program in which the restricted rule set is defined, examining the decompiled representation of the compiled program for a violation of the restricted rule set to determine if any of the rules are violated, and providing an output indicating that one of the rules was violated. | 05-15-2014 |
20140143764 | TYPE-SYSTEM FOR MIXED PROTOCOL SECURE COMPUTATION - Implementations of the present disclosure are directed to for checking that a to-be-compiled program is well-typed such that the program is secure in a semi-honest model, and include actions of receiving the program, the program being provided in a human-readable, domain-specific programming language and including two or more protocols to provide secure computation based on inputs provided by two or more parties, processing the program in view of a type system to determine whether the program is secure in the semi-honest model, the type system including a secure type system extension provided as a set of typing rules that describe security types that can be assigned to one or more entities of the program, and compiling the program to generate a computer-executable program in response to determining that the program is secure in the semi-honest model. | 05-22-2014 |
20140149970 | OPTIMISING A COMPILATION PARSER FOR PARSING COMPUTER PROGRAM CODE IN ARBITRARY APPLICATIONS - A mechanism is provided for optimising a grammar definition and compilation parser for parsing an arbitrary application computer language in which a parser is run against an indicative sample of the arbitrary application computer programming language in order to determine the required scope of the grammar for the parser. | 05-29-2014 |
20140173574 | COMPILATION DEPENDENCY RESOLUTION FROM A DIVERSE GROUP OF CANDIDATE RESOURCES - A determination is made that at least one missing dependency reference of a portion of a software code build prevents full dependency resolution of the software code build. Search path processing is invoked using a SEARCHPATH definition to locate all additional accessible code modules that are potential candidate code modules to resolve the at least one missing dependency reference. The SEARCHPATH definition includes a set of predefined alternative search locations relative to dependency locations specified for the software code build. An interface definition of each coded method is identified within each located additional accessible code module found by the search path processing. A code module found by the search path processing that includes an identified interface definition of at least one coded method that resolves at least a portion of interface requirements of the at least one missing dependency reference is selected. | 06-19-2014 |
20140181798 | STATIC ANALYSIS OF PL/SQL OBJECTS AND SQL QUERIES - Embodiments of the invention provide systems and methods for performing static analysis of query expressions embedded in programming language source code. According to one embodiment, performing static analysis of one or more query expressions embedded in programming language source code can comprise extracting the one or more query expressions from the programming language source code, performing the static analysis on the extracted one or more query expressions, and reporting results of performing the static analysis on the one or more query expressions, wherein the results relate errors and warning generated by performing the static analysis to the source code from which the one or more query expressions are extracted. | 06-26-2014 |
20140282442 | STATICALLY EXTENSIBLE TYPES - Statically extensible types allow a static type system to model the behavior of dynamic object model extension in dynamic runtime systems. Static types that model dynamically extended types can be extended using additional declarations in the same compilation. Declarations for a particular type can come from multiple independent sources which can have been defined at multiple points in time. Extension declarations can use the same syntax as the initial type declaration. Hence presence of one or more declarations for the same type in a compilation can indicate that the type has been extended. These features allow static type checking of dynamic plug-ins to be supported using statically extensible types. Declarations and extension declarations for a type can be merged together to create an extended type that enables different processing paths and dependencies. | 09-18-2014 |
20140282443 | CONTEXTUAL TYPING - Type inference is used to provide the benefits of static type checking without explicitly declaring type in the source code. Type inference that proceeds in a bottom up direction is augmented by contextual typing that proceeds in a top down direction. Contextual typing types enclosed expressions by associating the type of a directly enclosing expression with the enclosed expression. Object literals, function literals and array literals enclosed in assignment and call expressions, can be contextually typed. | 09-18-2014 |
20140282444 | PROGRAMMING LANGUAGE TRANSFORMATIONS WITH ABSTRACT SYNTAX TREE EXTENSIONS - Techniques to automate the transformation of an application involving programming language constructs from a composite of source grammars to a composite of target grammars, while maintaining the fidelity of the program semantics and functionality, or extending or changing it to explode the capabilities and avoid the limitations of new technologies are disclosed. The different stages of the transformation are persisted in an annotated abstract syntax tree where the annotations represent semantic preserving transformation rules. The abstract syntax tree is then transformed according to the transformational rules. The transformed abstract syntax tree may then be traversed to generate a new translated source code application or be queried to generate output reports. Alternatively, the transformed abstract syntax tree may be subjected to another transformation as part of a chain of transformations. | 09-18-2014 |
20140282445 | AUTOMATED CODE ANALYZER - Systems, methods, and computer program products for analyzing source code are disclosed. The system includes a file reader module on a computer, a parser module on a computer, a metrics accumulator module, and a reporting engine on a computer. The file reader module may read an input source code file. The parser module may parse source code in the source code file into source code components. The metrics accumulator module may analyze the source code components in accordance with one or more rules to generate application metadata. The reporting engine may use the generated application metadata to generate a report of the analysis. | 09-18-2014 |
20140289715 | IMMUTABLE PARSING - Immutable structures are employed to effect immutable parsing. In particular, a parsing configuration, comprising a stack and lookahead buffer, is utilized by a parser to perform lexical and syntactical analysis of an input stream and optionally output an immutable parse tree or the like, wherein at least one of the stack and buffer is immutable. Performance with respect to the immutable structures can be optimized utilizing sharing and lazy computation. In turn, immutability benefits are afforded with respect to parsing including safe sharing amongst services and/or across multiple threads as well as history preservation, among other things. | 09-25-2014 |
20140359587 | DEEPLY PARALLEL SOURCE CODE COMPILATION - Abstract Syntax Trees (ASTs) are generated using the source code of a programming language that include information relating to the structure of the program. The generation of the ASTs may be performed in parallel. The types are split into a number of modules (e.g. configurable) that form an assembly. During the different stages of the compilation process, each module may be compiled in parallel. As the different modules are being compiled (e.g. in parallel), compiler metadata from the different modules may be written to a repository accessible by the different compilation processes. After flowing through the compilation pipeline, each of the enriched ASTs are used for code generation where they are transformed into the target language (e.g. a code stream that can be executed on hardware). The executable code is then stored as part of the assembly. The storage of the code may also be performed in parallel. | 12-04-2014 |
20140359588 | SYSTEMS AND METHODS FOR REMOTE ANALYSIS OF SOFTWARE APPLICATIONS - A system for testing a software application receives one or more object spaces extracted from a development or runtime environment of the software application. The extracted object space includes information about various objects associated with the software application, its dependencies, and/or environment, and some of the objects may be dynamically created and/or modified. The extracted object space does not include any source code. A language dependent extraction component can extract the object space using introspections and/or reflection APIs. The extracted object can be translated into a language-independent format and can be analyzed to identify any vulnerabilities in the software application without access to the source code, compiled binary, and runtime environment of the software application. | 12-04-2014 |
20140372993 | OVERLOADING ON CONSTANTS - A function in a type system can be overloaded using specified constants. The constant can be can be the result of evaluating an expression to: a string, a number, a Boolean, a pattern or any type of constant. The return type of the function can depend on the specified constant that is passed into the function. The return type of the function can depend on the type of the specified constant that is passed into the function. The type of the parameter that is passed into the function can depend on the value of the constant. The function overloads can be validated to ensure that the constant-based overload is a subtype of a more general overload. A constant can be an expression used at compile time during type checking. | 12-18-2014 |
20150106795 | SOFTWARE ANALYSIS FRAMEWORK - 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. | 04-16-2015 |
20150128114 | PARSER - A grammar of a first programming language is represented in member fields and data types of object-oriented classes of a second programming language as an empty program semantic tree. A parser builds a new program semantic tree that represents source code written in the first programming language. The new program semantic tree is built by a reflection technique in which the member fields and data types of the object-oriented classes of the second programming language as set out in the empty program semantic tree are modified during the building of the new program semantic tree. | 05-07-2015 |
20150301811 | METHOD AND APPARATUS FOR TESTING BROWSER COMPATIBILITY - A method and apparatus for testing browser compatibility are provided. The method includes: pre-processing source code of the webpage to determine a code type; obtaining a compatibility rule library according to the code type; conducting syntax parsing of the source code to obtain a syntax tree of the source code; and conducting static analysis of the source code based on the compatibility rule library and the syntax tree. The method and apparatus for testing browser compatibility conduct static analysis of the webpage source code to test browser compatibility, which is simple and inexpensive. | 10-22-2015 |
20150309776 | IDENTIFYING POTENTIALLY UNINITIALIZED SOURCE CODE VARIABLES - Computer program source code is represented by nodes in a control flow graph. A set of target nodes is identified, where each node in the set of target nodes includes at least one line of source code that defines a modification to a particular variable used in the computer program. A usage score relating to the variable is calculated for each target node. Each usage score is then recalculated based on the earlier scores and also based on the modifications to the variable that are defined by the lines of source code. Each recalculated score is compared to its corresponding earlier score, and if any score has changed, then the process repeats. Scores are recalculated based on the most recently calculated scores until the scores stop changing. The final scores may then be displayed. | 10-29-2015 |
20150331681 | HANDLING VALUE TYPES - In one approach, a method comprises receiving one or more higher-level instructions specifying to assign a value of a particular value type to a particular container of a plurality of containers, wherein the plurality of containers represent a data structure for maintaining one or more variables during execution of a block of code, wherein at least two containers of the plurality of containers are different sizes; generating one or more lower-level instructions that assign the value to the particular container based on applying one or more assignment rules to the one or more higher-level instructions based on the particular value type and executing the one or more lower-level instructions. | 11-19-2015 |
20150331700 | PARTIAL PROGRAM SPECIALIZATION AT RUNTIME - A solution is proposed for implementing staging in computer programs and code specialization at runtime. Even when values are not known at compile time, many of the values used as parameters for a code section or a function are constant, and are known prior to starting the computation of the algorithm. Embodiments of the claimed subject matter propagate these values just before execution in the same way a compiler would if they were compile time constant, resulting in improved control flow and significant simplification in the computation involved. | 11-19-2015 |
20150363176 | METHOD AND APPARATUS FOR CODE CONVERSION - The present invention relates to the field of computer programming, in particular, to a method and apparatus for code conversion in which the codes in the code file to be converted or the code tree to be converted is read and stored into the stack and popped up in the last-in first-out sequence of the stack, and then the code line or the child node currently popped up is resolved into the file to be converted, and lastly the natural semantics comparison table is traversed, and the inter-conversion between the codes and the natural language is automatically carried out, so as to avoid the programmers from manually adding the marks and notes for the codes, which greatly decreases workload of the programmers, and can intuitively display the direct logical relationship of the codes, and at the same time, depending on different situations, the codes can be represented selectively in different forms, facilitating the creating, searching and maintaining of the codes. | 12-17-2015 |
20150370546 | METHOD AND APPARATUS FOR GENERATING DATA DISTRIBUTION SERVICE APPLICATION - Provided herein a method and apparatus for generating a data distribution service application, the method including syntax-analyzing an IDL (interface description language) file; determining a topic model to be used in the data distribution service application based on a result of the syntax-analyzing of an IDL (interface description language) file; receiving QoS information and determining a QoS model by a QoS (quality of service) modeler; determining a DDS application model based on the topic model and QoS model by a DDS (data distribution service) application modeler; and generating a source code based on the topic model, QoS model and DDS application model. | 12-24-2015 |
20150378694 | Optimistically Assuming Types in a Dynamically Typed Language - Optimistically type assumptions in a dynamically typed language may involve a compiler parsing code and detecting a program element that results from an operation of the code that has an unspecified type. In response, the compiler may make a first type assumption treating the element as a first type. The assumed type may be selected from multiple types as expected to have a lowest performance cost of the multiple types. The compiler may generate compiled code using the first (assumed) type. During runtime of the compiled code, it may be detected that the first type assumption is invalid for the compiled code and in response a portion of the compiled code may be replaced with other compiled code. The other compiled code may treat the element according to a second type assumption that may be selected as a type expected to have the second lowest performance cost. | 12-31-2015 |
20160062748 | EMBEDDED DOMAIN SPECIFIC LANGUAGES AS FIRST CLASS CODE ARTIFACTS - Provided are methods and systems for expanding semantic information generated for source code to include information about embedded programming languages contained within source code. The methods and systems utilize a semantic model containing information that allows a user to navigate between the EDSL constructs and the constructs in the general purpose language that surround the invocation of the EDSL. These constructs and the relations between them are modeled as a semantics graph comprised of nodes and edges, where the nodes represent a specific kind of source construct and the edges model relations between the nodes. The methods and systems assist users in determining where code from a general purpose language interacts with an embedded language, provide the user with an understanding of how the boundary between these languages is crossed, and make it so that the user can more easily comprehend the code that he or she is looking at. | 03-03-2016 |
20160092249 | ABSTRACTION OF BACKTRACKING - A computer-implemented method, computer program product, and computing system is provided for providing a framework for logically representing the discretization of logic for a backtracking algorithm. In an implementation, a method may include defining a validation class representing a validation logic to be tested. A processable class may be defined representing a backtracking logic flow to be implemented. The processable class may be associated with the validation class. One or more candidate options may be evaluated based upon, at least in part, the validation logic and the backtracking logic flow. | 03-31-2016 |
20160124724 | AUTOMATED CODE ANALYZER - A system for analyzing source code may include a computer including a memory and a processor. A discoverer may be stored on the memory and may be configured to automatically identify applications of an infrastructure and extract at least one input source code file corresponding to the identified applications. A file reader may be stored on the memory and may be configured to read the input source code file containing source code written in at least one computer programming language. A metrics accumulator may be stored on the memory and may be configured to analyze the source code components according to one or more rules to generate application metadata. A reporting engine may be stored on the memory and configured to generate a report based on the generated application metadata. | 05-05-2016 |
20160124726 | UNIFIED DATA TYPE SYSTEM AND METHOD - A type system includes a dual representation for basic data types. One representation is the basic data type representation common to such basic built-in data types, known as an unboxed value type or simply as a value type. Each of the basic data types also has a boxed representation that can be stored in the object hierarchy of the type system. This dual representation can also be extended to user-defined types, so that user-defined types may exist both as an unboxed value type and as an object within the object hierarchy of the type system. This dual representation allows the compiler and/or runtime environment to select the most effective and efficient representation for the data type depending on the particular need at the moment. | 05-05-2016 |
20160124727 | Method for Checking and/or Transformation of a Computer Program with First-Class Static Functions - The invention relates to a method for checking and/or transformation of a computer program present in a programming language which supports first-class functions and in which a type check of the program or of at least a part of the program is performed in order to assign a type to each expression of the program or part of the program, the type consisting of a base type and a binding time. The set of base types comprises at least base types for describing simple values and a function type for describing functions, and the set of binding times comprises at least one static binding time and one dynamic binding time, and a function type is only accepted during the type check together with the static binding time. | 05-05-2016 |
20160132304 | CONTRACTION AWARE PARSING SYSTEM FOR DOMAIN-SPECIFIC LANGUAGES - Aspects of the present invention disclose a method, computer program product, and system for parsing a domain-specific language (DSL) statement. The method includes one or more processors accessing a DSL statement that includes contracted phrases. The method further includes one or more processors identifying one or more contracted phrases in the DSL statement utilizing an annotated domain vocabulary for a DSL associated with the DSL statement and grammar rules for the DSL. The method further includes one or more processors determining expanded phrases corresponding to the identified one or more contracted phrases based on the annotated domain vocabulary and the grammar rules. The method further includes one or more processors creating an expanded abstract syntax tree (AST) that is representative of the DSL statement with the determined expanded phrases replacing the identified one or more contracted phrases. | 05-12-2016 |
20160139892 | PARSER ENGINE PROGRAMMING TOOL FOR PROGRAMMABLE NETWORK DEVICES - A parser engine programming tool configured to receive an input file representing a directly connected cyclical graph or tree of decision points for parsing a range of incoming packet headers, automatically generate all possible paths within the graph and thereby the associated possible headers, and convert the determined paths/headers into a proper format for programming memory of a parser engine to parse the determined headers (represented by the paths). | 05-19-2016 |
20160139893 | CODE PROCESSOR TO BUILD ORTHOGONAL EXECUTION BLOCKS FOR PROGRAMMABLE NETWORK DEVICES - A processing network including a plurality of lookup and decision engines (LDEs) each having one or more configuration registers and a plurality of on-chip routers forming a matrix for routing the data between the LDEs, wherein each of the on-chip routers is communicatively coupled with one or more of the LDEs. The processing network further including an LDE compiler stored on a memory and communicatively coupled with each of the LDEs, wherein the LDE compiler is configured to generate values based on input source code that when programmed into the configuration registers of the LDEs cause the LDEs to implement the functionality defined by the input source code. | 05-19-2016 |
20160147510 | GENERATING A LOGICAL REPRESENTATION FROM A PHYSICAL FLOW - Described herein are techniques for processing analytic flows. A physical flow can be parsed into multiple elements. A logical representation can be generated based on the physical flow using a dictionary. An engine-specific logical representation or second physical flow can then be generated based on the logical representation using the dictionary. | 05-26-2016 |
20160171719 | METHOD FOR GENERATING EXECUTABLE APPLICATIONS WITH DYNAMIC SCALABLE VECTOR GRAPHICS AND COMPILER FOR CARRYING OUT THE METHOD | 06-16-2016 |
20160378445 | SIMILARITY DETERMINATION APPARATUS, SIMILARITY DETERMINATION METHOD AND SIMILARITY DETERMINATION PROGRAM - An objective is to extract, as similar functions, not only a pair of functions having the same syntax, but also a pair of functions having different syntaxes but performing similar processes. A similarity determination apparatus includes: a dependency analyzing section to get a list of dependee elements as a dependency list, from a source code including a plurality of functions, each function depending on one of the dependee elements; a similarity calculating section to calculate, based on the dependency list, similarity between the dependee elements on which two of the plurality of functions depend, as dependee similarity, and calculate, based on the calculated dependee similarity. similarity between the two functions, as depender similarity; and a similarity threshold determining section to determine that the two functions are similar to each other when the depender similarity is equal or exceeds a first threshold. | 12-29-2016 |