Programming Language Patents (Class 717/114)
  • Patent number: 8296730
    Abstract: 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: Grant
    Filed: March 12, 2008
    Date of Patent: October 23, 2012
    Assignee: Microsoft Corporation
    Inventors: David Andrew Whitechapel, Vladimir Morozov, Phillip Michael Hoff
  • Patent number: 8296729
    Abstract: 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: Grant
    Filed: November 17, 2005
    Date of Patent: October 23, 2012
    Assignee: SAP AG
    Inventors: Olivier Ficatier, Vincent Figari
  • Publication number: 20120266133
    Abstract: 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: Application
    Filed: April 23, 2012
    Publication date: October 18, 2012
    Applicant: KABUSHIKI KAISHA TOSHIBA
    Inventors: Takeo Imai, Masahiro Sakai
  • Patent number: 8281299
    Abstract: 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: Grant
    Filed: November 13, 2007
    Date of Patent: October 2, 2012
    Assignee: Purdue Research Foundation
    Inventors: Jeffrey Mark Siskind, Barak Avrum Pearlmutter
  • Patent number: 8276116
    Abstract: 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: Grant
    Filed: June 7, 2007
    Date of Patent: September 25, 2012
    Assignee: Canon Kabushiki Kaisha
    Inventor: Yasuhiro Nakahara
  • Publication number: 20120233592
    Abstract: 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: Application
    Filed: May 1, 2012
    Publication date: September 13, 2012
    Applicant: CONCURIX CORPORATION
    Inventor: Alexander G. Gounares
  • Patent number: 8250522
    Abstract: 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: Grant
    Filed: September 28, 2005
    Date of Patent: August 21, 2012
    Assignee: SAP AG
    Inventors: Chavdar S. Baikov, Dimitar Angelov, Vladimir Savchenko, Alexander Zubev, Dimitrina Stoyanova
  • Patent number: 8250528
    Abstract: 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: Grant
    Filed: December 15, 2004
    Date of Patent: August 21, 2012
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Sergey Dubinets, Yan V. Leshinsky, Evgeny N. Veselov
  • Patent number: 8250524
    Abstract: 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: Grant
    Filed: December 21, 2007
    Date of Patent: August 21, 2012
    Assignee: Microsoft Corporation
    Inventors: Michael Barnett, Manuel A. Fahndrich, Brian M. Grunkemeyer, Wolfram Schulte
  • Patent number: 8245187
    Abstract: 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: Grant
    Filed: September 16, 2008
    Date of Patent: August 14, 2012
    Assignee: NEC Corporation
    Inventor: Masaya Kakinoki
  • Patent number: 8245188
    Abstract: 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: Grant
    Filed: October 23, 2008
    Date of Patent: August 14, 2012
    Assignee: International Business Machines Corporation
    Inventor: David Hertenstein
  • Patent number: 8234624
    Abstract: 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: Grant
    Filed: January 25, 2007
    Date of Patent: July 31, 2012
    Assignee: International Business Machines Corporation
    Inventors: Robert J. Devins, Nagashyamala R. Dhanwada
  • Patent number: 8234626
    Abstract: 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: Grant
    Filed: June 4, 2008
    Date of Patent: July 31, 2012
    Assignee: Dell Products L.P.
    Inventors: John J. Hawk, John Hentosh, Alok Pant, James Walker
  • Patent number: 8234625
    Abstract: 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: Grant
    Filed: July 24, 2007
    Date of Patent: July 31, 2012
    Assignee: The MathWorks, Inc.
    Inventor: Robert O. Aberg
  • Patent number: 8230386
    Abstract: 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: Grant
    Filed: August 23, 2007
    Date of Patent: July 24, 2012
    Assignee: Microsoft Corporation
    Inventors: Igor Sedukhin, Gueorgui Bonov Chkodrov, Amol Sudhakar Kulkarni, Mariusz Gerard Borsa, Haoran Andy Wu, Daniel Eshner, Gilles C. J. A. Zunino
  • Patent number: 8225271
    Abstract: 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: Grant
    Filed: November 6, 2008
    Date of Patent: July 17, 2012
    Assignee: Invensys Systems, Inc.
    Inventors: Keith Eldridge, Brian Mackay, Mark Johnson, Scott Volk, Kenneth A. Burke, Paul Meskonis, Robert Hall, Steven Dardinski
  • Patent number: 8225277
    Abstract: 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: Grant
    Filed: April 25, 2010
    Date of Patent: July 17, 2012
    Inventor: Ted James Biggerstaff
  • Patent number: 8225276
    Abstract: 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: Grant
    Filed: February 10, 2009
    Date of Patent: July 17, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Yang Feng, Peter Szpak, Vijay Raghavan, Jan Sjodin
  • Publication number: 20120180025
    Abstract: 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: Application
    Filed: July 5, 2011
    Publication date: July 12, 2012
    Applicant: THE MATHWORKS, INC.
    Inventor: Peter Hartwell WEBB
  • Patent number: 8219380
    Abstract: 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: Grant
    Filed: February 10, 2009
    Date of Patent: July 10, 2012
    Assignee: Adobe Systems Incorporated
    Inventor: Basil Hosmer
  • Publication number: 20120151437
    Abstract: 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: Application
    Filed: December 7, 2011
    Publication date: June 14, 2012
    Applicant: 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: 8201154
    Abstract: 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: Grant
    Filed: February 4, 2005
    Date of Patent: June 12, 2012
    Assignee: THOMSON Licensing S.A.
    Inventors: Hongtao Liao, Rui Liang Yang
  • Patent number: 8196098
    Abstract: 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: Grant
    Filed: January 3, 2006
    Date of Patent: June 5, 2012
    Assignee: International Business Machines Corporation
    Inventors: Scott D. Hicks, James A. Martin, Jr.
  • Patent number: 8196092
    Abstract: 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: Grant
    Filed: June 14, 2007
    Date of Patent: June 5, 2012
    Assignee: Verizon Patent and Licensing Inc.
    Inventors: Parind Poi, Prashant Kamath
  • Patent number: 8191040
    Abstract: 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: Grant
    Filed: January 12, 2007
    Date of Patent: May 29, 2012
    Assignee: Microsoft Corporation
    Inventors: 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: 8191051
    Abstract: 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: Grant
    Filed: June 26, 2006
    Date of Patent: May 29, 2012
    Assignee: Siemens Industry, Inc.
    Inventors: Osman Ahmed, Pornsak Songkakul
  • Patent number: 8176469
    Abstract: 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: Grant
    Filed: May 3, 2007
    Date of Patent: May 8, 2012
    Assignee: Oracle International Corporation
    Inventor: Terry Leonard Lucas
  • Patent number: 8171045
    Abstract: 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: Grant
    Filed: July 31, 2008
    Date of Patent: May 1, 2012
    Assignee: XSEVO Systems, Inc.
    Inventor: Dustin Kurt Adler
  • Patent number: 8171453
    Abstract: 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: Grant
    Filed: May 21, 2007
    Date of Patent: May 1, 2012
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Amanda Silver, Paul A. Vick
  • Patent number: 8166456
    Abstract: 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: Grant
    Filed: November 26, 2008
    Date of Patent: April 24, 2012
    Assignee: The MathWorks, Inc.
    Inventor: Charles J. Devane
  • Patent number: 8165865
    Abstract: 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: Grant
    Filed: January 18, 2007
    Date of Patent: April 24, 2012
    Assignee: Mentor Graphics Corporation
    Inventors: Daniel Robin Parker, Christopher Jones, Jason Sotiris Polychronopoulos
  • Patent number: 8161454
    Abstract: 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: Grant
    Filed: January 22, 2007
    Date of Patent: April 17, 2012
    Assignee: Ford Motor Company
    Inventors: Hari Srinivasan, David Leslie Watson, Matthew Whitaker, Emily Reyna
  • Patent number: 8156472
    Abstract: 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: Grant
    Filed: March 30, 2004
    Date of Patent: April 10, 2012
    Assignee: Microsoft Corporation
    Inventors: L. Gregory Meredith, Allen L. Brown, Jr., David Richter, George Moore
  • Patent number: 8156471
    Abstract: 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: Grant
    Filed: November 9, 2001
    Date of Patent: April 10, 2012
    Assignee: Oracle International Corporation
    Inventors: Adam Bosworth, David Bau, III, Kenneth Eric Vasilik
  • Patent number: 8146058
    Abstract: 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: Grant
    Filed: December 15, 2006
    Date of Patent: March 27, 2012
    Assignee: Infosys Limited
    Inventors: Santonu Sarkar, Girish Maskeri Rama, Nagaraja Nanjegowda Siddaramappa, Avinash C. Kak, Shubha Ramachandran
  • Publication number: 20120072886
    Abstract: 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: Application
    Filed: September 16, 2010
    Publication date: March 22, 2012
    Applicant: STARVIEW TECHNOLOGY, INC.
    Inventors: Francis G. McCabe, Kenneth R. MacKenzie
  • Patent number: 8141037
    Abstract: 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: Grant
    Filed: January 25, 2006
    Date of Patent: March 20, 2012
    Assignee: Microsoft Corporation
    Inventor: Gorti D. Durgaprasad
  • Patent number: 8140850
    Abstract: 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: Grant
    Filed: December 8, 2008
    Date of Patent: March 20, 2012
    Assignee: Intertrust Technologies Corporation
    Inventors: 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: 8141034
    Abstract: 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: Grant
    Filed: August 6, 2007
    Date of Patent: March 20, 2012
    Assignee: The MathWorks, Inc.
    Inventor: David A. Foti
  • Patent number: 8135757
    Abstract: 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: Grant
    Filed: June 10, 2009
    Date of Patent: March 13, 2012
    Assignee: International Business Machines Corporation
    Inventor: Gary Isaak Mazo
  • Patent number: 8132152
    Abstract: 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: Grant
    Filed: June 8, 2007
    Date of Patent: March 6, 2012
    Assignee: Apple Inc.
    Inventor: Benoit Marchant
  • Patent number: 8127269
    Abstract: 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: Grant
    Filed: August 4, 2005
    Date of Patent: February 28, 2012
    Assignee: International Business Machines Corporation
    Inventors: Jie Hu, Raymond L. Kong, Curtis Miles
  • Patent number: 8127283
    Abstract: 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: Grant
    Filed: September 5, 2007
    Date of Patent: February 28, 2012
    Assignee: Intel Corporation
    Inventors: Yuriy E. Sheynin, Alexey Y. Syschikov
  • Patent number: 8122431
    Abstract: 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: Grant
    Filed: October 11, 2005
    Date of Patent: February 21, 2012
    Assignee: Progilys
    Inventors: Michel De Becdelievre, Hervé Morand
  • Patent number: 8122429
    Abstract: 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: Grant
    Filed: April 17, 2008
    Date of Patent: February 21, 2012
    Assignee: International Business Machines Corporation
    Inventors: Mark S. Ramsey, David A. Selby
  • Patent number: 8121976
    Abstract: 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: Grant
    Filed: May 12, 2009
    Date of Patent: February 21, 2012
    Assignee: International Business Machines Corporation
    Inventors: Suman K. Kalia, Sheng Fang, John H. Green
  • Patent number: 8122342
    Abstract: 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: Grant
    Filed: March 28, 2008
    Date of Patent: February 21, 2012
    Assignee: International Business Machines Corporation
    Inventors: Christopher J. Karle, Corinne M. Ryan, Richard S. Schwerdtfeger
  • Patent number: 8112740
    Abstract: 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: Grant
    Filed: June 16, 2008
    Date of Patent: February 7, 2012
    Assignee: Microsoft Corporation
    Inventors: Erik Meijer, Wolfram Schulte, Barend H. Venter, Chia-Hsun Chen, Christopher J. Lovett, Matthew J. Warren
  • Patent number: 8112671
    Abstract: 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: Grant
    Filed: February 27, 2007
    Date of Patent: February 7, 2012
    Assignee: AT&T Intellectual Property II, L.P.
    Inventors: Giuseppe Di Fabbrizio, Nils Klarlund
  • Patent number: 8108834
    Abstract: 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: Grant
    Filed: March 21, 2007
    Date of Patent: January 31, 2012
    Assignee: International Business Machines Corporation
    Inventors: David Oren, Gal Shachor