Patents by Inventor L. Gregory Meredith
L. Gregory Meredith 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: 8156472Abstract: A reflective process algebra called the ?-calculus facilitates the serialization of processes at the level of the reflective process algebra. The reflective process algebra because of its reflective properties, can be used on computing systems with finite resources. The reflective process calculus can be made to be sensitive to resources, such as memory and bandwidth, hence facilitating its use as a programming language at the machine level. The reflective process calculus causes the dual nature of a computation entity to be exposed. A name can be caused to become a process and a process can be caused to become a name.Type: GrantFiled: March 30, 2004Date of Patent: April 10, 2012Assignee: Microsoft CorporationInventors: L. Gregory Meredith, Allen L. Brown, Jr., David Richter, George Moore
-
Patent number: 7702749Abstract: The joining of Web services is accomplished via a virtual contract through the use of safeties. The joining of Web services heightens the safe interoperability of Web services to create greater functionality than each Web service alone can provide. Web services are joined for interoperability when the type of a port of one Web service is compatible with the type of another port of another Web service.Type: GrantFiled: January 7, 2003Date of Patent: April 20, 2010Assignee: Microsoft CorporationInventors: L. Gregory Meredith, Steve Bjorg, David Richter
-
Patent number: 7216335Abstract: A program includes expressions written in a process-based language. A process kernel executes sets of operational semantics rules governing the meanings of the expressions in the program. A first expression is parsed. The first expression describes that a process is a choice of two processes. The first process of the two processes expresses that a first query is submitted to a queue, after which the first process continues with a first set of actions. The second process of the two processes expresses that a second query is submitted to the queue, after which the second process continues with a second set of actions. The first expression reduces to a second expression. The second expression describes that a third query is submitted to the queue after which the first process runs in parallel with the second process if the third query is in canonical form.Type: GrantFiled: November 22, 2002Date of Patent: May 8, 2007Assignee: Microsoft CorporationInventors: L. Gregory Meredith, Steve Bjorg, David Richter
-
Patent number: 7117487Abstract: A program that includes expressions written in a process-based language for representing protocol-based applications as processes is disclosed. The process kernel executes a set of equational laws governing structural equivalence of expressions written in the process-based language. A first expression is parsed. The first expression describes that a query is being executed in parallel with a process. The query has a head, which is empty, and a body, which contains a first name being bound to a second name. The first expression is translated as structurally equivalent to a second expression. The second expression describes that the query is executed in parallel with the process if the query is in canonical form. Each occurrence of the first name in the process is replaceable with the second name.Type: GrantFiled: November 22, 2002Date of Patent: October 3, 2006Assignee: Microsoft CorporationInventors: L. Gregory Meredith, Steve Bjorg, David Richter
-
Patent number: 7055142Abstract: A program that includes expressions written in a process-based language for representing protocol-based applications as processes is disclosed. A process kernel executes the expressions in the program. The process kernel parses an expression to obtain syntactical elements that represent a queue, a set of queue delimiters, a query, a sequence delimiter, and other actions. The process kernel further translates the expression as a process whose first action is submitting the query as another process to the queue and after which the process continues with other actions. The query includes an organization scheme formed from a customizable, tag-based language that contains data and describes data.Type: GrantFiled: November 22, 2002Date of Patent: May 30, 2006Assignee: Microsoft CorporationInventors: L. Gregory Meredith, Steve Bjorg, David Richter
-
Publication number: 20040064529Abstract: The joining of Web services is accomplished via a virtual contract through the use of safeties. The joining of Web services heightens the safe interoperability of Web services to create greater functionality than each Web service alone can provide. Web services are joined for interoperability when the type of a port of one Web service is compatible with the type of another port of another Web service.Type: ApplicationFiled: January 7, 2003Publication date: April 1, 2004Applicant: Microsoft CorporationInventors: L. Gregory Meredith, Steve Bjorg, David Richter
-
Publication number: 20030212672Abstract: A program that includes expressions—written in a process-based language for representing protocol-based applications as processes is disclosed. The process kernel executes a set of equational laws governing structural equivalence of expressions written in the process-based language. A first expression is parsed. The first expression describes that a query is being executed in parallel with a process. The query has a head, which is empty, and a body, which contains a first name being bound to a second name. The first expression is translated as structurally equivalent to a second expression. The second expression describes that the query is executed in parallel with the process if the query is in canonical form. Each occurrence of the first name in the process is replaceable with the second name.Type: ApplicationFiled: November 22, 2002Publication date: November 13, 2003Applicant: Microsoft CorporationInventors: L. Gregory Meredith, Steve Bjorg, David Richter
-
Publication number: 20030212540Abstract: A program that includes expressions written in a process-based language for representing protocol-based applications as processes is disclosed. A process kernel executes the expressions in the program. The process kernel parses an expression to obtain syntactical elements that represent a queue, a set of queue delimiters, a query, a sequence delimiter, and other actions. The process kernel further translates the expression as a process whose first action is submitting the query as another process to the queue and after which the process continues with other actions. The query includes an organization scheme formed from a customizable, tag-based language that contains data and describes data.Type: ApplicationFiled: November 22, 2002Publication date: November 13, 2003Applicant: Microsoft CorporationInventors: L. Gregory Meredith, Steve Bjorg, David Richter
-
Publication number: 20030212761Abstract: A program that includes expressions written in a process-based language for representing protocol-based applications as processes is disclosed. A process kernel executes the expressions in the program. The expressions specify the interactions of processes by allowing a named organizational scheme of data written in a customizable, tag-based language to be exchanged as a process among processes. The named organizational scheme of data being bound to the scopes of processes that send and receive the named organizational scheme of data.Type: ApplicationFiled: November 22, 2002Publication date: November 13, 2003Applicant: Microsoft CorporationInventors: L. Gregory Meredith, Steve Bjorg, David Richter
-
Publication number: 20030212671Abstract: A program includes expressions written in a process-based language. A process kernel executes sets of operational semantics rules governing the meanings of the expressions in the program. A first expression is parsed. The first expression describes that a process is a choice of two processes. The first process of the two processes expresses that a first query is submitted to a queue, after which the first process continues with a first set of actions. The second process of the two processes expresses that a second query is submitted to the queue, after which the second process continues with a second set of actions. The first expression reduces to a second expression. The second expression describes that a third query is submitted to the queue after which the first process runs in parallel with the second process if the third query is in canonical form.Type: ApplicationFiled: November 22, 2002Publication date: November 13, 2003Applicant: Microsoft CorporationInventors: L. Gregory Meredith, Steve Bjorg, David Richter