Code Generation Patents (Class 717/106)
  • Publication number: 20140365994
    Abstract: Source code statements are automatically generated from a profile including variable code elements and methods. The profile is built from an existing code base that has identified variable code elements that differ when used in different versions of the source code statements. A developer may define values for the variable code elements which are then used by the methods in the profile to automatically generate corresponding source code statements.
    Type: Application
    Filed: June 11, 2013
    Publication date: December 11, 2014
    Inventor: Daniel Vann
  • Patent number: 8910130
    Abstract: Certain example embodiments transform a third-generation language (3GL) and/or an Assembler program so that it can be executed within a fourth-generation language (4GL) runtime environment. Certain example embodiments include a method for transforming a 3GL and/or an Assembler program that is callable by a 4GL program so that the 3GL and/or Assembler program is executable upon call by the 4GL program and from within a 4GL runtime environment. For instance a 4GL identifier may be included in the executable of the 3GL and/or the Assembler program to facilitate execution of the 3GL and/or the Assembler program upon call of the fourth-generation language (4GL) program and within the 4GL runtime environment.
    Type: Grant
    Filed: December 30, 2011
    Date of Patent: December 9, 2014
    Assignee: Software AG
    Inventors: Michael Münster, Uwe Henker
  • Patent number: 8910114
    Abstract: In one embodiment, a method includes identifying a byte swap operation, building a domain including the byte swap operation and other expressions, identifying domain entries and domain exits associated with the domain, determining that a benefit will be obtained by performing a swap of the domain, and responsive to the determination performing the swap of the domain, and storing the swapped domain in a storage medium. Other embodiments are described and claimed.
    Type: Grant
    Filed: June 25, 2009
    Date of Patent: December 9, 2014
    Assignee: Intel Corporation
    Inventor: Mikhail Yurievich Loenko
  • Patent number: 8910112
    Abstract: Techniques for extended enterprise connector framework are described herein. According to one embodiment, a Java proxy is generated in a form of Java beans at a Web server as a mid-layer, using an enterprise connector. The enterprise connector provides object oriented classes that encapsulate specific function calls of a Java connector which represents a set of proprietary APIs (application programming interfaces) to access RFC modules of a backend enterprise system. A JavaScript proxy is generated for a frontend client that communicates with the Web server over the Web using a DWR (direct Web remoting) mechanism to allow the JavaScript proxy to directly access the Java proxy of the mid-layer via an AJAX (asynchronous Java and extensible markup language or XML) communication mechanism, where the JavaScript is invoked by a Web application of the frontend client at runtime. Other methods and apparatuses are also described.
    Type: Grant
    Filed: July 30, 2008
    Date of Patent: December 9, 2014
    Assignee: SAP AG
    Inventors: Yinghui Li, Youneng Xiao, Tao Liu
  • Patent number: 8910063
    Abstract: A method for an assisted display for command line interfaces is described. In an embodiment, an input region and an output region of a command line interface are displayed. Commands are displayed within the input region as they are received. A history is maintained that stores the output of previous executions. At least a portion of the output maintained by the history is displayed within the output region. The output region is scrolled by adding one or more outputs from the history to the display of the output region and/or removing one or more outputs from the display of the output region. Wherein, scrolling the output region does not cause the display of the input region to become obscured. In another embodiment, an input assistance region is displayed that walks a user through selecting commands supported by the command line interface as well as options and arguments for those commands.
    Type: Grant
    Filed: March 27, 2012
    Date of Patent: December 9, 2014
    Assignee: Cisco Technology, Inc.
    Inventor: Brian Sarbin
  • Patent number: 8910113
    Abstract: Embodiments include a method comprising providing a design interface that depicts a plurality of interface elements of an application under development, each element defined in source code accessible by the application development environment in a declarative markup language. The method can comprise receiving, through the design interface, data representing a selection of a plurality of the interface elements, identifying the declarative expressions corresponding to the selected interface elements, defining a new declarative expression, and generating at least one code segment using the identified declarative expressions. The method an comprise storing the generated code segment in a computer readable medium, with the stored code segment associated with the new declarative expression, so that the new declarative expression can be inserted into the source code in place of the identified declarative expressions and/or can used in a second application under development.
    Type: Grant
    Filed: September 22, 2009
    Date of Patent: December 9, 2014
    Assignee: Adobe Systems Incorporated
    Inventors: Ramesh Srinivasaraghavan, Sameer Bhatt, Mayank Kumar, Gaurav Priyadarshi, Sunil Bannur, Sreenivas Ramaswamy
  • Patent number: 8910131
    Abstract: A safety controller designed to control an automated installation having a plurality of sensors and a plurality of actuators. A method for generating a user program for the safety controller comprises the step of generating a source code having a number of control instructions for controlling the actuators and having a number of diagnosis instructions for producing diagnosis reports. Safety-related program variables are processed in failsafe fashion during execution of the control instructions. A machine code is generated on the basis of the source code. At least one checksum is determined for at least some of the machine code. The diagnosis instructions are ignored for the determination of the checksum.
    Type: Grant
    Filed: October 19, 2011
    Date of Patent: December 9, 2014
    Assignee: Pilz GmbH & Co. KG
    Inventors: Peter Moosmann, Matthias Reusch
  • Patent number: 8910115
    Abstract: Systems and methods are described herein for generating native applications for multiple platforms from a single code base.
    Type: Grant
    Filed: April 2, 2012
    Date of Patent: December 9, 2014
    Assignee: Kony Solutions, Inc.
    Inventors: Sathyanarayana V. Reddy, Srikanth Tamalampudi, Prajakt Deshpande, Rajendra Komandur, Pattabhi Rama Rao Dasari, Rajkumar Koneru
  • Publication number: 20140359564
    Abstract: The invention relates to onboard failure warning management systems on aircraft, or flight warning systems (FWS). Traditionally, the logic of these systems refers to procedures to be executed by the crew in response to warnings. Modifications, however minor, to the procedures involve a new development that can be installed on the airplane computer only as part of a costly maintenance procedure, given notably the need to carry out exhaustive tests on the application. The invention introduces the concept of tasks defined by a set of variables, notably the warning and the procedure in which the task is executed, its category, its priority level and its status. Thus, the computer programs can be organized in modules that call the tasks to be executed, the parameters of said tasks being defined in a configuration table that can be updated as the procedures change during simple operation maintenance procedures.
    Type: Application
    Filed: February 24, 2014
    Publication date: December 4, 2014
    Inventors: Gilles Francois, Fabien Guilley, Nicolas Marty, Julia Percier
  • Publication number: 20140359562
    Abstract: Using hardware transactional memory (HTM) for queue operations includes invoking a first operation for a concurrent linked queue of an interpretive program using a Just-In-Time (JIT) compiler of a virtual machine, wherein the first operation does not use HTM, determining whether a data processing system executing the virtual machine supports HTM, and responsive to determining that the data processing system does support HTM, detecting, using a processor and within the first operation, a call to a second operation that is that is configured, in byte code, to return an indication of a failed hardware transaction. Responsive to detecting the second operation, a machine code implementation of the first operation that includes a machine code implementation of the second operation is generated. The machine code implementation of the second operation is an implementation of the first operation that does use HTM.
    Type: Application
    Filed: May 31, 2013
    Publication date: December 4, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Maged M. Michael, Jing Ru Zheng
  • Publication number: 20140359563
    Abstract: A method includes accessing, at a computing device, data descriptive of a graph representing a program. The graph includes multiple nodes representing execution steps of the program and includes multiple edges representing data transfer steps. The method also includes determining at least two heterogeneous hardware resources of the computing device that are available to execute code represented by one or more of the nodes, and determining one or more paths from a source node to a sink node based on a topology of the graph. The method further includes scheduling execution of code at the at least two heterogeneous hardware resources. The code is represented by at least one of the multiple nodes, and the execution of the code is scheduled based on the one or more paths.
    Type: Application
    Filed: December 13, 2013
    Publication date: December 4, 2014
    Applicant: QUALCOMM Incorporated
    Inventors: Binglong Xie, Shuxue Quan, Ning Bi, Jianfeng Ren, Lei Xu, Ananthapadmanabhan Arasanipalai Kandhadai
  • Publication number: 20140359565
    Abstract: Virtual data objects of an electronic device may be represented as one or more resources. A connection independent protocol and implementation of the protocol may then be automatically generated from the resources. The syntax and/or semantics of the protocol may be derived from the defined resources, so that the protocol may be uniquely configured for each set of uniquely defined resources. The resources may also be used to create application schemas used by application developers to efficiently create applications running on user computing systems. The resources may also be used to create an embedded adapter that may include programming code enabling data to be read from and/or written to the virtual data objects in the electronic device. During operation, once the user computing system and the electronic device have established connectivity, data may be exchanged between the device and the user computing system through the connection independent protocol.
    Type: Application
    Filed: March 23, 2012
    Publication date: December 4, 2014
    Inventors: Robert Frankel, Charles Walden
  • Patent number: 8902307
    Abstract: A machine vision system editing environment is provided for a part program in which a continuous stream of image acquisition operations are performed during a run mode. In one embodiment, a new common syntax and representations are utilized wherein continuous image acquisition operations are recorded in the same way as regular operations, with the running of the part program being performed in two stages. In the first stage, the portion of the part program that is to have the continuous stream of image acquisition is scanned for image acquisition operations, and the most efficient order for acquiring the images is determined, after which the image acquisition process is begun. Then, in the second stage, while the image acquisition process is being performed, the portion of the part program is scanned again, with the image analysis operations then being performed.
    Type: Grant
    Filed: November 15, 2011
    Date of Patent: December 2, 2014
    Assignee: Mitutoyo Corporation
    Inventors: Mark Delaney, Barry Saylor
  • Patent number: 8904371
    Abstract: Processing a dataflow program by a program development tool includes detecting a pair of actors defined by dataflow program instructions, wherein the pair of actors include a producer actor and a consumer actor, the producer actor supplying a data structure to the consumer actor via a path that comprises at least one connection and possibly also intervening other actors. An analysis is performed including analyzing one or more operations of the producer actor that involve the data structure and/or analyzing one or more operations of the consumer actor that involve the data structure. A result of the analysis is used as a basis for selecting a minimal amount of information from among a plurality of data handling possibilities concerning the data structure. A transformed program is produced in which the selected minimal amount of information is caused to be passed from the producer actor to the consumer actor.
    Type: Grant
    Filed: June 19, 2012
    Date of Patent: December 2, 2014
    Assignee: Telefonaktiebolaget L M Ericsson (publ)
    Inventors: Charles Chen Xu, Johan Eker, Carl Von Platen
  • Patent number: 8904367
    Abstract: A system and method automatically inserts pipelines into a high-level program specification. An Intermediate Representation (IR) builder creates one or more graphs or trees based on the high-level program specification. A scheduler iteratively applies a bounded scheduling algorithm to produce an execution schedule for the IR minimizing overall execution time for a given number of pipeline stages. A Hardware Description Language (HDL) code generator may utilize the pipelined, scheduled IR to generate optimized HDL code corresponding to the high-level program specification. An annotated version of the high-level program specification showing where the pipelines have been inserted may be displayed allowing additional design exploration.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: December 2, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Partha Biswas, Vijaya Raghavan, Zhihong Zhao
  • Patent number: 8904364
    Abstract: An apparatus and a method for executing a workflow in a business process management (BPM) engine is described. A business process management (BPM) process definition is generated based on a business process at a BPM generator of a BPM system. The BPM process definition is translated into a Java source code at a translator engine of the BPM system. The Java source code is compiled into a Java byte code at a compiler engine of the BPM engine. The processing device of the BPM system is configured to execute the Java byte code.
    Type: Grant
    Filed: September 7, 2010
    Date of Patent: December 2, 2014
    Assignee: Red Hat, Inc.
    Inventors: Jiri Pechanec, Martin Vecera
  • Patent number: 8904344
    Abstract: Various embodiments of systems and methods for managing characteristics variations within solution packages are described herein. In one aspect, the method includes displaying one or more identifiers corresponding to one or more solution packages, receiving a user selection of the solution package, rendering industries and countries supported by the selected solution package, receiving a user selection of at least one of the countries and the industries, based upon the selection of at least one of the one or more countries and the one or more industries, identifying modeling element(s) associated with the solution package, receiving a user selection of the modeling element, and based upon the user selection, providing one or more configuration blocks for configuring the selected solution package by setting or configuring the corresponding one or more characteristics of the modeling element. The configuration may be for specifying applicable industries and/or countries for the modeling element.
    Type: Grant
    Filed: May 4, 2011
    Date of Patent: December 2, 2014
    Assignee: SAP SE
    Inventors: Roland Hoff, Peter Christiansen, Werner Huff-Huebner
  • Patent number: 8904369
    Abstract: A method for automated process distribution includes selecting a process definition; identifying a first process portion and at least one second process portion in the process definition; generating a first further process definition for the first process portion; generating a second further process definition for each the second process portion; generating a corresponding service definition for each the second further process definition. In the method, generating the first further process definition includes generating a process definition element configured to invoke at least one service of the service definitions, and generating the second further process definition includes generating a process definition element configured to offer a service of the service definition corresponding to that second further process definition.
    Type: Grant
    Filed: June 6, 2007
    Date of Patent: December 2, 2014
    Assignee: International Business Machines Corporation
    Inventor: Dieter Roller
  • Patent number: 8904345
    Abstract: A system and method for orchestration of customization for a user experience is disclosed. The apparatus in an example embodiment includes identifying a plurality of modules included in a webpage; discovering dependencies between each of the modules of the plurality of modules; designating at least one module of the plurality of modules for retaining dependency state information, the dependency state information including information indicative of states of dependencies between modules of the plurality of modules; and executing the modules of the webpage in an order indicated by the dependency state information.
    Type: Grant
    Filed: December 5, 2008
    Date of Patent: December 2, 2014
    Assignee: eBay Inc.
    Inventors: Vipul C. Dalal, Rangaraj Keshavamurthy Belur
  • Patent number: 8898625
    Abstract: Optimized storage of function variables in compiled code is disclosed. It is determined that a variable of a first function is required to be available for use by a second function subsequent to return of the first function. Machine code is generated to escape the variable from a storage location in a stack memory to a storage location in a heap memory, prior to the variable being removed from the stack memory, in connection with return of the first function.
    Type: Grant
    Filed: December 15, 2008
    Date of Patent: November 25, 2014
    Inventors: Victor Leonel Hernandez Porras, Roger Scott Hoover
  • Patent number: 8898633
    Abstract: Certain exemplary embodiments comprise a system. The system can comprise a user interface renderer, which can be adapted to render a plurality of distinct user interfaces. Each user interface from the plurality of distinct user interfaces can be adapted to configure a corresponding software application from a plurality of software applications associated with operating a programmable logic controller (PLC).
    Type: Grant
    Filed: August 24, 2007
    Date of Patent: November 25, 2014
    Assignee: Siemens Industry, Inc.
    Inventors: William K. Bryant, Galen Freemon, James W. Cornett, Temple L. Fulton, Gregory J. Karklins
  • Patent number: 8898624
    Abstract: A method for assembling parametric information processing applications, includes: receiving a composition request; composing a processing graph for the request, wherein the processing graph represents an application that includes at least one component; identifying a deployment parameter of the component and requesting a value of the parameter; receiving the parameter value; applying the parameter value to the application; and deploying the application with the parameter value in an execution environment.
    Type: Grant
    Filed: May 5, 2008
    Date of Patent: November 25, 2014
    Assignee: International Business Machines Corporation
    Inventors: Eric Bouillet, Zhen Liu, Anton V. Riabov
  • Patent number: 8898627
    Abstract: The present application is directed towards systems and methods for applying one or more rules that transform objects of an application from a previous instance of the application. Customized functions, objects, databases, and code of the instance of the application may be analyzed by an application transformation tool to identify one or more objects that have been modified. The modified objects may be further analyzed to detect if they are permissibly alterable. The application transformation tool may determine whether each of the permissibly alterable objects reference a standard interface of the application. The application transformation tool may apply one or more rules that transform objects to those permissibly alterable objects that do not reference the standard interface of the application.
    Type: Grant
    Filed: May 11, 2010
    Date of Patent: November 25, 2014
    Assignee: Smartshift GmbH
    Inventors: Albrecht Gass, Nikolaos Faradouris, Oliver Flach, Stefan Hetges
  • Patent number: 8898626
    Abstract: A system for managing a software asset including asset files for inclusion in a library includes: (a) a receiving manager configured for receiving the asset, verifying source of the asset and reading an installer package into the asset to establish a received asset; (b) a build manager coupled with the receiving manager and configured for creating an application wrapper file for the received asset; the build manager creating folders in a folder structure and distributing the asset files among the folders to establish a distributed folder file; the build manager using the distributed folder file to create the application wrapper file; and (c) a peer review manager coupled with the build manager and effecting a peer review process with the application wrapper file to establish a reviewed application wrapper file; the peer review manager unit cooperating with the build manager to present the reviewed application wrapper file to the library.
    Type: Grant
    Filed: November 26, 2008
    Date of Patent: November 25, 2014
    Assignee: The Boeing Company
    Inventors: Darla Renee Younce, Jeffery T. Flenoy, Randall Lee Feringa, Scott Faulkner
  • Publication number: 20140344778
    Abstract: In various embodiments, a data integration system is disclosed which enables users to create a logical design which is platform and technology independent. The user can create a logical design that defines, at a high level, how a user wants data to flow between sources and targets. The tool can analyze the logical design, in view of the user's infrastructure, and create a physical design. The logical design can include a plurality of components corresponding to each source and target in the design, as well as operations such as joins or filters, and access points. Each component when transferred to the physical design generates code to perform operations on the data. Depending on the underlying technology (e.g., SQL Server, Oracle, Hadoop, etc.) and the language used (SQL, pig, etc.) the code generated by each component may be different.
    Type: Application
    Filed: November 11, 2013
    Publication date: November 20, 2014
    Applicant: Oracle International Corporation
    Inventors: Thomas Lau, David Allan
  • Publication number: 20140344780
    Abstract: A method for configuring and executing card content management (CCM) operations in a declarative manner includes composing a CCM operation declaration, wherein each CCM operation includes one or more CCM scripts and storing the CCM operation declaration in memory. When provisioning is needed, applicable scripts for the CCM operation declaration are fetched from the memory. An execution context needed for each script in the CCM operation declaration is prepared. The scripts are executed in an order specified in the CCM operation declaration.
    Type: Application
    Filed: May 14, 2013
    Publication date: November 20, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: YOUNGJIN EO, JINHO LEE, JOOHO LEE
  • Patent number: 8893077
    Abstract: A system and method provided as a Web service for on-demand generation of libraries, as well as working samples, for a specified API, target programming language and target platform. The system is accessed through an interface and includes a Web application, a data store, and a compile server. The Web application is configured to receive a request for code generation from the user interface, to retrieve a description of an API, determine if code artifacts have been previously generated for the API description, and generating a source library in a programming language and target platform of choice based on the API description. The data store stores generated code artifacts, and stores the generated source library for the API description. The compile server is configured to generate compiled libraries and documentation, and store compiled libraries and documentation in the data store.
    Type: Grant
    Filed: March 30, 2012
    Date of Patent: November 18, 2014
    Assignee: Google Inc.
    Inventors: Anthony Julian Aiuto, Mark Edward Stahl
  • Patent number: 8893082
    Abstract: The disclosed embodiments provide a system that facilitates the development and execution of a software program. During operation, the system obtains a type interval for a generic type parameter of an implementation of an overloaded function. Next, the system selects an inference direction for the generic type parameter based on a variance of the generic type parameter, wherein the inference direction is an upward inference direction or a downward inference direction. Finally, the system uses the type interval and the inference direction to perform type inference on the generic type parameter.
    Type: Grant
    Filed: August 31, 2012
    Date of Patent: November 18, 2014
    Assignee: Oracle International Corporation
    Inventors: Karl B. Naden, David R. Chase, Justin R. Hilburn
  • Patent number: 8893080
    Abstract: Processing a dataflow program by a program development tool includes analyzing an actor defined by the dataflow program to identify original sequences of actions that can be reformulated to achieve greater execution parallelism while maintaining the same functionality as the original sequences. A processed dataflow program is produced comprising processed dataflow program instructions and decision point program instructions. The processed dataflow program instructions comprise alternative sequences of reformulated actions that achieve greater execution parallelism while maintaining the same functionality as the identified one or more original sequences. The decision point program instructions direct processing equipment to select and execute one or more of the alternative sequences of reformulated actions, wherein selection is based on state and token information in existence at the time of selection.
    Type: Grant
    Filed: August 15, 2012
    Date of Patent: November 18, 2014
    Assignee: Telefonaktiebolaget L M Ericsson (Publ)
    Inventors: Carl Von Platen, Charles Chen Xu, Song Yuan
  • Patent number: 8893076
    Abstract: Input may be received indicating selection of multiple modules from a plurality of predefined configurable computation modules and to configure the selected modules. Configuring the selected modules may include defining one or more module inputs to each selected module and may also include defining one or more connections between modules of the selected multiple modules. The selected modules may be assembled based on the respective define one or more module inputs to each selected module and the defined one or more connections between modules. The assembled selected module may enable analysis to be performed on data received at the respective one or more module inputs.
    Type: Grant
    Filed: December 14, 2011
    Date of Patent: November 18, 2014
    Assignee: Adobe Systems Incorporated
    Inventor: William R. Softky
  • Publication number: 20140337815
    Abstract: The present disclosure describes methods, systems, and computer program products for providing entity-based, cross-application navigation according to an implementation. One computer-implemented method includes receiving a request for data and callable entities associated with a provided entity context, transmitting the data and callable entities, receiving request for bootstrap code associated with a target application, generating bootstrap code containing an application environment runtime detection library and application environment navigation data, and transmitting the bootstrap code.
    Type: Application
    Filed: July 12, 2013
    Publication date: November 13, 2014
    Applicant: SAP AG
    Inventors: Thorsten Erlewein, Martin Zurmuehl, Markus Cherdron
  • Patent number: 8887127
    Abstract: A web browsing method and apparatus for enhancing a user's convenience in web browsing is provided in a system that uses a multi-core processor. The web browsing method and apparatus is applicable in a system, such as a smart phone that has a low computing power or that has a storage device like a flash memory operating in a rapid manner. Optimized machine codes are stored in files and incremental optimization is achieved, so the JAVASCRIPT® program of the web application has a small compilation overhead and achieves fast execution.
    Type: Grant
    Filed: November 22, 2011
    Date of Patent: November 11, 2014
    Assignees: Samsung Electronics Co., Ltd., SNU R&DB Foundation
    Inventors: Joo-Hwan Lee, Hongjune Kim, Gangwon Jo, Jeongho Nah, Honggyu Kim, Yong-Jun Lee, Jaejin Lee, Seung-Mo Cho
  • Patent number: 8887128
    Abstract: Systems and methods are provided for automated generation of a customized software product. A system includes a computer-readable medium encoded with a project parameters data structure, where the project parameters data structure includes a plurality of project requirement records, and a project prototype. One or more data processors are configured to process a plurality of initial characteristics for the customized software product, populate the project parameters data structure at least based on the initial characteristics, and generate the project prototype based on the project parameters data structure. The one or more data processors are further configured to output a requirements matrix data structure at least based on the project parameters data structure and the project prototype and to generate the customized software product at least based on the requirements matrix data structure and the project prototype.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: November 11, 2014
    Assignee: SAS Institute Inc.
    Inventors: Brian Oneal Miles, Julius Alton King, Adheesha Sanjaya Arangala, Jin-Whan Jung
  • Patent number: 8887135
    Abstract: An aspect of the present invention generates test cases for functional testing of a software application. In one embodiment, rules specifying corresponding patterns in a natural language and corresponding templates are maintained. Each pattern contains corresponding variables and words of the natural language together in an ordered sequence. On receiving a design document containing statements in the natural language, a first statement is determined to match a first pattern specified in a first rule. A match is deemed to exist only if the words in the first pattern exist in the first statement in the same corresponding positions of the ordered sequence, and if the first statement also contains values for each of the variables specified in the first pattern. A set of test cases is generated based on a first template specified in the first rule and the values for each of the variables.
    Type: Grant
    Filed: March 30, 2012
    Date of Patent: November 11, 2014
    Assignee: NIIT Technologies Ltd
    Inventors: Udayan Banerjee, Eswaran Narasimhan
  • Publication number: 20140331201
    Abstract: Disclosed here are methods, systems, paradigms and structures for optimizing intermediate representation (IR) of a script code for fast path execution. A fast path is typically a path that handles most commonly occurring tasks more efficiently than less commonly occurring ones which are handled by slow paths. The less commonly occurring tasks may include uncommon cases, error handling, and other anomalies. The IR includes checkpoints which evaluate to two possible values resulting in either a fast path or slow path execution. The IR is optimized for fast path execution by regenerating a checkpoint as a labeled checkpoint. The code in the portion of the IR following the checkpoint is optimized assuming the checkpoint evaluates to a value resulting in fast path. The code for handling situations where the checkpoint evaluates to a value resulting in slow path is transferred to a portion of the IR identified by the label.
    Type: Application
    Filed: May 2, 2013
    Publication date: November 6, 2014
    Applicant: Facebook, Inc.
    Inventors: Ali-Reza Adl-Tabatabai, Guilherme de Lima Ottoni, Michael Paleczny
  • Patent number: 8881098
    Abstract: An image processing apparatus includes plural module creating units, plural wrapper creating units, an extracting unit, a calling unit, and an argument processing unit. The module creating units create processing modules that are obtained by instantiating different types of image processing classes by using functions. The wrapper creating units create wrappers that call the module creating units and that pass arguments specified in a pointer form to the module creating units. The extracting unit extracts, from image processing information, class names of the image processing classes corresponding to the individual processing modules and the arguments unique to the image processing classes. The calling unit converts the extracted class names and calls the wrapper creating units to which the converted class names are given. The argument processing unit stores the extracted arguments in an array, specifies an initial address of the array, and passes the initial address to the created wrappers.
    Type: Grant
    Filed: July 19, 2011
    Date of Patent: November 4, 2014
    Assignee: Fuji Xerox Co., Ltd.
    Inventor: Noriaki Seki
  • Patent number: 8881097
    Abstract: A method of providing multi-instantiable state templates to a statechart environment is discussed. The method includes the step of providing a graphical definition of an independent state machine object belonging to a statechart. The method further includes the step of instantiating a first instance and a second instance of the independent state machine object in the statechart. The method additionally includes the steps of starting execution of the first instance of the independent state machine object and then stopping execution of the first instance of the state machine object. Additionally, the method includes the step of starting the execution of the second instance of the independent state machine object in the state diagram.
    Type: Grant
    Filed: June 11, 2012
    Date of Patent: November 4, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Vijay Raghavan, Beth Cockerham
  • Patent number: 8881096
    Abstract: A computer-readable recording medium stores therein an IP model that combines source code of IPs that include an interface representing input/output of data; a register storing the data; a behavior executing processing based on the data; and a state performing wait processing according to time information from the interface and a connection code indicative of a connecting relation between the IPs.
    Type: Grant
    Filed: November 30, 2009
    Date of Patent: November 4, 2014
    Assignee: Fujitsu Semiconductor Limited
    Inventors: Seiji Nakabayashi, Masato Tatsuoka
  • Patent number: 8881127
    Abstract: According to some embodiments, Application Programming Interface (API) source code, including command design patterns, is determined to be executed as a runtime scenario. Class may then be automatically generated as linkable building blocks in accordance with the API source code and command design patterns. For example, API command classes and associated methods may be dynamically read using reflection, and a building block class associated with each API command class may be generated. Runtime readable embedded metadata may be planted in the building block classes, at least some of the metadata being provided by the reflection. According to some embodiments, a logical sequence of the building blocks classes may be linked in accordance with the runtime scenario.
    Type: Grant
    Filed: June 14, 2011
    Date of Patent: November 4, 2014
    Assignee: SAP AG
    Inventors: Assaf Mizrachi, Elad Razy, Yinon Avraham, Oded Goldsmidt, Sahar Lepa, Yoram Weizman
  • Publication number: 20140325472
    Abstract: A method for generating code in a predefined programming language based on an optimization problem is provided. The method includes reading a model of the optimization problem, and identifying references to external data sources in the model. The external data sources are external to the model. The method also includes generating the code. The code includes a program representation of the model. The code includes read and/or write accesses to the external data sources. A corresponding code generator and a software development environment are also provided.
    Type: Application
    Filed: April 28, 2014
    Publication date: October 30, 2014
    Inventors: Peter Fige, Farid Riahi
  • Publication number: 20140325473
    Abstract: A method, device and computer-readable storage medium for setting up runtime environment for an application are provided in the present disclosure. The method includes the following steps: determining whether the application is installed; when the application is determined being installed, creating a process of the application according to user's instruction; and providing an application platform interface for developing the application.
    Type: Application
    Filed: July 4, 2014
    Publication date: October 30, 2014
    Inventors: Qiang TU, Wei ZHOU, Wei-Yi ZENG
  • Patent number: 8875105
    Abstract: A method for efficiently developing software and supporting creation of source code so as to develop software that meets the requirements. A plurality of test cases defining a plurality of respective tests to be executed to check the conformity of the software to the requirements are used. In a test execution step, one or more specific test cases selected from the plurality of test cases are executed or the specific test cases are caused to be executed. Furthermore, a test result of a test case executed or caused to be executed in the test case execution step is added to the source code.
    Type: Grant
    Filed: March 1, 2012
    Date of Patent: October 28, 2014
    Assignee: International Business Machines Corporation
    Inventor: Atsushi Yokoi
  • Patent number: 8875104
    Abstract: A method, system and computer program product for efficiently developing software and supporting creation of source code so as to develop software that meets the requirements. A plurality of test cases defining a plurality of respective tests to be executed to check the conformity of the software to the requirements are used. In a test execution step, one or more specific test cases selected from the plurality of test cases are executed or the specific test cases are caused to be executed. Furthermore, a test result of a test case executed or caused to be executed in the test case execution step is added to the source code.
    Type: Grant
    Filed: October 14, 2011
    Date of Patent: October 28, 2014
    Assignee: International Business Machines Corporation
    Inventor: Atsushi Yokoi
  • Publication number: 20140317596
    Abstract: A platform for device-independent business application development, based on XML-based type instructions and associated parameters, is described. The platform supports the hierarchical mapping of business needs onto business processes, action steps and OS and device-independent application descriptions to be interpreted, build, and executed on client devices. Upon receipt of the application description by a client device, the latter being configured to read and interpret the XML-based instructions and parameters of the application description, it creates a local application. The operating system selection, user interface, driver, hardware and firmware specific functionalities and control are taken care of by the client device.
    Type: Application
    Filed: November 29, 2012
    Publication date: October 23, 2014
    Inventors: George BOURIS, Costis PAPADIMITRAKOPOULOS
  • Patent number: 8868401
    Abstract: A system and method automatically generates an object-oriented, textual program from a graphical model, and verifies the performance of the textual program as compared to the graphical model. The graphical model may have a plurality of interconnected blocks, and each block may have a plurality of parameters. One or more of the blocks are mapped to a system object, and the block's parameters are mapped to properties of the system object. An object-oriented, executable textual string is generated automatically for the block. The generated string includes at least one command to: instantiate a system object having functionality that matches the block; set one or more properties of the system object based on the block's parameters; and run the instantiated object.
    Type: Grant
    Filed: March 11, 2010
    Date of Patent: October 21, 2014
    Assignee: The MathWorks, Inc.
    Inventors: David Koh, Brian K. Ogilvie, Zhongxin Li, Shi Chao Zhang, Jihad E. Ibrahim
  • Patent number: 8869099
    Abstract: A method and system for enabling multi-tenancy for software as a service application is provided. The method includes defining a plurality of policy configuration files for each tenant of the SaaS application. The method further includes identifying a tenant and tenant-context for the SaaS application. Thereafter, the method includes identifying one or more policy configuration files and then applying one or more variations to one or more variation points to provide the SaaS application to the user.
    Type: Grant
    Filed: July 28, 2009
    Date of Patent: October 21, 2014
    Assignee: Infosys Limited
    Inventors: Chetan Jagatkishore Kothari, Pawan Chhabra
  • Patent number: 8869103
    Abstract: In an embodiment, a model is sliced into a plurality of slices. A slice in the plurality of slices is selected. A portion of code, that corresponds to the selected slice, is identified from code generated from the model. The identified code is verified to be equivalent to the selected slice. Equivalence may include equivalent functionality, equivalent data types, equivalent performance, and/or other forms of equivalence between the selected slice and the identified generated code.
    Type: Grant
    Filed: September 30, 2011
    Date of Patent: October 21, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Mirko Conrad, Xiaocang Lin, Jun Yan, Peter Szpak, Appa Rao Nirakh, Jaya Shankar
  • Patent number: 8869177
    Abstract: A method, system and computer program product for decoupling components of a software system at load/compile time to accelerate application startup times. In particular, a software components partitioning (SCP) utility pre-defines a number of (implementation) classes to initiate and facilitate the decoupling process. The SCP utility allows the method names and argument lists to be recorded from a remote interface into a local interface which emulates the remote interface. The local interface is augmented with an annotation to define the remote interface. Additionally, a pre-defined keyword is appended to the name of the local interface to enable the creation of a (pre-defined) classname. Furthermore, when the classname is loaded, an implementation (via a Java implementation class, for example) for the remote class is loaded, and the implementation is associated with a dynamic proxy that implements both the local and remote interfaces, on demand.
    Type: Grant
    Filed: September 6, 2007
    Date of Patent: October 21, 2014
    Assignee: International Business Machines Corporation
    Inventors: Thomas R. Gissel, Marc E. Haberkorn, Sai G. Rathnam
  • Patent number: 8869100
    Abstract: A method of defining data objects for use with an executable block diagram modeling and code generation system including providing pre-defined data object classes, each of the pre-defined data classes having default attributes, extending the pre-defined data object classes with subclasses, each of the subclasses having user-defined attributes and generating data objects, which are instances of the pre-defined classes and the subclasses.
    Type: Grant
    Filed: December 8, 2010
    Date of Patent: October 21, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Peter Szpak, Paul Jackson, Peter Mott
  • Patent number: 8869098
    Abstract: A Model Transformation Authoring Framework (MTAF) method and apparatus for authoring and providing model-to-model transformations from one domain to another domain is disclosed. Given a domain and a target domain, at least the given domain having a respective structured hierarchy, the invention system enables a user to specify a declarative mapping (transformation declarative) between a domain specific language modeling the given domain and a modeling language modeling the target domain. The declarative mapping models how the domain specific language modeling the given domain relates to the modeling language of the target domain. The system generates a transformation code implementation of a transformation from the given domain to the target domain. The MTAF provides to the user design decisions with respect to Specification, Transformation Rules, Rule Organization, Rule Application Control, Source-Target Relationship, Incrementality, and Directionality and Tracing.
    Type: Grant
    Filed: December 5, 2007
    Date of Patent: October 21, 2014
    Assignee: International Business Machines Corporation
    Inventors: Maged E. Elaasar, Jeffrey M. Fischer