Programming Language Patents (Class 717/114)
-
Patent number: 8296730Abstract: When objects are called by a program written in a strongly-typed language using an interface written in a loosely-typed manner, incompatibilities between the programming languages can cause problems. Extension methods can simplify the interface between objects in an object model and a program written in a strongly-typed programming language by providing method overloads that accept strongly-typed parameters. Extension methods are provided that use method overloads that accept strongly-typed parameters, improving type safety by allowing the compiler to enforce type safety rather than relying on type checking at runtime. Nullable types and object initialization may be used to provide strongly-typed optional parameters. Extension methods can be used to support parameterized properties and to support class indexers, enabling query of collections of in-memory objects.Type: GrantFiled: March 12, 2008Date of Patent: October 23, 2012Assignee: Microsoft CorporationInventors: David Andrew Whitechapel, Vladimir Morozov, Phillip Michael Hoff
-
Patent number: 8296729Abstract: A system features a back-end computing system that includes a library that contains objects for use with a computer programming language, and a front-end computing system that executes a development environment. The development environment includes a plug-in that supports the computer programming language, and the plug-in enables access to the library. The plug-in includes a first component to perform syntax checking for the computer programming language in the integrated development environment, and a second component to provide access to the library from the integrated development environment.Type: GrantFiled: November 17, 2005Date of Patent: October 23, 2012Assignee: SAP AGInventors: Olivier Ficatier, Vincent Figari
-
Publication number: 20120266133Abstract: There is provided a precondition generating apparatus in which a storage stores a set “S” of logical expressions; a creating unit creates a first logical expression being a logical product of the “S”, logical expressions of a program and a negation of a logical expression indicating a postcondition; a solver finds a solution that makes the first logical expression true and specifies a set of clauses that cannot be simultaneously true in the first logical expression if not found; wherein the creating unit sets relaxing variables for the logical expressions belonging to the set “S” in the set of clauses wherein the logical expressions indicates a precondition of the program, generates a second logical expression by alleviating the clauses of logical expressions corresponding to the relaxing variables in the first logical expression, and applies same process as in the first logical expression to the second logical expression.Type: ApplicationFiled: April 23, 2012Publication date: October 18, 2012Applicant: KABUSHIKI KAISHA TOSHIBAInventors: Takeo Imai, Masahiro Sakai
-
Patent number: 8281299Abstract: The disclosed system provides a functional programming construct that allows convenient modular run-time nonstandard interpretation via reflection on closure environments. This construct encompasses both the ability to examine the contents of a closure environment and to construct a new closure with a modified environment. Examples of this powerful and useful construct support such tasks as tracing, security logging, sandboxing, error checking, profiling, code instrumentation and metering, run-time code patching, and resource monitoring. It is a non-referentially-transparent mechanism that reifies the closure environments that are only implicit in higher-order programs. A further example provides a novel functional-programming language that supports forward automatic differentiation (AD).Type: GrantFiled: November 13, 2007Date of Patent: October 2, 2012Assignee: Purdue Research FoundationInventors: Jeffrey Mark Siskind, Barak Avrum Pearlmutter
-
Patent number: 8276116Abstract: An algebra operation method includes the steps of converting algebra operations for a plurality of objects which appear in a program into an algebra operation sequence object described using object access data used to access the plurality of objects and object state data used to store states associated with the plurality of objects without immediately evaluating the algebra operations, determining a function to be applied to the algebra operation sequence object, and evaluating the algebra operations by executing the function by designating an argument group required for the function in response to a call of a substitute operator.Type: GrantFiled: June 7, 2007Date of Patent: September 25, 2012Assignee: Canon Kabushiki KaishaInventor: Yasuhiro Nakahara
-
Publication number: 20120233592Abstract: An execution environment for functional code may treat application segments as individual programs for memory management. A larger program of application may be segmented into functional blocks that receive an input and return a value, but operate without changing state of other memory objects. The program segments may have memory pages allocated to the segments by the operating system as other full programs, and may deallocate memory pages when the segments finish operating. Functional programming languages and imperative programming languages may define program segments explicitly or implicitly, and the program segments may be identified at compile time or runtime.Type: ApplicationFiled: May 1, 2012Publication date: September 13, 2012Applicant: CONCURIX CORPORATIONInventor: Alexander G. Gounares
-
Patent number: 8250522Abstract: A method and system for creating a common model. In one embodiment, a web services model and a web service client model are identified. The web services and web services client models are then unified to create a common model.Type: GrantFiled: September 28, 2005Date of Patent: August 21, 2012Assignee: SAP AGInventors: Chavdar S. Baikov, Dimitar Angelov, Vladimir Savchenko, Alexander Zubev, Dimitrina Stoyanova
-
Patent number: 8250528Abstract: The subject invention pertains to a system and method of extending programming languages to enable static inheritance. In particular, static subclasses can be defined which extend class functionality and/or behaviors without extending base class state. The subclasses can be specified to include static fields as well as static or instance methods and/or properties that provide a more specific interpretation of an object without extending the state thereof. Furthermore, a static subclass can be specified to provide for type aliasing. Casting is also enabled in both directions between base class type and derived class type in a convenient manner without run-time performance penalties. According to one aspect of the invention, the disclosed systems and methods can be employed to create specific programmatic context, for instance for accessing, manipulating, and type checking external data (e.g., XML).Type: GrantFiled: December 15, 2004Date of Patent: August 21, 2012Assignee: Microsoft CorporationInventors: Henricus Johannes Maria Meijer, Sergey Dubinets, Yan V. Leshinsky, Evgeny N. Veselov
-
Patent number: 8250524Abstract: In one embodiment, a computer system provides an application programming interface (API) for augmenting an application API. A computer system receives software code written in a second programming language indicating a user's intention to augment an application API with contracts from a contract API written in a first programming language. The software code includes a reference to the contract API. The contracts include assertions indicating appropriate use of the application API. The computer system accesses portions of the contract API according to the reference in the software code and compiles the received software code and the referenced portions of the contract API into an intermediate language (IL) version of the software code. The IL version is in an intermediate language common to both the first programming language and the second programming language. The IL version includes the assertions indicating appropriate use of the application API.Type: GrantFiled: December 21, 2007Date of Patent: August 21, 2012Assignee: Microsoft CorporationInventors: Michael Barnett, Manuel A. Fahndrich, Brian M. Grunkemeyer, Wolfram Schulte
-
Patent number: 8245187Abstract: To update a firmware without stopping an operation of a disk array apparatus. The disk array apparatus includes a plurality of disk devices providing redundancy, a disk array control device, and a disk controller for controlling the disk devices individually in response to a command issued from the disk array control device. The disk array control device designates a disk device to be updated based on contents of the firmware update command for the disk device, controls firmware update for the designated disk device, disconnects the designated disk device from the host computer temporarily, sets the disk device as being in a temporary degenerate state, and, when a data write or read command is issued from a host computer for the disk device being in the temporary degenerate state, designating a different disk device to execute the command issued from the host computer by using redundancy of the disk devices.Type: GrantFiled: September 16, 2008Date of Patent: August 14, 2012Assignee: NEC CorporationInventor: Masaya Kakinoki
-
Patent number: 8245188Abstract: A document written in a specialized FLASH presentation markup language (FLML) stored in a storage medium. Such a document can textually represent a FLASH presentation. The text can correspond to a FLAPRE markup language (FLML) that can be interpreted at run-time. The structure and syntax of the FLML can conform to a standardized markup language. The FLML document can include FLML tags having FLML attributes and FLML attribute values.Type: GrantFiled: October 23, 2008Date of Patent: August 14, 2012Assignee: International Business Machines CorporationInventor: David Hertenstein
-
Patent number: 8234624Abstract: A development system for developing new peripheral software code for new peripheral hardware that will be used in a new integrated system. The development system includes a legacy, or preexisting, integrated system substantially the same as the new integrated system. A model of the new peripheral hardware is made. Each I/O register of the model is mapped into memory-mapped I/O space. Development code corresponding to the new peripheral software code is executed on the preexisting hardware so as to interact with the model via the memory-mapped I/O space. In one embodiment, the model is executed as an embedded model on the preexisting integrated system. In another embodiment, the model is executed as a non-embedded model on a hardware descriptive language simulator.Type: GrantFiled: January 25, 2007Date of Patent: July 31, 2012Assignee: International Business Machines CorporationInventors: Robert J. Devins, Nagashyamala R. Dhanwada
-
Patent number: 8234626Abstract: A system for source language module interaction using an event mechanism includes one or more subsystems to detect a producer event, detect a consumer event, generate a new source language method for the producer event and a new source language method for the consumer event, and link the producer event and the consumer event using the new source language method. In an embodiment, the source language may be ASL.Type: GrantFiled: June 4, 2008Date of Patent: July 31, 2012Assignee: Dell Products L.P.Inventors: John J. Hawk, John Hentosh, Alok Pant, James Walker
-
Patent number: 8234625Abstract: Pre-lookup index search blocks and multidimensional interpolation blocks that use the results of the pre-lookup index search blocks in a block diagram to graphically specify (and perform) multidimensional interpolation calculations. The pre-lookup index search and interpolation blocks are defined so as to provide for a separation of breakpoint set data and table data, thus enabling a user to explicitly manage the use of common breakpoint set data. A block diagram created using pre-lookup index search blocks and interpolation using pre-lookup index search blocks shows all tables that use a particular breakpoint set via graphical connections on the block diagram between the pre-lookup index search blocks and the interpolation using pre-lookup index search blocks.Type: GrantFiled: July 24, 2007Date of Patent: July 31, 2012Assignee: The MathWorks, Inc.Inventor: Robert O. Aberg
-
Patent number: 8230386Abstract: The present invention extends to methods, systems, and computer program products for monitoring distributed applications. Declarative application models are used. Operational data for a deployed application can be compared to an application intent expressed in a corresponding declarative application to provide more effective monitoring of application behavior. Application components can subscribe to an event fabric to receive configurations that indicate what events the application is to emit (i.e., publish into the event fabric) for monitoring. Thus, applications essentially subscribe to produce information (as opposed to subscribing to receive information). Monitoring can be dynamically adjusted in response to environment changes.Type: GrantFiled: August 23, 2007Date of Patent: July 24, 2012Assignee: Microsoft CorporationInventors: Igor Sedukhin, Gueorgui Bonov Chkodrov, Amol Sudhakar Kulkarni, Mariusz Gerard Borsa, Haoran Andy Wu, Daniel Eshner, Gilles C. J. A. Zunino
-
Patent number: 8225271Abstract: Methods and apparatus for configuring process, environmental, industrial and other control systems generate and/or utilize models representing configurations of control systems and/or the systems controlled by them. Records of changes to the models or the configurations represented by them are maintained, thereby, for example, providing bases for determining current states, prior states and histories of changes. Objects in the model have characteristics, such as an object type characteristic and an area characteristic. Users can have corresponding permissions. A security mechanism apparatus controls access by users to the objects. Composite objects are defined by definition objects and are displayed in encapsulated or expanded formats. Objects can include an edit control type identifier that determines how they are presented for editing. Functionality responds to user commands by transferring characteristics of a first object depicted by the graphical user interface to a second object.Type: GrantFiled: November 6, 2008Date of Patent: July 17, 2012Assignee: Invensys Systems, Inc.Inventors: Keith Eldridge, Brian Mackay, Mark Johnson, Scott Volk, Kenneth A. Burke, Paul Meskonis, Robert Hall, Steven Dardinski
-
Patent number: 8225277Abstract: A method and a system for non-locally constraining a plurality of related but separated program entities (e.g., a loop operation and a related accumulation operation within the loop's scope) such that any broad program transformation affecting both will have the machinery to assure that the changes to both entities will preserve the invariant properties of and dependencies among them. For example, if a program transform alters one entity (e.g., re-expresses an accumulation operation as a vector operation incorporating some or all of the loop's iteration) the constraint will provide the machinery to assure a compensating alteration of the other entities (e.g., the loop operation is reduced to reflect the vectorization of the accumulation operation). One realization of this method comprises specialized instances of the related entities that while retaining their roles as program entities (i.e., operators), also contain data and machinery to define the non-local constraint relationship.Type: GrantFiled: April 25, 2010Date of Patent: July 17, 2012Inventor: Ted James Biggerstaff
-
Patent number: 8225276Abstract: An electronic device and method are provided to enable the management of shared code. Code may be shared if the environmental configuration is suitable for execution of the code and the functionality of the code matches. An identifier is provided to correspond to the functionality for a unit of code. Examples of identifiers can include file names, function names, macro names and class names. A checksum may also be used to identify the functionality of the unit of code. An organizational structure is configured to have constituents corresponding to environmental configurations suitable to execute the unit of code. Examples of the organizational structure include a directory structure or a class structure. The various units of code may be stored in the organizational structure and located by the constituent in which they are located and their functionality determined by the identifier to enable sharing.Type: GrantFiled: February 10, 2009Date of Patent: July 17, 2012Assignee: The MathWorks, Inc.Inventors: Yang Feng, Peter Szpak, Vijay Raghavan, Jan Sjodin
-
Publication number: 20120180025Abstract: Embodiments of the present application may simplify an integration of statically typed and dynamically typed languages by automatically generating an implementation of a statically typed native interface for a given set of dynamically typed functions. In an embodiment, functions in a dynamically typed language are automatically interconnected with functions in a statically typed language. Code that bridges and/or connects a statically typed interface and a dynamically typed interface embodied in the dynamically typed source code may be automatically generated. The statically typed interface may be provided by a user. Further, an extensible set of runtime rules that determine how to convert between statically typed and dynamically typed data may be provided.Type: ApplicationFiled: July 5, 2011Publication date: July 12, 2012Applicant: THE MATHWORKS, INC.Inventor: Peter Hartwell WEBB
-
Patent number: 8219380Abstract: Embodiments include computer systems, methods, and program code for developing and utilizing behavioral data models. A model can comprise a property and a behavior of the modeled component, with the property defining a data element of the modeled component and the behavior comprising a programmatic expression defining an operation to be performed when the model is consumed. The programmatic expression can comprise as a function to be evaluated to determine a derived property from an input parameter. The model may comprise data representing a constraint to be met by data of an instance of the derived property. The code of a functional component generated based on the behavior can be configured to evaluate data stored in the data structure corresponding to the derived property against the constraint and store data representing whether the constraint is satisfied.Type: GrantFiled: February 10, 2009Date of Patent: July 10, 2012Assignee: Adobe Systems IncorporatedInventor: Basil Hosmer
-
Publication number: 20120151437Abstract: A method is disclosed for translating by a computer system of a COBOL computer program into a translated computer program in a readable and maintainable syntax in an object oriented programming language. The translated program including variable names equivalent to the original COBOL variable names and with attributes described in COBOL syntax. The translating method further providing for memory allocation in the translated computer program for storage of “COBOL” variables compatible with that of the original COBOL program; a description of program flow that is readable, and utilizing arithmetic operators to describe operations between COBOL variables. Also disclosed is a special object oriented run-time library for creating and performing operations between COBOL numeric objects, including maintaining storage of variable content in the original COBOL format, and for enabling readability of the translated source code by allowing arguments for variable type descriptions to be expressed in COBOL syntax.Type: ApplicationFiled: December 7, 2011Publication date: June 14, 2012Applicant: BULL HN INFORMATION SYSTEMS INC.Inventors: Todd Bradley KNEISEL, Cynthia S. GUENTHNER, Albert Henry John WIGCHERT, Nicholas John COLASACCO, Russell W. GUENTHNER, John Edward HEATH, Clinton B. ECKARD
-
Patent number: 8201154Abstract: An apparatus for processing digital audio-visual data including a module class manager configured to evaluate code to determine an interpretative language in which the code is written, wherein the interpretative language is selected from a plurality of interpretative languages, and an interpreter specific to the interpretative language, wherein the interpreter is configured to interpret and execute the code.Type: GrantFiled: February 4, 2005Date of Patent: June 12, 2012Assignee: THOMSON Licensing S.A.Inventors: Hongtao Liao, Rui Liang Yang
-
Patent number: 8196098Abstract: A system for managing temporary processing agents. A first code routine is provided as an empty routine in an agent including first executable code, the empty routine consisting of non-executable code. A programming component selectively loads second executable code to the first routine for converting the empty routine to a populated routine. A code element issues a call to the first routine. An agent execution component is responsive to the first routine being a populated routine for executing the second executable code.Type: GrantFiled: January 3, 2006Date of Patent: June 5, 2012Assignee: International Business Machines CorporationInventors: Scott D. Hicks, James A. Martin, Jr.
-
Patent number: 8196092Abstract: A method, system, and computer program product are provided for generating an Extensible Stylesheet Language (XSL) dialog modules (XDM). Voice Extensible Markup Language (VoiceXML) documents operating under voice portal applications employ a series of dialog modules that facilitate operational flow through the application by invoking specific caller-centric events. These dialog modules are divided into two components—XML and XSL dialog modules. The division of the modules causes a clean separation between data (the XML component) and behavior (the XSL component). The XSL component in conjunction with an XML framework operable with the XSL component forms an XDM. Because behavioral aspects remain consistent from application to application, a library of XDMs can be provided to facilitate reuse, thereby minimizing redundancy and reducing development time and cost, and facilitating rapid market entry for organizational products.Type: GrantFiled: June 14, 2007Date of Patent: June 5, 2012Assignee: Verizon Patent and Licensing Inc.Inventors: Parind Poi, Prashant Kamath
-
Patent number: 8191040Abstract: An application program interface (API) provides a set of functions that make available support for processing XML documents for application developers who build Web applications on Microsoft Corporation's .NET™ platform.Type: GrantFiled: January 12, 2007Date of Patent: May 29, 2012Assignee: Microsoft CorporationInventors: Anders Hejlsberg, Daniel Dedu-Constantin, Erik B. Christensen, Keith W. Ballinger, Mark W. Fussell, Neetu Rajpal, Nithyalakshmi Sampathkumar, Omri Gazitt, Stefan H. Pharies, William A. Adams, Yan Leshinsky, Chia-Hsun Chen, Christopher J. Lovett
-
Patent number: 8191051Abstract: A system automatically generates building system application solutions. The system includes a system design verifier and a system design converter. The system design verifier is configured to verify an application definition. The system design converter is coupled to the system design verifier, and is configured to convert verified application definitions into computer statements that are executable on a processor to implement a building system application solution that corresponds to the application definition.Type: GrantFiled: June 26, 2006Date of Patent: May 29, 2012Assignee: Siemens Industry, Inc.Inventors: Osman Ahmed, Pornsak Songkakul
-
Patent number: 8176469Abstract: A container can be used to atomically convert types of values to pass the values between programs of different programming languages. Different programs written in different programming languages can pass the values by reference to a container and can use an accessor method associated with the container to convert the values to a desired format.Type: GrantFiled: May 3, 2007Date of Patent: May 8, 2012Assignee: Oracle International CorporationInventor: Terry Leonard Lucas
-
Patent number: 8171045Abstract: The compiled code of a computer program is stored in multiple pieces within a database. Each piece is optionally stored within a separate data record. Execution of the computer program includes using database queries to retrieve pieces of the compiled code for execution. The database and associated database management logic are used to provide numerous advantages in execution and management of the computer program. For example, in some embodiments, database queries are used to help facilitate program flow logic.Type: GrantFiled: July 31, 2008Date of Patent: May 1, 2012Assignee: XSEVO Systems, Inc.Inventor: Dustin Kurt Adler
-
Patent number: 8171453Abstract: Systems and methods are provided with respect to computer programming. Program behavior can be tuned to provide a seamless mixture of semantic behavior across a single program language syntax. Semantic behavior can be explicitly specified at arbitrary levels of syntactic granularity (e.g. expressions, members, types, compilation units . . . ), wherein semantic scope is commensurate with the specified level of granularity.Type: GrantFiled: May 21, 2007Date of Patent: May 1, 2012Assignee: Microsoft CorporationInventors: Henricus Johannes Maria Meijer, Amanda Silver, Paul A. Vick
-
Patent number: 8166456Abstract: A programming language type system includes, in a memory, a set of numeric type including integer types, fixed-point types and floating-point types, a set of type propagation rules to automatically determine result types of any combination of integer types, fixed-point types and floating-point types, constant annotations to explicitly specify a result type of a literal constant, context-sensitive constants whose type is determined from a context of a constant according to the set of type propagation rules, an assignment operator to explicitly specify a type of a value or computation, and operator annotations to explicitly specify a result type of a computation.Type: GrantFiled: November 26, 2008Date of Patent: April 24, 2012Assignee: The MathWorks, Inc.Inventor: Charles J. Devane
-
Patent number: 8165865Abstract: A method for modeling and simulating a system comprising first and second interrelated components is disclosed. The method comprises modeling the behavior of said first and second components using first and second specifications. Each of said first and second specifications includes a functional specification and an associated simulation element. The method further comprises simulating the behavior of said first and second components using said first and second specifications. The simulation elements communicate with one another to provide a simulation system.Type: GrantFiled: January 18, 2007Date of Patent: April 24, 2012Assignee: Mentor Graphics CorporationInventors: Daniel Robin Parker, Christopher Jones, Jason Sotiris Polychronopoulos
-
Patent number: 8161454Abstract: According to one embodiment of the present invention, a software architecture encoded on a computer readable medium is disclosed. The software architecture can be utilized for developing in-vehicle software applications for installation and execution on an in-vehicle computer system. The software architecture includes a number of vehicle application program interfaces (APIs) for accessing vehicles systems or data and for developing in-vehicle software applications; and a number of policy restrictions underlying the vehicle APIs for restricting the level of access to vehicle systems and data while the in-vehicle software application is being developed.Type: GrantFiled: January 22, 2007Date of Patent: April 17, 2012Assignee: Ford Motor CompanyInventors: Hari Srinivasan, David Leslie Watson, Matthew Whitaker, Emily Reyna
-
Patent number: 8156472Abstract: A reflective process algebra called the ?-calculus facilitates the serialization of processes at the level of the reflective process algebra. The reflective process algebra because of its reflective properties, can be used on computing systems with finite resources. The reflective process calculus can be made to be sensitive to resources, such as memory and bandwidth, hence facilitating its use as a programming language at the machine level. The reflective process calculus causes the dual nature of a computation entity to be exposed. A name can be caused to become a process and a process can be caused to become a name.Type: GrantFiled: March 30, 2004Date of Patent: April 10, 2012Assignee: Microsoft CorporationInventors: L. Gregory Meredith, Allen L. Brown, Jr., David Richter, George Moore
-
Patent number: 8156471Abstract: A data processing representation is expressed in the form of code sections, which may be nested, using multiple programming languages. The representation is read by an execution engine. The execution engine identifies the language of each code section, and a corresponding language specific processing unit is invoked to process the code section. The processing unit reads that section, identifying sub-sections specified in it's associated language and other sub-sections specified in unknown languages. It executes the sub-sections specified in its associated language with the intended semantics and in the appropriate order. When a sub-section specified in an unknown language is encountered, it delegates processing of that sub-section back to the execution engine, which repeats this process for the unknown sub-section. The execution result is returned back to the requesting language specific processing unit, which continues processing from where it left off.Type: GrantFiled: November 9, 2001Date of Patent: April 10, 2012Assignee: Oracle International CorporationInventors: Adam Bosworth, David Bau, III, Kenneth Eric Vasilik
-
Patent number: 8146058Abstract: Quality of modularization of source code is tested using different perspectives such as a structural modularity perspective, an architectural modularity perspective, a size perspective, and a similarity of purpose perspective. A history of changes in modularization may be kept such that the degree to which given source code is well-modularized can be determined over time. The changes made to the code by individual programmers may be kept, such that the degree to which their coding enhanced or harmed modularization may be tracked.Type: GrantFiled: December 15, 2006Date of Patent: March 27, 2012Assignee: Infosys LimitedInventors: Santonu Sarkar, Girish Maskeri Rama, Nagaraja Nanjegowda Siddaramappa, Avinash C. Kak, Shubha Ramachandran
-
Publication number: 20120072886Abstract: In one embodiment of the present invention, a method for using a domain specific computer language to extend an existing computer language is provided, comprising: creating a rule for validation for a compiler, the rule for validation created in a rule description language created specifically to describe rules for validation, the rule defining a part of the domain specific computer language; examine source text to identify a domain specific language to use for compiling; and compiling the source text using a compiler for an existing computer language using the identified domain specific language, wherein the compiler contains a rules interpretation engine that runs the rules for validation for the identified domain specific language, wherein the rules for validation are external to the compiler.Type: ApplicationFiled: September 16, 2010Publication date: March 22, 2012Applicant: STARVIEW TECHNOLOGY, INC.Inventors: Francis G. McCabe, Kenneth R. MacKenzie
-
Patent number: 8141037Abstract: Systems and methods that alleviate programmers of the burden of writing extensive code to implement a context switch for a particular piece of software code. For software code for which a context switch is desired, a declaration of the context and its attributes may be included in the code, along with an indication of the boundaries of the portion of the code to be executed within the context. No further programming for particular piece of code may be necessary in order to implement the context switch. An execution engine may be configured to identify the declaration and the indication of the boundaries, control the generation of the context, and control (or at least initiate) the execution of the software code within the generated context. Thus, from the perspective of the programmer of the piece of code, the context switch may seem transparent.Type: GrantFiled: January 25, 2006Date of Patent: March 20, 2012Assignee: Microsoft CorporationInventor: Gorti D. Durgaprasad
-
Patent number: 8140850Abstract: Systems and methods are disclosed for embedding information in software and/or other electronic content such that the information is difficult for an unauthorized party to detect, remove, insert, forge, and/or corrupt. The embedded information can be used to protect electronic content by identifying the content's source, thus enabling unauthorized copies or derivatives to be reliably traced, and thus facilitating effective legal recourse by the content owner. Systems and methods are also disclosed for protecting, detecting, removing, and decoding information embedded in electronic content, and for using the embedded information to protect software or other media from unauthorized analysis, attack, and/or modification.Type: GrantFiled: December 8, 2008Date of Patent: March 20, 2012Assignee: Intertrust Technologies CorporationInventors: William G. Horne, Umesh Maheshwari, Robert E. Tarjan, James J. Horning, W. Olin Sibert, Lesley R. Matheson, Andrew K. Wright, Susan S. Owicki
-
Patent number: 8141034Abstract: A configurable class system for an application author working in an application development environment that automates the handling of undo, redo and logging operations is discussed. The configurable class system removes the burden from the application author of having to custom manage undo, redo and logging information during application writing by providing the necessary mechanisms to every application object created. The configurable class system also allows the application author to handle exceptional state changes in an application by configuring the underlying base classes provided by the configurable class system. Additionally, the embodiments of the present invention enable the application author to customize the compression of a series of identified operations by selecting the type of operations that are to be compressed and the manner in which the compression is to occur.Type: GrantFiled: August 6, 2007Date of Patent: March 20, 2012Assignee: The MathWorks, Inc.Inventor: David A. Foti
-
Patent number: 8135757Abstract: Provided are a method, system, and computer program product to generate references to reusable code in a schema. A program is coded in a first programming language having data structures, wherein at least one of the data structures includes a reference to reusable code. A model file is generated providing a source name identifying the reusable code, elements and attributes in a second programming language for the reference to the reusable code in the program. A generator is invoked with a reference to the model file. The invoked generator processes the data structure coded in the first programming language to generate a data structure schema in the computer readable medium in a second programming language describing elements and attributes of the data structure coded in the first programming language. A determination is made of instances of the source name indicated in the model file in the data structure.Type: GrantFiled: June 10, 2009Date of Patent: March 13, 2012Assignee: International Business Machines CorporationInventor: Gary Isaak Mazo
-
Patent number: 8132152Abstract: Generating programmatically a pointer to a super implementation of a method in a programming language that is not a class-based object-oriented programming (OOP) language is disclosed. A hierarchy of functions, the hierarchy including one or more parent nodes each representing a parent function and each having one or more child nodes, each child node representing a function that inherits the methods of the corresponding parent node of which it is a child, is traversed until a super implementation of an inherited method is found. A programmatically created pointer to the super implementation is inserted programmatically into a corresponding location in a current function.Type: GrantFiled: June 8, 2007Date of Patent: March 6, 2012Assignee: Apple Inc.Inventor: Benoit Marchant
-
Patent number: 8127269Abstract: The invention provides a solution for transforming a flow graph model to a structured flow language model. In particular, the nodes in the flow graph model are traversed, and each node is mapped to an activity in the structured flow language model. When a node comprises a branch point, the corresponding branch region is identified and mapped. This process is repeated until all nodes in the flow graph model have been mapped to corresponding activities in the structured flow language model. In this manner, the desired nesting and containment relationships can be identified and generated in the structured flow language model.Type: GrantFiled: August 4, 2005Date of Patent: February 28, 2012Assignee: International Business Machines CorporationInventors: Jie Hu, Raymond L. Kong, Curtis Miles
-
Patent number: 8127283Abstract: In one embodiment, the present invention includes a method for developing of a parallel program by specifying graphical representations for input data objects into a parallel computation code segment, specifying graphical representations for parallel program schemes, each including at least one graphical representation of an operator to perform an operation on an data object, determining if any of the parallel program schemes include at least one alternative computation, and unrolling the corresponding parallel program schemes and generating alternative parallel program scheme fragments therefrom. Other embodiments are described and claimed.Type: GrantFiled: September 5, 2007Date of Patent: February 28, 2012Assignee: Intel CorporationInventors: Yuriy E. Sheynin, Alexey Y. Syschikov
-
Patent number: 8122431Abstract: A data processing device, including a formula editor capable of establishing a formal mathematical formula with variable identifiers, a set on metadata maintaining correspondence between the identifiers and stored data, and a code generator capable of generating a code executing the formula on the stored data. An editor of conditions establishes an expression of condition operable on database tables to provide a data table. The formula editor authorizes a particular notation bearing on a particular operator and a variable identifier, in the presence of which the condition editor is actuated to establish a correspondence with a particular metadata serving as a pointer to an expression of condition and to a standby table, and the code generator produces through the particular metadata of the executable code resolving the condition and fills the standby table with the data derived from the resolution of the condition and applies the operator to the table.Type: GrantFiled: October 11, 2005Date of Patent: February 21, 2012Assignee: ProgilysInventors: Michel De Becdelievre, Hervé Morand
-
Patent number: 8122429Abstract: A database table of predefined data transformations is provided. Each predefined data transformation is associated in the table with a unique identifier, a corresponding description and a validity period. When a data modeler wishes to develop a data model for a desired prediction, he/she will first determine a set of variables that will be used therefor. The set of variables can include any of the predefined data transformations from the database table. The data model will then be developed by applying raw data to the set of variables and determining a mathematical relationship there between. Once the data model has been developed, the data modeler will write a reusable specification for applying the data model operationally. Thereafter, IT personnel or the like can code and deploy the data model using the specification.Type: GrantFiled: April 17, 2008Date of Patent: February 21, 2012Assignee: International Business Machines CorporationInventors: Mark S. Ramsey, David A. Selby
-
Patent number: 8121976Abstract: A method and apparatus for creating a schema definition from a language-specific metamodel of a data structure written in a legacy computer language involves walking through the nodes of the metamodel, and creating corresponding schema element objects in a schema tree that is serialized to create the schema definition. The creation of the schema element objects follows rules, and permits the definition of nested data structures having conjunctive-type and disjunctive-type membership.Type: GrantFiled: May 12, 2009Date of Patent: February 21, 2012Assignee: International Business Machines CorporationInventors: Suman K. Kalia, Sheng Fang, John H. Green
-
Patent number: 8122342Abstract: A mechanism is provided for enforcing accessible content development. The mechanism enforces accessible content development by accessing a tag library descriptor for each of a plurality of markup tags for web content authoring where the tag library descriptor notes one or more tag sub-elements required for accessibility. The mechanism analyzes each markup tag in a piece of web content by comparing the tag library descriptor accessibility requirements to sub-elements included with each markup tag to determine whether all required accessibility sub-elements are present. The mechanism generates an error message if all required accessibility sub-elements of a markup tag are not present.Type: GrantFiled: March 28, 2008Date of Patent: February 21, 2012Assignee: International Business Machines CorporationInventors: Christopher J. Karle, Corinne M. Ryan, Richard S. Schwerdtfeger
-
Patent number: 8112740Abstract: A type system employing structural subtyping is disclosed herein. A core type system supports several structural types, such as stream, choice, intersection and sequence. Also part of the core type system is a new invariant type, which denotes values whose dynamic type is the same as its static type, and type restrictions for limiting a range of a base type. Furthermore, a streamlined structural version of delegates, called structural delegates and a validation method thereof are introduce into the type system. To further facilitate type safety, strict statically checked interface casts are introduced.Type: GrantFiled: June 16, 2008Date of Patent: February 7, 2012Assignee: Microsoft CorporationInventors: Erik Meijer, Wolfram Schulte, Barend H. Venter, Chia-Hsun Chen, Christopher J. Lovett, Matthew J. Warren
-
Patent number: 8112671Abstract: A method and apparatus for providing an undoable programming language. More specifically the present invention relates to providing a fully undoable programming language, where the language includes a fully undoable core language portion and a conventional language portion. In an embodiment of the present invention, a method of encoding a general-purpose undoable programming language to enable fully undoable instructions includes encoding a fully undoable core imperative language portion having a plurality of undoable core instructions, each of the plurality of undoable core instructions to perform at least one undoable operation upon execution, and the at least one undoable operation being fully undoable until final termination of a program written using any of the plurality of undoable core instructions.Type: GrantFiled: February 27, 2007Date of Patent: February 7, 2012Assignee: AT&T Intellectual Property II, L.P.Inventors: Giuseppe Di Fabbrizio, Nils Klarlund
-
Patent number: 8108834Abstract: A computer-implemented technique for executing a process is provided. The technique includes providing a class having at least one annotation that defines at least a portion of the process. The annotation is a run-time-readable, non-executable declarative programming construct that is associated with a first method of the class, and specifies at least one transition rule and a second method of the class associated with the transition rule. A process engine, which runs on a computer and is not an instance of the class, parses the annotation to extract the transition rule. The process engine receives a message from a source external to the process engine, and evaluates whether the transition rule is satisfied, responsively to the message. Upon finding that the transition rule is satisfied, the process engine invokes the second method, so as to generate an output with respect to the message. Other embodiments are also described.Type: GrantFiled: March 21, 2007Date of Patent: January 31, 2012Assignee: International Business Machines CorporationInventors: David Oren, Gal Shachor