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: 9317495Abstract: 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: GrantFiled: September 15, 2012Date of Patent: April 19, 2016Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Dan Y. Khen, Charles D. Ellis, Liviu Asnash, Eran Megiddo, Ira Levin, Simon Peyton-Jones
-
Patent number: 8578399Abstract: 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: GrantFiled: July 30, 2004Date of Patent: November 5, 2013Assignee: Microsoft CorporationInventors: Dan Y. Khen, Charles D. Ellis, Liviu Asnash, Eran Megiddo, Ira Levin, Simon Peyton-Jones
-
Publication number: 20130013995Abstract: 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: ApplicationFiled: September 15, 2012Publication date: January 10, 2013Applicant: Microsoft CorporationInventors: Dan Y. Khen, Charles D. Ellis, Liviu Asnash, Eran Megiddo, Ira Levin, Simon Peyton-Jones
-
Patent number: 7716249Abstract: 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: GrantFiled: September 16, 2005Date of Patent: May 11, 2010Assignee: Microsoft CorporationInventors: Tim L. Harris, Simon Peyton-Jones, Jonathan R. Howell, John R. Douceur
-
Patent number: 7698287Abstract: 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: GrantFiled: September 30, 2004Date of Patent: April 13, 2010Assignee: Microsoft CorporationInventors: 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: 20090235154Abstract: 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: ApplicationFiled: July 30, 2004Publication date: September 17, 2009Applicant: Microsoft CorporationInventors: Dan Y. Khen, Charles D. Ellis, Liviu Asnash, Eran Megiddo, Ira Levin, Simon Peyton-Jones
-
Patent number: 7415481Abstract: 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: GrantFiled: September 30, 2004Date of Patent: August 19, 2008Assignee: Microsoft CorporationInventors: 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: 7266763Abstract: 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: GrantFiled: November 26, 2002Date of Patent: September 4, 2007Assignee: Microsoft CorporationInventors: Simon Peyton-Jones, Alan Frank Blackwell, Margaret Myers Burnett
-
Publication number: 20070073693Abstract: 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: ApplicationFiled: September 16, 2005Publication date: March 29, 2007Applicant: Microsoft CorporationInventors: Tim Harris, Simon Peyton-Jones, Jonathan Howell, John Douceur
-
Publication number: 20060075328Abstract: 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: ApplicationFiled: September 30, 2004Publication date: April 6, 2006Applicant: Microsoft CorporationInventors: Andrew Becker, Charles Ellis, Joseph Chirilov, Juha Niemisto, Matthew Androski, Robert Collie, Robert Hawking, Simon Peyton-Jones
-
Publication number: 20060069696Abstract: 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: ApplicationFiled: September 30, 2004Publication date: March 30, 2006Applicant: Microsoft CorporationInventors: Andrew Becker, Charles Ellis, Joseph Chirilov, Juha Niemisto, Matthew Androski, Robert Collie, Robert Hawking, Simon Peyton-Jones, Weide Zhong
-
Publication number: 20040103366Abstract: 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: ApplicationFiled: November 26, 2002Publication date: May 27, 2004Applicant: Microsoft CorporationInventors: Simon Peyton-Jones, Alan Frank Blackwell, Margaret Myers Burnett