Source-to-source Programming Language Translation Patents (Class 717/137)
  • Patent number: 8572584
    Abstract: A method, computer system, and computer readable article of manufacture for converting a first program code in a multi-threaded program into a second program code which causes less lock contention. A processing unit determines whether the first program code includes either a first class having a method call to a third class that operates while taking synchronization by locking, or a second class inheriting a parent class that operates while taking synchronization by locking. If the first class, then it is converted into a class with a method call to a concurrent operation executable class that is functionally equivalent and a shorter lock holding section. If the second class, then it is converted into a class with a method call to a concurrent operation executable class that is functionally equivalent to that of the parent class, and a shorter lock holding section.
    Type: Grant
    Filed: March 2, 2010
    Date of Patent: October 29, 2013
    Assignee: International Business Machines Corporation
    Inventor: Kazuaki Ishizaki
  • Patent number: 8566807
    Abstract: A method and system for allowing for access to a Document Object Model and JavaScript of Web-page on a server-side is disclosed herein. The present invention analyzes the JavaScript of the Web-page on the server-side with a JavaScript parser and engine. The present invention converts the Document Object Model and JavaScript of the web-page into an accessible format. The present invention allows for access of the accessible format of the Document Object Model and JavaScript of the Web-page by other platforms such as JAVA, RUBY-ON-RAILS, PHP and .NET.
    Type: Grant
    Filed: November 22, 2008
    Date of Patent: October 22, 2013
    Assignee: Appcelerator, Inc.
    Inventors: Paul Colton, Uri Sarid, Kevin Edward Lindsey
  • Patent number: 8566648
    Abstract: Disclosed herein are techniques for testing a device. In some implementations, a request to perform a test instruction on one or more of a plurality of computing devices is received at a server. The test instruction may be configured to test an application or capability associated with the one or more computing devices. The test instruction may be written in accordance with a computer programming language capable of being translated into a plurality of different programming language instructions sets. A first computing device may be selected from the plurality of computing devices. The first computing device may be capable of performing instructions written in a first one of the computer programming language instruction sets. The test instruction may be transmitted to the first computing device via the network. A response message may be received from the first computing device.
    Type: Grant
    Filed: May 10, 2011
    Date of Patent: October 22, 2013
    Assignee: salesforce, inc.
    Inventor: Jason A. Schroeder
  • Patent number: 8561013
    Abstract: Seamless transition from a Component Business Model (CBM) to a Services Oriented Architecture (SOA) is achieved by converting a tabular representation of a CBM Heat Map to a Unified Modeling Language (UML) representation, and automatically converting the UML representation of a CBM Heat Map to a first iteration of input used during the subsequent SOA solution development using Service Oriented Modeling and Architecture (SOMA).
    Type: Grant
    Filed: October 27, 2008
    Date of Patent: October 15, 2013
    Assignee: International Business Machines Corporation
    Inventors: Ali P. Arsanjani, Ahamed Jalaldeen, Siddharth N. Purohit
  • Patent number: 8555239
    Abstract: An interactive computer architecture is provided that can be employed as a bridge between a mainframe-based computing environment and a distributed server-based computing environment. A request/reply contract can be expressed within the mainframe-based environment and employed as the basis for generating a web service in the distributed computing environment.
    Type: Grant
    Filed: January 15, 2010
    Date of Patent: October 8, 2013
    Assignee: The PNC Financial Services Group, Inc.
    Inventor: Randal J. Heuler
  • Patent number: 8549492
    Abstract: A machine declarative language for formatted data processing is provided. The machine declarative language may be used to generate constraints which can be projected onto a string according to one or more anchor points. The constraints can correspond to evaluation criteria. At least a portion of a string can be evaluated according to the evaluation criteria.
    Type: Grant
    Filed: April 21, 2006
    Date of Patent: October 1, 2013
    Assignee: Microsoft Corporation
    Inventors: Jordi Mola Marti, David Ahs
  • Patent number: 8549497
    Abstract: A process for dynamically generating browser-ready code from a high-level code description of a web page written in a first predefined language having one or more adaptive features and from one or more constraints associated with a request for such browser-ready code.
    Type: Grant
    Filed: May 5, 2008
    Date of Patent: October 1, 2013
    Assignee: University of New Brunswick
    Inventors: Ali-Akbar Ghorbani, Mehran Nadjarbashi-Noghani, Seyed-Hossein Sadat-Kooch-Mohtasham
  • Publication number: 20130254752
    Abstract: A system and computer-implemented method for transforming source code in an original natively encoded format to a locale neutral format, wherein data types and functions in the original format are estimated for compliance with the locale neutral format and an estimation is made as to the amount of code conversions necessary to comply with the locale neutral format.
    Type: Application
    Filed: June 21, 2012
    Publication date: September 26, 2013
    Applicant: INFOSYS LIMITED
    Inventors: Suraj Nair, Krishna Markande, Aviraj Singh
  • Patent number: 8543977
    Abstract: A software system includes a database containing data related to at least one software application and a general-purpose Java-based interpreter on a computer. The interpreter is coupled to the database and is operative to interpret the data, thus enabling a user of the computer to perform functions of the at least one application.
    Type: Grant
    Filed: August 3, 2004
    Date of Patent: September 24, 2013
    Assignee: Het Han Fund Pte., LLC
    Inventor: Mordechay Miron
  • Patent number: 8539459
    Abstract: An individual security program is randomly chosen by way of a respective key and is then packaged with a games program to provide an executable program file which is applied to a storage media, such as an optical disc. Whenever the security program is running, the object code it produces is obfuscated to make it difficult to overcome the protection by identifying and removing the security program. The obfuscated object code is produced by substituting a variable in source code with a function of the variable. When the source code is compiled to produce the object code, the function causes the variable to be presented in the compiled object code as a series of operations.
    Type: Grant
    Filed: August 19, 2004
    Date of Patent: September 17, 2013
    Assignee: Rovi Europe Limited
    Inventors: Alan Walter Stiemens, Martin Clive Gray, Christopher Edward Sulley
  • Patent number: 8539458
    Abstract: The present invention extends to methods, systems, and computer program products for changing addressing mode during code generation. Generally, embodiments of the invention use a compiler transformation to transform lower level code from one address alignment to another address alignment. The transformation can be based upon assumptions of a source programming language. Based on the assumptions, the transformation can eliminate arithmetic operations that compensate for different addressing alignment, resulting in more efficient code. Some particular embodiments use a compiler transformation to transform an Intermediate Representation (“IR”) from one-byte addressing alignment into multi-byte (e.g., four-byte) addressing alignment.
    Type: Grant
    Filed: June 10, 2011
    Date of Patent: September 17, 2013
    Assignee: Microsoft Corporation
    Inventors: Weirong Zhu, Yosseff Levanoni
  • Publication number: 20130239098
    Abstract: In checking a model of software, there is an approach of transforming a source code of software into a checking code in order to reduce a cost required to describe the checking code by an input language of a model checker. Since a user may select only a single transformation method, there are problems in that an abstraction-level change is difficult, a rule modification cost for following up a design and a change of the source code is high, and a rule modification cost for checking using another checking tool is high. In the present invention, when the source code is transformed into the checking code, a unit that selects a plurality of transformation rules is provided to allow the user to easily change an abstraction level. Further, the plurality of transformation rules include a transformation rule of transforming the source code into an intermediate format, a transformation rule of abstracting the intermediate format, and a transformation rule of transforming the intermediate format into the checking code.
    Type: Application
    Filed: August 8, 2011
    Publication date: September 12, 2013
    Inventors: Makoto Ichii, Masaki Chikahisa, Hideto Noguchi, Takehiko Nagano
  • Patent number: 8533665
    Abstract: A computer-implemented method is disclosed for generating Dojo-conforming JavaScript Object Notation (JSON) objects for base objects of an object-oriented programming environment that have been annotated to denote which attribute declarations of the base object correspond to identified Dojo attributes. In a Java class, for example, annotations may be made to indicate which class attributes correspond to the identifier attribute of a Dojo JSON object and based on those annotations a Dojo-conforming JSON object may be generated.
    Type: Grant
    Filed: November 16, 2009
    Date of Patent: September 10, 2013
    Assignee: Cisco Technology, Inc.
    Inventors: Limin Yu, Inderpreet Bhullar, Mukesh Garg
  • Patent number: 8533690
    Abstract: A C-to-Java programming language translator that requires no human intervention, translates literally to preserve both procedure and function in the resulting code, and is independent of the purpose of the source code. The program reads in text from a C file, tokenizes each line for C keywords and punctuation, translates most keywords and expressions, and outputs the result to a Java file. The program is modular so that it is capable of running on multiple operating systems and hardware. The invention implements several methods of translation, including whole-line translation, search/replace translation, context-sensitive translation, idiomatic translation, and second-pass translation. The second-pass translation handles those instances when correct translation of a particular line depends on information in another line.
    Type: Grant
    Filed: May 20, 2010
    Date of Patent: September 10, 2013
    Inventor: James B. McAtamney
  • Patent number: 8533691
    Abstract: Embodiments of the invention may involve managing translation of a source code of a computer application in a first programming language to a target code in a second programming language, at a processing device. A pre-translation analysis of the source code may be performed to determine a part of the source code that is not supported in the second programming language. Thereafter, a report may be generated for indicating modifications to the determined part of the source code. Subsequently, the determined part of the source code may be modified based on the report to generate an intermediate code.
    Type: Grant
    Filed: February 9, 2011
    Date of Patent: September 10, 2013
    Assignee: Beek Fund B.V. L.L.C.
    Inventors: Guy Ben-Artzi, Yotam Shacham, Yehuda Levi
  • Patent number: 8527259
    Abstract: Methods and apparatus, including computer program products, implementing and using techniques for translating digital content from a source language to a target language. A message is displayed to a user. The message contains digital content to be translated from the source language to the target language, as well as the context of the digital content in the source language and/or a reference to a context in which the digital content occurs. A proposed translation of the digital content into the target language is received from the user. The proposed translation is submitted to a translation server.
    Type: Grant
    Filed: February 28, 2011
    Date of Patent: September 3, 2013
    Assignee: Google Inc.
    Inventors: Przemyslaw Broniek, Joanna Chwastowska, Brendan Clavin, Dawid Duda, Terence Haddock, Marcin Mikosik, Maciej Molerus, Michal Pociecha-Los, Jan Wrobel
  • Patent number: 8527968
    Abstract: A declaration translation unit (104) compiles a declaration of variables in overlapping storage areas in a first language to a declaration of independent data variables and respective corresponding flag variables in a second language; an assignment translation unit (105) compiles an assignment to the variables in the areas in the first language so that, in the second language, whether or not the values of the variables are valid is checked assuming that the assignment to the respective overlapping data variables is performed, the results are saved in flag variables for respective variables, and the assignment is performed only to valid data variables; and a reference translation unit (106) compiles the reference of the variables in the areas in the first language so that, in the second language, if the flag variable is valid, the value of the data variable is returned, and if invalid, an exception is occurred.
    Type: Grant
    Filed: March 26, 2010
    Date of Patent: September 3, 2013
    Assignee: NEC Corporation
    Inventor: Jun Eguchi
  • Publication number: 20130227533
    Abstract: The invention concerns the transformation of executable code from one language to another. In particular, the invention concerns the automated transformation of code. The invention concerns methods software and computer systems for the creation of a tree comprised of nodes to be used in the transformation of code. The invention also concerns the methods, software and computer systems for the building of a parser to be used in the transformation of code. Finally, the invention also concerns an automated and iterative method of transforming, assessing and re-transforming code. The invention is advantageous in its ability to avoid usage of an intermediate transformation language and its high level of automation that reduces manual transformation and accordingly is more efficient and less costly.
    Type: Application
    Filed: October 15, 2012
    Publication date: August 29, 2013
    Inventors: Albert Donald Tonkin, Ruth Emma Tonkin
  • Patent number: 8510724
    Abstract: The present invention extends to methods, systems, and computer program products for reconstructing program control flow. Embodiments include implementing or morphing a control flow graph (“CFG”) into an arbitrary loop structure to reconstruct (preserve) control flow from original source code. Loop structures can be optimized and can adhere to target platform constraints. In some embodiments, C++ source code (a first higher level format) is translated into a CFG (a lower level format). The CFG is then translated into High Level Shader Language (“HLSL”) source code (a second different higher level format) for subsequent compilation into SLSL bytecode (that can then be executed at a Graphical Processing Unit (“GPU”)). The control flow from the C++ source code is preserved in the HLSL source code.
    Type: Grant
    Filed: December 17, 2010
    Date of Patent: August 13, 2013
    Assignee: Microsoft Corporation
    Inventors: Yosseff Levanoni, Weirong Zhu, Lingli Zhang, John Lee Rapp, Andrew L. Bliss
  • Patent number: 8510728
    Abstract: Embodiments of the present invention provide a method, system and computer program product for dynamic selection of a runtime classloader for a generated class file. In an embodiment of the invention, a method for dynamic selection of a runtime classloader for a generated class file is provided. The method includes extracting meta-data from a program object directed for execution in an application server and determining from the meta-data a container identity for a container in which the program object had been compiled. The method also includes selecting a container according to the meta-data. Finally, the method includes classloading the program object in the selected container.
    Type: Grant
    Filed: June 30, 2010
    Date of Patent: August 13, 2013
    Assignee: International Business Machines Corporation
    Inventors: Erik J. Burckart, Andrew Ivory, Todd E. Kaplinger, Stephen J. Kenna, Aaron K. Shook
  • Patent number: 8495595
    Abstract: A method and computer program product for selecting an expression evaluation technique for domain-specific language (DSL) compilation. An application written in DSL for a programming task is provided, the application including a plurality of components configured by expressions. A technique that most quickly implements the programming task is selected from a plurality of techniques for evaluating the expressions. The DSL application is compiled in accordance with the selected expression evaluation technique to generate general-purpose programming language (GPL) code.
    Type: Grant
    Filed: March 30, 2010
    Date of Patent: July 23, 2013
    Assignee: International Business Machines Corporation
    Inventors: Henrique Andrade, Bugra Gedik, Mark Mendell, Howard W. Nasgaard, Kun-Lung Wu
  • Patent number: 8495594
    Abstract: A computer program product comprises a computer useable medium. The computer useable medium has a computer readable program such that when the computer readable medium is executed on a computer, the computer is caused to configure an adapter such that the adapter is specific to a data source, provides a communication link to the data source, converts a format of the data source to a format native to a middleware system, and converts a format of metadata of the data source to a standard metadata format. Further, the computer is caused to configure an application interface component to convert an invocation of a function in the middleware system to an invocation of a function provided by an Enterprise Information System through the adapter, convert the data format of the middleware system to a format native to the Enterprise Information System accessed through the adapter, and maintain metadata describing a message format and a function provided by the adapter.
    Type: Grant
    Filed: January 10, 2008
    Date of Patent: July 23, 2013
    Assignee: International Business Machines Corporation
    Inventors: Bryan Eric Aupperle, John Henry Green, Vernon Maurice Green, Ernest Wing Mah, Amy Thatcher Mollin, Piotr Przybylski, Elizabeth Catherine Savoie, Paul Stanley, Philip Ivor Wakelin
  • Patent number: 8490068
    Abstract: A method for feature migration that includes defining a feature specification of a feature in a first application, wherein the feature specification comprises a feature element in a first specification defining the first application, defining a profile specification of a second application, importing the feature specification of the feature into the profile specification, and generating code for the second application using the profile specification, wherein the feature is thereby incorporated in the second application.
    Type: Grant
    Filed: January 26, 2007
    Date of Patent: July 16, 2013
    Assignee: Intuit Inc.
    Inventors: Steven A. Sholtis, Kenneth J. Henderson, Terry F. LeClair, Joseph W. Wells, III
  • Publication number: 20130174131
    Abstract: A system, method and computer program product to provide a technique for achieving high speed and stable dispatch of a code in a programming language based on erasure, the code being converted from a code written in a programming language based on reification. The system, method and computer program product performs a function of adding a synthetic class having the same name as a suffix for name mangling of a normal method in a first programming language based on reification, adding a dummy parameter of the type of the synthetic class to a constructor definition, and adding an appropriate value (normally, null) that matches the type of the dummy parameter to a constructor invocation to convert the code in the first programming language to a code in a second programming language based on erasure.
    Type: Application
    Filed: December 18, 2012
    Publication date: July 4, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: International Business Machines Corporation
  • Patent number: 8479175
    Abstract: An interactive computer architecture is provided that can be employed as a bridge between a mainframe-based computing environment and a distributed server-based computing environment. A request/reply contract can be expressed within the mainframe-based environment and employed as the basis for generating a web service in the distributed computing environment.
    Type: Grant
    Filed: January 15, 2010
    Date of Patent: July 2, 2013
    Assignee: The PNC Financial Services Group, Inc.
    Inventor: Randal J. Heuler
  • Patent number: 8473937
    Abstract: Selected components of a piece of software serve in a first variant, as variation points, are converted into a first XML code. The software, now in hybrid form, is shipped. The first code is converted on the customer side via one or more transformations, for example SLT, exclusively in accordance with transformation rules into a second XML code. In a second variant, a first XML code containing at least one language extension is converted in accordance with transformation rules into a more easily verifiable second XML code without said language extensions. In a third variant a source code formulated in XML is transformed in such a way that, following a back-conversion into the original programming language, a new source code is produced in which not only the representation, but also the actual program content and/or functionality has been changed.
    Type: Grant
    Filed: March 29, 2004
    Date of Patent: June 25, 2013
    Assignee: Siemens Aktiengesellschaft
    Inventors: Roy Oberhauser, Christian Reichel
  • Patent number: 8473929
    Abstract: According to one embodiment, an architecture tailoring system includes an architecture tailoring tool coupled to multiple architecture tools that each generates architectures according to its native architecture definition. Architecture tailoring tool receives an architecture from an architecture tool generated according to its native architecture definition and convert at least a portion of the architecture to conform a different architecture definition. The converted portion may then be exported to another architecture tool that is configured to manipulate the converted portion of the architecture according to its native architecture definition.
    Type: Grant
    Filed: July 30, 2009
    Date of Patent: June 25, 2013
    Assignee: Raytheon Company
    Inventors: Howard C. Choe, Dewey R. Myers, Clifford C. Sammons, Larry R. Splitter
  • Patent number: 8473899
    Abstract: Access is obtained to an input object-oriented computer program. In the input object-oriented computer program, semantically equivalent objects are identified, which exist in different memory locations. If at least one of: a number of occurrences for the semantically equivalent objects exceeds a first threshold value, the threshold value being at least two; and a number of equality tests on the semantically equivalent objects exceeds a second threshold value, then a further step includes identifying an application program interface to reduce the semantically equivalent objects to a single object in a single memory location.
    Type: Grant
    Filed: December 15, 2009
    Date of Patent: June 25, 2013
    Assignee: International Business Machines Corporation
    Inventors: Paolina Centonze, Mohammed Mostafa, Marco Pistoia, Takaaki Tateishi
  • Patent number: 8468507
    Abstract: The present invention extends to methods, systems, and computer program products for binding executable code at runtime. Embodiments of the invention include late binding of specified aspects of code to improve execution performance. A runtime dynamically binds lower level code based on runtime information to optimize execution of a higher level algorithm. Aspects of a higher level algorithm having a requisite (e.g., higher) impact on execution performance can be targeted for late binding. Improved performance can be achieved with minimal runtime costs using late binding for aspects having the requisite execution performance impact.
    Type: Grant
    Filed: June 10, 2011
    Date of Patent: June 18, 2013
    Assignee: Microsoft Corporation
    Inventors: Amit Kumar Agarwal, Weirong Zhu, Yosseff Levanoni
  • Publication number: 20130152059
    Abstract: A unified program analysis framework that facilitates the analysis of complex multi-language software systems, analysis reuse, and analysis comparison, by employing techniques such as program translation and automatic results mapping, is presented. The feasibility and effectiveness of such a framework are demonstrated using a sample application of the framework. The comparison yields new insights into the effectiveness of the techniques employed in both analysis tools. These encouraging results yield the observation that such a unified program analysis framework will prove to be valuable both as a testbed for examining different language analysis techniques, and as a unified toolset for broad program analysis.
    Type: Application
    Filed: February 1, 2013
    Publication date: June 13, 2013
    Applicant: International Business Machines Corporation
    Inventor: International Business Machines Corporation
  • Publication number: 20130152058
    Abstract: A method for translating a control program in an automation language into an intermediate language, wherein the control program comprises a plurality of basic operations that are each mapped to a respective sequence of instructions in the intermediate language, where a specification database comprising a respective transformation rule for at least a multiplicity of basic operations in the automation language is utilizable in a control program is accessed to translate the control program into the intermediate language, the transformation rule allows an input parameter list to be processed, and if the transformation rule is called with an input parameter list having a plurality of input parameters, unlimited in the transformation rule, the transformation rule defines the inclusion of a further transformation rule. The further transformation rule defines a recursive inclusion of the further transformation rule according to a number of the input parameters.
    Type: Application
    Filed: December 5, 2012
    Publication date: June 13, 2013
    Applicant: Siemens Aktiengesellschaft
    Inventor: Siemens Aktiengesellschaft
  • Patent number: 8464227
    Abstract: A supervisory process control and manufacturing information application development and execution system is disclosed that supports the execution of application object scripts derived from multiple different scripting languages. In particular, the system includes a script editor interface that enables submission/specification of scripts for application objects. The script editor interface supports multiple distinct user-side script languages (e.g., user-supplied script text). A script translation component that receives the user-side script includes routines for rendering execution-side script (executable by a script engine) from source script rendered by the script editor and written according to any of a set of user-side script languages supported by the script translation component. The translator supports at least a first scripting language and a second scripting language.
    Type: Grant
    Filed: September 20, 2010
    Date of Patent: June 11, 2013
    Assignee: Invensys Systems, Inc.
    Inventor: Greg C. Clinton
  • Patent number: 8458678
    Abstract: A compiler supporting a language in which selected semantic objects are represented as data objects. The data objects may be used in multiple ways to expand the capabilities of the programming language. Data objects may be passed to applications and used to create executable instructions for that application. In this way, instructions written in the native language of the compiler may be used to control applications that accept programs in a language inconsistent with the native language of the compiler. The syntax checking and variable binding capabilities of the compiler may be used for those instructions that will be executed by an application separate from the object code generated by the compiler. The semantic objects represented as data objects may be selected based on express operations included in the source code or may be based on implicit type conversion.
    Type: Grant
    Filed: June 16, 2011
    Date of Patent: June 4, 2013
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Anders Hejlsberg, Matthew Warren, Dinesh Chandrakant Kulkarni, Luca Bolognese, Peter A. Hallam, Gary Shon Katzenberger, Donald F. Box
  • Patent number: 8458651
    Abstract: Source code for a transactions on Unix® extended for distributed operation (Tuxedo®) application, is parsed by an application migration module. At least one application service routine that each specifies a Tuxedo® service within the parsed source code is identified. At least one identified application service routine includes at least one associated application-to-transaction manager (ATMI) application programming interface (API) routine. Stub code that includes an invocation call for an associated customer information control system service for each application service routine identified within the source code is generated. A customer information control system environment executable is created based upon the source code, the stub code, glue code, and a migration library. The migration library includes, for each associated ATMI API routine, a mapping routine that processes data format differences between each ATMI API routine and at least one associated customer information control system API routine.
    Type: Grant
    Filed: June 18, 2010
    Date of Patent: June 4, 2013
    Assignee: International Business Machines Corporation
    Inventors: John Kurian, Ajay Sood, Dinoop Thomas, Hariharan N. Venkitachalam
  • Patent number: 8458682
    Abstract: 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: Grant
    Filed: April 27, 2009
    Date of Patent: June 4, 2013
    Assignee: National Instruments Corporation
    Inventors: Stephen R. Mercer, Akash B. Bhakta, Matthew E. Novacek
  • Patent number: 8458674
    Abstract: A target computing system performs program code conversion from subject code, executable by a subject computing architecture, into target code executable by the target computing system, and then executes the target code. The target system handles exceptions during binding to native code. Native code binding executes a portion of native code in place of translating a portion of the subject code into the target code. Upon an exception during execution of the portion of native code, the target system saves a target state representing a current point of execution for the portion of native code, and creates a subject state representing an emulated point of execution in the subject architecture. A subject exception handler handles the exception with reference to the subject state. Upon resuming execution from the exception using the subject state, the saved target state is restored to resume execution in the section of portion of native code.
    Type: Grant
    Filed: June 19, 2007
    Date of Patent: June 4, 2013
    Assignee: International Business Machines Corporation
    Inventors: Gavin Barraclough, Kit Man Wan, Abdul Rahman Hummaida
  • Patent number: 8458672
    Abstract: Computer implemented method, system and computer usable program code for facilitating utilization of data. A computer implemented method for facilitating utilization of data includes receiving data, wherein the received data is in a first representation. The received data is converted from the first representation to a common representation that is mapped to the first representation using an external configuration file. The common representation of the data is output to facilitate utilization of the data.
    Type: Grant
    Filed: July 17, 2007
    Date of Patent: June 4, 2013
    Assignee: International Business Machines Corporation
    Inventors: Craig Robert William Forster, Kerry Robert Gunn, Vernon Murdoch, Miguel Pedroza
  • Publication number: 20130125098
    Abstract: A method and system to transform a plurality of programs associated with a plurality of programming languages is provided. In the method, a request is received by a computer to transform a first program in a first programming language to a second program in a second programming language. The first program is then transformed, wherein the transformation includes eliminating errors using predefined criteria. Further, the method maps a statement of the first program with a corresponding statement of the second program.
    Type: Application
    Filed: November 10, 2011
    Publication date: May 16, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Pankaj Dhoolia, Anup Kumar Ghosh, Sugata Ghosal, Asidhara Lahiri, Mangala Gowri Nanda, Krishna Nandivada Venkata, Anjan Nandy, Diptikalyan Saha
  • Patent number: 8443344
    Abstract: Approaches for generating a hardware definition from a program specified in a high-level language. In one approach, a first set of blocks of instructions in the high-level language program is identified. Each block in the first set is bounded by a respective loop designation in the high-level language. For each block in the first set, an associated respective second set of one or more blocks of the program is identified. Each block in the second set is outside the block in the first set. A hardware definition of the program is generated and stored. For each block in the first set, the hardware definition specifies power-reducing circuitry for one or more blocks in the associated second set. The power-reducing circuitry is controlled based on a status indication from the hardware definition of the block in the first set.
    Type: Grant
    Filed: September 25, 2008
    Date of Patent: May 14, 2013
    Assignee: Xilinx, Inc.
    Inventors: Prasanna Sundararajan, Tim Tuan
  • Patent number: 8443345
    Abstract: Development using the JavaScript programming language can be limited since JavaScript code is interpreted. Compiling code at a client may interfere with the dynamicity and portability of web pages. Dynamicity and portability of web pages can be preserved while providing the features of a compiled programming language. A compiled programming language code can be embedded within an interpreted programming language code. The embedded compiled programming language code can be extracted and compiled with resources of a server to deliver the robustness and flexibility of the compiled programming language without burdening a client with compiling.
    Type: Grant
    Filed: November 26, 2008
    Date of Patent: May 14, 2013
    Assignee: International Business Machines Corporation
    Inventors: Francesco M. Carteri, Filomena Ferrara, Alessandro Scotti
  • Patent number: 8442811
    Abstract: Methods and apparatus, including computer program products, implementing and using techniques for translating digital content from a source language to a target language. A message is displayed to a user. The message contains digital content to be translated from the source language to the target language, as well as the context of the digital content in the source language and/or a reference to a context in which the digital content occurs. A proposed translation of the digital content into the target language is received from the user. The proposed translation is submitted to a translation server.
    Type: Grant
    Filed: September 30, 2011
    Date of Patent: May 14, 2013
    Assignee: Google Inc.
    Inventors: Przemyslaw Broniek, Joanna Chwastowska, Brendan Clavin, Dawid Duda, Terence Haddock, Marcin Mikosik, Maciej Molerus, Michal Pociecha-Los, Jan Wrobel
  • Patent number: 8438549
    Abstract: Programming for a data processor to execute a data processing application is provided using microcode source code. The microcode source code is assembled to produce microcode that includes digital microcode instructions with which to signal the data processor to execute the data processing application.
    Type: Grant
    Filed: September 15, 2009
    Date of Patent: May 7, 2013
    Inventors: James A. McCoy, Steven E. Morrison
  • Patent number: 8438551
    Abstract: The invention concerns the transformation of executable code from one language to another. In particular, the invention concerns the automated transformation of code. The invention concerns methods, software and computer systems for the creation of a tree comprised of nodes to be used in the transformation of code. The invention also concerns the methods, software and computer systems for the building of a parser to be used in the transformation of code. Finally, the invention also concerns an automated and iterative method of transforming, assessing and re-transforming code. The invention is advantageous in its ability to avoid usage of an intermediate transformation language, and its high level of automation that reduces manual transformation and accordingly is more efficient and less costly.
    Type: Grant
    Filed: June 27, 2006
    Date of Patent: May 7, 2013
    Assignee: CSC Technology Singapore Pte Ltd
    Inventors: Albert Donald Tonkin, Ruth Emma Tonkin
  • Patent number: 8434072
    Abstract: A translation system and method is described that may automatically translate strings of a legacy application for use in creating an interfacing application that can interface with the legacy application. The translation system and method receive a plurality of input strings from a string list and use an initial language library to associate an identifier with the input strings. The identifier is used to determine the translated version of the input string from additional language libraries. The determined translated strings are associated with the input strings.
    Type: Grant
    Filed: June 2, 2009
    Date of Patent: April 30, 2013
    Assignee: International Business Machines Corporation
    Inventor: Marc Pawlowsky
  • Patent number: 8434071
    Abstract: In a method for translating a graphical workflow in a textual description, a structure of the graphical workflow is analyzed by detecting graphical blocks of the graphical workflow. Further, each graphical block of the graphical workflow is translated in a textual description.
    Type: Grant
    Filed: June 24, 2008
    Date of Patent: April 30, 2013
    Assignee: Siemens Aktiengesellschaft
    Inventor: Marco Solimano
  • Patent number: 8429624
    Abstract: An application programming interface (API) implementation that can interface between an application and a programming library. The implementation includes a Function Router Wrapper that receives a formatted string from the application. The formatted string includes a function name element filled with a function name, an input element filled with function input parameters, and an unfilled output element. The Function Router Wrapper converts the formatted string and passes it to a Function Router, which parses the converted formatted string to access the function name and the function input parameters. The Function Router calls a library function based on the accessed information. When the called library function is completed, the Function Router collects generated function outputs and embeds them into the formatted string output element. The Function Router passes the formatted string back up to the Function Router Wrapper, which converts the formatted string and passes it back up to the application.
    Type: Grant
    Filed: August 17, 2010
    Date of Patent: April 23, 2013
    Assignee: LSI Corporation
    Inventors: Jason Unrein, Louis Henry Odenwald, Jr., Rose George
  • Patent number: 8429611
    Abstract: A method for the generation of a source code for a computer program for the execution or simulation of a complex process in which a multiplicity of subjects communicate with one another. In this method, the processes are described, the description of the processes is stored in a process file, and with the aid of the process file a source code for a computer program is generated, with a separate source code file being generated for each subject. Through the provision of a source code file for each subject, a complex process may be easily and therefore automatically split into several sub-programs, the source code files, which may be generated automatically. In this way it is possible to generate automatically a computer program for a very complex process. A further benefit of the method according to the invention is that it may be executed after automatic generation, i.e. it may be validated by an execution immediately after generation.
    Type: Grant
    Filed: November 15, 2010
    Date of Patent: April 23, 2013
    Assignee: Metasonic AG
    Inventors: Albert Fleischmann, Nils Meyer
  • Patent number: 8423977
    Abstract: 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: Grant
    Filed: April 27, 2009
    Date of Patent: April 16, 2013
    Assignee: National Instruments Corporation
    Inventors: Stephen R. Mercer, Akash B. Bhakta, Matthew E. Novacek
  • Publication number: 20130081004
    Abstract: A computer language translator that translates all or any portion thereof of source code in an original computer language to source code in a target computer language, which may then be translated back to the original language while still maintaining concept, syntax, form of expression, and formatting of the original source code.
    Type: Application
    Filed: November 19, 2012
    Publication date: March 28, 2013
    Inventor: Byron D. Vargas
  • Patent number: 8407675
    Abstract: A technique for transferring binary instructions from a computer system to an external platform is described herein. The process extracts binary instructions from the computer system. The instructions include a function at a register location. The process disassembles the binary instructions to produce an intermediate representation of the function. An interruption is inserted at the register location linked to a routine call. The process analyzes the intermediate representation for data dependency to identify internal data references for the routine call and external data references to produce a data dependence representation. The process reconfigures the data dependence representation to produce a reconfigured representation, whose control flow logic produces a logic hierarchy representation for the function.
    Type: Grant
    Filed: February 5, 2008
    Date of Patent: March 26, 2013
    Assignee: The United States of America as represented by the Secretary of the Navy
    Inventor: Barton T. Clark