Patents by Inventor Luca Bolognese

Luca Bolognese has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7627594
    Abstract: The subject disclosure pertains to systems and methods for supporting null capabilities for general purpose programming languages. Low level, runtime support for a nullable type is provided to ensure consistency and coherency. An execution component restricts support of the nullable type to programming language types that lack a null capability. The execution component may also provide support for conversion between the nullable type and a reference type.
    Type: Grant
    Filed: August 29, 2005
    Date of Patent: December 1, 2009
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Anders Hejlsberg, Dinesh Chandrakant Kulkarni, Vance P. Morrison, John Joseph Duffy, Christopher W. Brumme, Matthew J. Warren, Luca Bolognese, Peter A. Hallam, Gary S. Katzenberger
  • Patent number: 7581231
    Abstract: An application program interface (API) provides a set of functions for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Grant
    Filed: February 28, 2002
    Date of Patent: August 25, 2009
    Assignee: Microsoft Corporation
    Inventors: Adam W. Smith, Anthony J. Moore, Anders Hejlsberg, Brian A. LaMacchia, Blaine J. Dockter, Brian M. Grunkemeyer, Brian K. Pepin, Caleb L. Doise, Christopher W. Brumme, Chad W. Royal, Christopher L. Anderson, Corina E. Feuerstein, Craig T. Sinclair, Daniel Dedu-Constantin, Daniel Takacs, David S. Ebbo, David S. Mortenson, Erik B. Christensen, Erik B. Olson, Fabio A. Yeon, Giovanni M. Della-Libera, Gopala Krishna R. Kakivaya, Gregory D. Fee, Hany E. Ramadan, Jayanth V. Rajan, Jeffrey M. Cooperstein, Jonathan C. Hawkins, James H. Hogg, Joe D. Long, John I. McConnell, Jesus Ruiz-Scougall, James S. Miller, Julie D. Bennett, Jun Fang, Krzysztof J. Cwalina, Keith W. Ballinger, Lance E. Olson, Loren M. Kohnfelder, Luca Bolognese, Manu Vasandani, Mark T. Anders, Mark P. Ashton, Mark A. Boulter, Mark W. Fussell, Michael M. Magruder, Manish S. Prabhu, Neetu Rajpal, Nikhil Kothari, Nithyalakshmi Sampathkumar, Nicholas M. Kramer, Omri Gazitt, Radu Rares Palanca, Raja Krishnaswamy, Robert M. Howard, Ramasamy Krishnaswamy, Shawn P. Burke, Scott D. Guthrie, Sean E. Trowbridge, Seth M. Demsey, Shajan Dasan, Subhag P. Oak, Sreeram Nivarthi, Stefan H. Pharies, Suzanne M. Cook, Susan M. Warren, Tarun Anand, Travis J. Muhlestein, William A. Adams, Yan Leshinsky, Yann E. Christensen, Yung-shin Lin, Stephen J. Millet, Joseph Roxe, Alan Boshier, Henry L. Sanders, David Bau
  • Patent number: 7275087
    Abstract: The present invention relates to a system and methodology to facilitate data communications and data management between network entities operating in accordance with various data structures and operating environments. A managed class of application programming interfaces (API) are provided that support data communications between remote/local locations employing a first data structure and a second location supporting a second data structure (e.g., API for NET languages to access SQL Server via XML views). The managed class and associated APIs provide data transformations between such structures to facilitate communications and data management among various locations and architectures. In addition, the managed class and APIs facilitate operations between disparate object systems such as between managed and unmanaged object systems via interface support of a wrapper and associated marshalling technologies to bridge communications between such systems.
    Type: Grant
    Filed: June 19, 2002
    Date of Patent: September 25, 2007
    Assignee: Microsoft Corporation
    Inventors: Alexander Vaschillo, Luca Bolognese, Todd F. Pfleiger, Andrew James Conrad, Srinivasa Rao Burugapalli, Christopher Allen Suver
  • Patent number: 7246114
    Abstract: A query string expressed in terms of an object model is received. The query includes a first instruction identifying a type of objects and a second instruction identifying selected objects of the identified type to be retrieved. The query may also include one or more statements identifying additional associated types to be retrieved. The query is translated into a database specific language, and a database is queried with the translated query. Query results are received from the database and are translated into an object model. The object model may be displayed on a display device.
    Type: Grant
    Filed: October 21, 2002
    Date of Patent: July 17, 2007
    Assignee: Microsoft Corporation
    Inventors: Luca Bolognese, Matt Warren, Vincenzo Lombardi
  • Publication number: 20070044083
    Abstract: The subject disclosure pertains to lambda expressions and the employment of such expressions in imperative and/or object-oriented computer programming languages. Lambda expressions can be employed in conjunction with methods (e.g., arguments, assignment . . . ) to provide a more concise and functional manner of code specification. Further, lambda expressions can participate in type inference and checking as well as overload resolution, among other things.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 22, 2007
    Applicant: Microsoft Corporation
    Inventors: Henricus Meijer, Anders Hejlsberg, Donald Box, Matthew Warren, Luca Bolognese, Gary Katzenberger, Peter Hallam, Dinesh Kulkarni
  • Publication number: 20070027907
    Abstract: The subject disclosure pertains to code generation patterns for use in object relational mapping. The code patterns may be used to manage bidirectional relationships and ensure consistency. The code patterns may support on-demand or deferred loading of relational data. Change detection and tracking are also provided. In addition, a default member modifier allows developers to override tool generated source code without directly modifying the generated source code.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Dinesh Kulkarni, Anders Hejlsberg, Matthew Warren, Luca Bolognese, Henricus Meijer, Peter Hallam
  • Publication number: 20070028222
    Abstract: This disclosure concerns various manners and mechanisms to capture and interact with free/outer variables or parameters. The capture of such variables, among other things, enables the code to become mobile to facilitate transmission to and execution by various systems or sub-systems. Transmission can be accomplished, for instance, by generation of code objects or data packets that include substituted values of the free variables and/or references to the location of the values.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Henricus Meijer, Anders Hejlsberg, Matthew Warren, Luca Bolognese, Peter Hallam, Gary Katzenberger, Dinesh Kulkarni
  • Publication number: 20070027862
    Abstract: Anonymous types for a programming language. Non-denotable anonymous types are types that a compiler generates on behalf of a programmer and can then be used as nominal types. Insofar as anonymous types do not have a name, they can be used only inside a method in which they are created. Additionally, an anonymous type cannot be exposed in any way outside of the method. Syntax to create an anonymous type is useful when employed with a Select operator to generate a result with a particular shape, without the need of having a regular type for it. Anonymous types are expressible such that an expression of that type can be written. Translation of an anonymous type by a compiler generates a nominal class that implements Equals and GetHashCode methods. There is equivalence of anonymous types within the same method, and conversion of an unrealized structural type into structurally compatible nominal type.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Henricus Meijer, Anders Hejlsberg, Matthew Warren, Luca Bolognese, Peter Hallam, Gary Katzenberger, Dinesh Kulkarni
  • Publication number: 20070028212
    Abstract: Syntax for creating object instances utilizing expressions instead of statements. A syntax component facilitates extension of conventional object-creation-expression syntax. An initializer component provides for initialization of a newly-created entity via object and collection initializers. The initializer component provides initialization of the newly-created entity utilizing an object initializer where the object initializer specifies values for one or more fields or properties of the newly-created entity which is an object, and consists of a sequence of member initializers enclosed by tokens and separated by commas. The initializer component can also provides initialization of the newly-created entity utilizing a collection initializer when the underlying object implements a certain interface or implements a certain pattern. An overloading constructor can be called as part of the initialization process.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Henricus Meijer, Anders Hejlsberg, Matthew Warren, Luca Bolognese, Peter Hallam, Gary Katzenberger, Dinesh Kulkarni
  • Publication number: 20070027905
    Abstract: A system for converting a query from a representation in a first computing language to an equivalent query in a representation in a second computing language that is different from the first computing language, comprises a query module that accepts a query in an object-oriented representation for translation to an equivalent query in a target query language. The system also includes a translation module that uses the object-oriented representation of the query to create a first version of the query in an idealized version of a target query language and uses the first version of the query to create a second version of the query in an implemented version of the target query language. Methods of using the system are also provided.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Matthew Warren, Anders Hejlsberg, Luca Bolognese, Dinesh Kulkarni, Henricus Meijer, Peter Hallam, Jomo Fisher
  • Publication number: 20070028210
    Abstract: A program execution engine that facilitates generic type variance verification is provided. The execution engine receives a program executable in the form of intermediate language (IL). The program executable can be based on code that includes expression(s) with generic type(s) which have been identified as requiring variance verification (e.g., covariance and/or contra-variance). The execution engine includes a variance verification component that dynamically determines whether value(s) associated with the generic type(s) identified as requiring variance verification comply with the particular variance verification requirement. The variance verification component can provide error information (e.g., throw an exception), if the specified variance is not safely compliant Variance verification can be based on static checking which places the burden on a source language compiler to emit the run-time checks in intermediate language (IL), if run-time checked variance is required.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Erik Meijer, Anders Hejlsberg, Matthew Warren, Luca Bolognese, Peter Hallam, Gary Katzenberger
  • Publication number: 20070027906
    Abstract: Systems and methods that enable consistent navigation (for a database and memory environment) in object relational mapping. This typically ensures fidelity of object graph via restrictions on collections of persistent objects (e.g., entity sets, entity refs . . . ). Moreover, a tracking component can detect changes as they occur, and only a copy of the objects that have changed can be created, to optimize operation.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Henricus Meijer, Anders Hejlsberg, Dinesh Kulkarni, Luca Bolognese, Matthew Warren, Peter Hallam
  • Publication number: 20070028209
    Abstract: Architecture that extends existing types including constructed and sealed types using extension methods. Extension methods are static methods that can be invoked using instance method syntax. Extension methods are declared by specifying the keyword “this” as a modifier on the first parameter of the methods. Extension methods have all the capabilities of regular static methods. In addition, once imported, extension methods can be invoked using instance method syntax. Also disclosed are rules for importing extension methods, and extension method invocations. Extension methods are imported through using-namespace-directives. In addition to importing the types contained in a namespace, a using-namespace-directive imports all extension methods in all static classes in the namespace. In effect, imported extension methods appear as additional methods on the types that are given by their first parameter and have lower precedence than regular instance methods.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Henricus Meijer, Anders Hejlsberg, Matthew Warren, Luca Bolognese, Peter Hallam, Gary Katzenberger, Dinesh Kulkarni
  • Publication number: 20070027849
    Abstract: A general-purpose programming language having language extensions for strongly typed, compile-time checked query and set operations that can be applied to arbitrary data structures, be they object-relational (O-R) mappings or just regular objects. As is appropriate for a general purpose programming language, the extensions do not mandate a particular object-relational layer; rather, they are introduced as abstractions that can be implemented in multiple environments. Accordingly, there is provided a system that facilitates data querying in accordance with an innovative aspect. The system include a program component that provides embedded query and set operations in a programming language, and an application component that facilitates application of the query and set operations over a data structure of data. The data can be any kind of data such as that found in a database, a document (e.g., XML), and data sources in a programming language (e.g., C#), for example.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Henricus Meijer, Anders Hejlsberg, Matthew Warren, Luca Bolognese, Peter Hallam, Gary Katzenberger, Dinesh Kulkarni
  • Publication number: 20070028223
    Abstract: A compiler supporting a language in which selected semantic objects are represented as data objects. The data objects may be used in multiple ways to expand the capabilities of the programming language. Data objects may be passed to applications and used to create executable instructions for that application. In this way, instructions written in the native language of the compiler may be used to control applications that accept programs in a language inconsistent with the native language of the compiler. The syntax checking and variable binding capabilities of the compiler may be used for those instructions that will be executed by an application separate from the object code generated by the compiler. The semantic objects represented as data objects may be selected based on express operations included in the source code or may be based on implicit type conversion.
    Type: Application
    Filed: July 29, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Henricus Johannes Meijer, Anders Hejlsberg, Matthew Warren, Dinesh Kulkarni, Luca Bolognese, Peter Hallam, Gary Katzenberger, Donald Box
  • Publication number: 20060184567
    Abstract: The present invention relates to a system and methodology to facilitate XML data communications and processing. A diffgram data structure is provided that includes one or more states of a plurality of data records. The state information can be determined by examining one or more data sources for differences from one or more reference data sources. If differences are detected between the data sources, the diffgram can be constructed in an XML compatible format with both previous state indications and current state indications that describes the state differences between the data sources. Error information and/or other administrative information or codes can also be provided to facilitate database management and/or processing.
    Type: Application
    Filed: April 24, 2006
    Publication date: August 17, 2006
    Applicant: Microsoft Corporation
    Inventors: Chia-Hsun Chen, Luca Bolognese, Vincenzo Lombardi, Omri Gazitt, Michael Pizzo, Jason Zhengnan Zhu
  • Patent number: 7035866
    Abstract: The present invention relates to a system and methodology to facilitate XML data communications and processing. A diffgram data structure is provided that includes one or more states of a plurality of data records. The state information can be determined by examining one or more data sources for differences from one or more reference data sources. If differences are detected between the data sources, the diffgram can be constructed in an XML compatible format with both previous state indications and current state indications that describes the state differences between the data sources. Error information and/or other administrative information or codes can also be provided to facilitate database management and/or processing.
    Type: Grant
    Filed: October 9, 2001
    Date of Patent: April 25, 2006
    Assignee: Microsoft Corporation
    Inventors: Chia-Hsun Chen, Luca Bolognese, Vincenzo Lombardi, Omri Gazitt, Michael J. Pizzo, Jason Zhengnan Zhu
  • Publication number: 20060053138
    Abstract: The subject disclosure pertains to systems and methods for supporting null capabilities for general purpose programming languages. Low level, runtime support for a nullable type is provided to ensure consistency and coherency. An execution component restricts support of the nullable type to programming language types that lack a null capability. The execution component may also provide support for conversion between the nullable type and a reference type.
    Type: Application
    Filed: August 29, 2005
    Publication date: March 9, 2006
    Applicant: Microsoft Corporation
    Inventors: Henricus Meijer, Anders Hejisberg, Dinesh Kulkarni, Vance Morrison, John Duffy, Christopher Brumme, Matthew Warren, Luca Bolognese, Peter Hallam, Gary Katzenberger
  • Publication number: 20050216501
    Abstract: The present invention relates to a system and methodology to facilitated data object persistence. An object schema is utilized to provide metadata for types in addition to what is provided by the type system for an underlying programming language. This metadata is then utilized by the system to translate data to and from user objects during a materialization or persistence process. The object schema provides information external to programming logic and type definitions. Consequently, the object schema can be deployed independent of an application thereby allowing the persistence storage of user objects to change without force the user to recompile and deploy application code.
    Type: Application
    Filed: March 23, 2004
    Publication date: September 29, 2005
    Inventors: Ilker Cengiz, Luca Bolognese, Jason Zhu, Dempsey Swan, David Sceppa, Andrew Conrad
  • Patent number: 6920461
    Abstract: An application program interface (API) provides a set of functions for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Grant
    Filed: July 10, 2001
    Date of Patent: July 19, 2005
    Assignee: Microsoft Corp.
    Inventors: Anders Hejlsberg, Blaine J. Dockter, Dax H. Hawkins, Giovanni M. Della-Libera, Jun Fang, Luca Bolognese, Mark P. Ashton, Mark A. Boulter, Omri Gazitt