Patents by Inventor Simon Peyton-Jones

Simon Peyton-Jones 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: 9317495
    Abstract: A method, system, and apparatus are provided for exposing and calling workbook models via remote function calls. According to the system, a client computer executes a spreadsheet program for creating a workbook model. The workbook model may be published to a server computer along with data defining a function name and the cells that should be used as inputs and outputs to the model. The system also includes a server computer that receives and responds to remote function calls directed toward workbook functions. When a function call is received at the server computer for a workbook function, the server computer populates the cells in the workbook identified as inputs with input parameters received with the function call and recalculates the workbook. The data contained in the output cells is then returned as a reply to the remote function call.
    Type: Grant
    Filed: September 15, 2012
    Date of Patent: April 19, 2016
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Dan Y. Khen, Charles D. Ellis, Liviu Asnash, Eran Megiddo, Ira Levin, Simon Peyton-Jones
  • Patent number: 8578399
    Abstract: A method, system, and apparatus are provided for exposing and calling workbook models via remote function calls. According to the system, a client computer executes a spreadsheet program for creating a workbook model. The workbook model may be published to a server computer along with data defining a function name and the cells that should be used as inputs and outputs to the model. The system also includes a server computer that receives and responds to remote function calls directed toward workbook functions. When a function call is received at the server computer for a workbook function, the server computer populates the cells in the workbook identified as inputs with input parameters received with the function call and recalculates the workbook. The data contained in the output cells is then returned as a reply to the remote function call.
    Type: Grant
    Filed: July 30, 2004
    Date of Patent: November 5, 2013
    Assignee: Microsoft Corporation
    Inventors: Dan Y. Khen, Charles D. Ellis, Liviu Asnash, Eran Megiddo, Ira Levin, Simon Peyton-Jones
  • Publication number: 20130013995
    Abstract: A method, system, and apparatus are provided for exposing and calling workbook models via remote function calls. According to the system, a client computer executes a spreadsheet program for creating a workbook model. The workbook model may be published to a server computer along with data defining a function name and the cells that should be used as inputs and outputs to the model. The system also includes a server computer that receives and responds to remote function calls directed toward workbook functions. When a function call is received at the server computer for a workbook function, the server computer populates the cells in the workbook identified as inputs with input parameters received with the function call and recalculates the workbook. The data contained in the output cells is then returned as a reply to the remote function call.
    Type: Application
    Filed: September 15, 2012
    Publication date: January 10, 2013
    Applicant: Microsoft Corporation
    Inventors: Dan Y. Khen, Charles D. Ellis, Liviu Asnash, Eran Megiddo, Ira Levin, Simon Peyton-Jones
  • Patent number: 7716249
    Abstract: The described implementations relate to efficient scheduling of transactions and tasks. A memory location, address, or variable previously accessed by a blocked entity is observed periodically to determine an appropriate time to wake and retry the blocked entity. If the previous accessed memory location, address or variable changes state, a scheduler wakes the blocked entity and the blocked entity retries processing. A doubly-indexed data structure of blocked entities and memory locations associated with the blocked entities may be used to efficiently determine when a retrying execution would be profitable.
    Type: Grant
    Filed: September 16, 2005
    Date of Patent: May 11, 2010
    Assignee: Microsoft Corporation
    Inventors: Tim L. Harris, Simon Peyton-Jones, Jonathan R. Howell, John R. Douceur
  • Patent number: 7698287
    Abstract: The present invention provides several database formulas that can manipulate large sets of data. Each database formula is customizable and repeatable without user intervention. Thus, users may enter numerous options that can cover the user's desire for data output in certain forms or formats, select a set of input data, and consistently receive a set of output data. In some embodiments, the user may refer to the set of data semantically instead of specifying a range of cells to use in the database formula. Referring to the data semantically allows the database formulas to adjust to changes in the range of cells new data may occupy.
    Type: Grant
    Filed: September 30, 2004
    Date of Patent: April 13, 2010
    Assignee: Microsoft Corporation
    Inventors: Andrew J. Becker, Charles D. Ellis, Joseph M. Chirilov, Juha P. Niemisto, Matthew J. Androski, Robert C. Collie, Robert G. Hawking, Simon Peyton-Jones
  • Publication number: 20090235154
    Abstract: A method, system, and apparatus are provided for exposing and calling workbook models via remote function calls. According to the system, a client computer executes a spreadsheet program for creating a workbook model. The workbook model may be published to a server computer along with data defining a function name and the cells that should be used as inputs and outputs to the model. The system also includes a server computer that receives and responds to remote function calls directed toward workbook functions. When a function call is received at the server computer for a workbook function, the server computer populates the cells in the workbook identified as inputs with input parameters received with the function call and recalculates the workbook. The data contained in the output cells is then returned as a reply to the remote function call.
    Type: Application
    Filed: July 30, 2004
    Publication date: September 17, 2009
    Applicant: Microsoft Corporation
    Inventors: Dan Y. Khen, Charles D. Ellis, Liviu Asnash, Eran Megiddo, Ira Levin, Simon Peyton-Jones
  • Patent number: 7415481
    Abstract: The present invention relates to a new type of structured name within a spreadsheet program that allows users to refer to tables, columns of data within tables, headers of tables, totals from tables, PivotTables®, and portions of PivotTable® data by the data's headers. Embodiments of the present invention comprise a method for referring to a set of data that comprises receiving one or more semantic designations, wherein the one or more semantic designations name a set of context information that describes one or more items of data in a data structure, automatically creating a structural reference, and associating the context information with the structural reference.
    Type: Grant
    Filed: September 30, 2004
    Date of Patent: August 19, 2008
    Assignee: Microsoft Corporation
    Inventors: Andrew J. Becker, Charles D. Ellis, Joseph M. Chirilov, Juha P. Niemisto, Matthew J. Androski, Robert C. Collie, Robert G. Hawking, Simon Peyton-Jones, Weide Zhong
  • Patent number: 7266763
    Abstract: A method of creating a user-defined function in a spreadsheet application is provided. The user-defined function is callable by a calling label in the spreadsheet application. A formula is received in the spreadsheet application. The formula is transferred to a function sheet of the spreadsheet application to define at least a portion of a function body. An interface is defined by identifying the calling label, an input parameter and a result parameter of the user-defined function. The function body operates on an argument corresponding to the input parameter and generates a result corresponding to the result parameter. The interface is stored in association with the function body to create the user-defined function.
    Type: Grant
    Filed: November 26, 2002
    Date of Patent: September 4, 2007
    Assignee: Microsoft Corporation
    Inventors: Simon Peyton-Jones, Alan Frank Blackwell, Margaret Myers Burnett
  • Publication number: 20070073693
    Abstract: The described implementations relate to efficient scheduling of transactions and tasks. A memory location, address, or variable previously accessed by a blocked entity is observed periodically to determine an appropriate time to wake and retry the blocked entity. If the previous accessed memory location, address or variable changes state, a scheduler wakes the blocked entity and the blocked entity retries processing. A doubly-indexed data structure of blocked entities and memory locations associated with the blocked entities may be used to efficiently determine when a retrying execution would be profitable.
    Type: Application
    Filed: September 16, 2005
    Publication date: March 29, 2007
    Applicant: Microsoft Corporation
    Inventors: Tim Harris, Simon Peyton-Jones, Jonathan Howell, John Douceur
  • Publication number: 20060075328
    Abstract: The present invention provides several database formulas that can manipulate large sets of data. Each database formula is customizable and repeatable without user intervention. Thus, users may enter numerous options that can cover the user's desire for data output in certain forms or formats, select a set of input data, and consistently receive a set of output data. In some embodiments, the user may refer to the set of data semantically instead of specifying a range of cells to use in the database formula. Referring to the data semantically allows the database formulas to adjust to changes in the range of cells new data may occupy.
    Type: Application
    Filed: September 30, 2004
    Publication date: April 6, 2006
    Applicant: Microsoft Corporation
    Inventors: Andrew Becker, Charles Ellis, Joseph Chirilov, Juha Niemisto, Matthew Androski, Robert Collie, Robert Hawking, Simon Peyton-Jones
  • Publication number: 20060069696
    Abstract: The present invention relates to a new type of structured name within a spreadsheet program that allows users to refer to tables, columns of data within tables, headers of tables, totals from tables, PivotTables®, and portions of PivotTable® data by the data's headers. Embodiments of the present invention comprise a method for referring to a set of data that comprises receiving one or more semantic designations, wherein the one or more semantic designations name a set of context information that describes one or more items of data in a data structure, automatically creating a structural reference, and associating the context information with the structural reference.
    Type: Application
    Filed: September 30, 2004
    Publication date: March 30, 2006
    Applicant: Microsoft Corporation
    Inventors: Andrew Becker, Charles Ellis, Joseph Chirilov, Juha Niemisto, Matthew Androski, Robert Collie, Robert Hawking, Simon Peyton-Jones, Weide Zhong
  • Publication number: 20040103366
    Abstract: User-defined function capabilities in a spreadsheet application allow users to create new named functions that are defined using the spreadsheet formula paradigm. A user may define spreadsheet functions from formulae entered in a worksheet or function sheet of a spreadsheet application. The formula interface is well known to spreadsheet users; therefore, expanding the formula feature to provide encapsulated functions that can be imported, exported, customized, and compiled supplies new power and flexibility to users who do not wish to learn a programming language. Furthermore, the user-defined functions in spreadsheets represent vectors and matrices as “first class” values, similar to Boolean values, numbers, and strings.
    Type: Application
    Filed: November 26, 2002
    Publication date: May 27, 2004
    Applicant: Microsoft Corporation
    Inventors: Simon Peyton-Jones, Alan Frank Blackwell, Margaret Myers Burnett