Patents by Inventor John Wesley Dyer
John Wesley Dyer 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).
-
Publication number: 20170269913Abstract: Stateful computations are transformed into stateless computations automatically to facilitate scalability. Programmers can write code in a traditional imperative stateful style, which is subsequently transformed automatically into a stateless, state transformer monadic style. After the transformation, state is passed as an additional argument in a call and returns as a new state as an additional result.Type: ApplicationFiled: June 2, 2017Publication date: September 21, 2017Inventors: Henricus Johannes Maria MEIJER, John Wesley DYER
-
Publication number: 20170004025Abstract: An outer event stream can be modeled to represent duration for an event with an inner event stream. The inner event stream can be generated to represent duration of at least one event from the outer event stream. By modeling the outer event stream to include duration, coincidence between two or more events can be determined. More specifically, the modeling of the outer event stream enables use of operators to identify coincidence between events from event streams.Type: ApplicationFiled: September 14, 2016Publication date: January 5, 2017Applicant: Microsoft Technology Licensing, LLCInventors: John Wesley Dyer, Jeffrey Van Gogh, Henricus Johannes Maria Meijer, Bart De Smet, Colin Joseph Meek
-
Patent number: 9477537Abstract: An outer event stream can be modeled to represent duration for an event with an inner event stream. The inner event stream can be generated to represent duration of at least one event from the outer event stream. By modeling the outer event stream to include duration, coincidence between two or more events can be determined. More specifically, the modeling of the outer event stream enables use of operators to identify coincidence between events from event streams.Type: GrantFiled: December 13, 2010Date of Patent: October 25, 2016Assignee: Microsoft Technology Licensing, LLCInventors: John Wesley Dyer, Jeffrey Van Gogh, Henricus Johannes Maria Meijer, Bart De Smet, Colin Joseph Meek
-
Publication number: 20160216950Abstract: Stateful computations are transformed into stateless computations automatically to facilitate scalability. Programmers can write code in a traditional imperative stateful style, which is subsequently transformed automatically into a stateless, state transformer monadic style. After the transformation, state is passed as an additional argument in a call and returns as a new state as an additional result.Type: ApplicationFiled: April 4, 2016Publication date: July 28, 2016Applicant: Microsoft Technology Licensing, LLCInventors: Henricus Johannes Maria Meijer, John Wesley Dyer
-
Patent number: 9317255Abstract: Stateful computations are transformed into stateless computations automatically to facilitate scalability. Programmers can write code in a traditional imperative stateful style, which is subsequently transformed automatically into a stateless, state transformer monadic style. After the transformation, state is passed as an additional argument in a call and returns as a new state as an additional result.Type: GrantFiled: March 28, 2008Date of Patent: April 19, 2016Assignee: Microsoft Technology Licensing, LCCInventors: Henricus Johannes Maria Meijer, John Wesley Dyer
-
Patent number: 9015667Abstract: A fuzz testing system is described herein that represents event sources, channels, processors, and consumers as first-class entities in an application. Abstracting event-related entities allows fuzzing through injecting, dropping, reordering, and delaying events from within the application. This translates into the ability to localize the areas under test and perform fuzzing in a systematic manner. In some embodiments, the fuzz testing system tests concurrent asynchronous and event-based code, and can generate event streams based on a given statistical distribution. Representing events, event sources, processors, and sinks as first-class objects provides easy access to the event handlers and facilitates implementing fuzzing by introducing event processors between the source and the sink. Thus, the fuzz testing system improves the testability of applications and APIs with asynchronous behavior and provides a uniform framework for introducing fuzz testing into such applications.Type: GrantFiled: October 6, 2010Date of Patent: April 21, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Erik Meijer, Dragos A. Manolescu, John Wesley Dyer, Jeffrey van Gogh
-
Publication number: 20140289715Abstract: Immutable structures are employed to effect immutable parsing. In particular, a parsing configuration, comprising a stack and lookahead buffer, is utilized by a parser to perform lexical and syntactical analysis of an input stream and optionally output an immutable parse tree or the like, wherein at least one of the stack and buffer is immutable. Performance with respect to the immutable structures can be optimized utilizing sharing and lazy computation. In turn, immutability benefits are afforded with respect to parsing including safe sharing amongst services and/or across multiple threads as well as history preservation, among other things.Type: ApplicationFiled: June 2, 2014Publication date: September 25, 2014Inventors: Henricus Johannes Maria Meijer, John Wesley Dyer, Thomas Meschter, Cyrus Najmabadi
-
Patent number: 8762969Abstract: Immutable structures are employed to effect immutable parsing. In particular, an immutable parsing configuration, comprising a stack and lookahead buffer, is utilized by a parser to perform lexical and syntactical analysis of an input stream and optionally output an immutable parse tree or the like. Performance with respect to the immutable structures can be optimized utilizing sharing and lazy computation. In turn, immutability benefits are afforded with respect to parsing including safe sharing amongst services and/or across multiple threads as well as history preservation, among other things.Type: GrantFiled: August 7, 2008Date of Patent: June 24, 2014Assignee: Microsoft CorporationInventors: Henricus Johannes Maria Meijer, John Wesley Dyer, Thomas Meschter, Cyrus Najmabadi
-
Patent number: 8539439Abstract: Mapping is performed between operations of an abstract asynchronous programming model and a concrete asynchronous programming model. In other words, differences between asynchronous programming models are bridged to enable interaction.Type: GrantFiled: October 13, 2011Date of Patent: September 17, 2013Assignee: Microsoft CorporationInventors: Henricus Johannes Maria Meijer, John Wesley Dyer, Lucian Wischik, Bart De Smet, Jeffrey Van Gogh
-
Publication number: 20130132333Abstract: A multidimensional object, such as a language-integrated query (LINQ) object, can be generated based upon a grouping set operator and zero or more key selectors. The object can be utilized to query over a non-relational data source. The object can include a sequence of functions corresponding to each grouping related to the grouping set operator in order to provide multidimensional grouping representation. Furthermore, the object includes nested structures for optimized execution of the grouping set operator.Type: ApplicationFiled: November 22, 2011Publication date: May 23, 2013Applicant: MICROSOFT CORPORATIONInventors: Bart De Smet, Henricus Johannes Maria Meijer, John Wesley Dyer
-
Publication number: 20130132962Abstract: Scheduler combinators facilitate scheduling. One or more combinators, or operators, can be applied to an existing scheduler to compose a new scheduler or decompose an existing scheduler into multiple facets.Type: ApplicationFiled: November 22, 2011Publication date: May 23, 2013Applicant: MICROSOFT CORPORATIONInventors: Bart De Smet, Henricus Johannes Maria Meijer, John Wesley Dyer
-
Publication number: 20130097580Abstract: Mapping is performed between operations of an abstract asynchronous programming model and a concrete asynchronous programming model. In other words, differences between asynchronous programming models are bridged to enable interaction.Type: ApplicationFiled: October 13, 2011Publication date: April 18, 2013Applicant: MICROSOFT CORPORATIONInventors: Henricus Johannes Maria Meijer, John Wesley Dyer, Lucian Wischik, Bart De Smet, Jeffrey Van Gogh
-
Publication number: 20120150514Abstract: An outer event stream can be modeled to represent duration for an event with an inner event stream. The inner event stream can be generated to represent duration of at least one event from the outer event stream. By modeling the outer event stream to include duration, coincidence between two or more events can be determined. More specifically, the modeling of the outer event stream enables use of operators to identify coincidence between events from event streams.Type: ApplicationFiled: December 13, 2010Publication date: June 14, 2012Applicant: MICROSOFT CORPORATIONInventors: John Wesley Dyer, Jeffrey Van Gogh, Henricus Johannes Maria Meijer, Bart De Smet, Colin Joseph Meek
-
Publication number: 20120102458Abstract: A documentation system is described herein that automatically generates documentation for software code from tests that verify the correct operation of the software code. Software development teams often write automated tests (software that tests the software being shipped), such as unit tests. When written correctly, these tests are a written contract of what the software is supposed to do. The documentation system can use static and dynamic analysis in combination with annotations in the test code to extract the contract from these tests and leverage the extracted information to automatically generate the documentation. The system can then visually display this information in a textual or graphical way. Thus, the documentation system generates documentation that more accurately reflects how software code is expected to operate, without introducing significant burdens into the software development cycle.Type: ApplicationFiled: October 22, 2010Publication date: April 26, 2012Applicant: Microsoft CorporationInventors: Erik Meijer, Dragos A. Manolescu, John Wesley Dyer, Jeffrey Van Gogh
-
Publication number: 20120095750Abstract: Parsing technology is applied to observable collections. More specifically, a parser, such as combinator parser, can be employed to perform syntactic analysis over one or more observable collections. Further, multiple observable collections can be combined into a single collection and time can be captured by annotating collection items or generating time items.Type: ApplicationFiled: October 14, 2010Publication date: April 19, 2012Applicant: MICROSOFT CORPORATIONInventors: Henricus Johannes Maria Meijer, John Wesley Dyer, Daniel Johannes Pieter Leijen
-
Publication number: 20120089868Abstract: A fuzz testing system is described herein that represents event sources, channels, processors, and consumers as first-class entities in an application. Abstracting event-related entities allows fuzzing through injecting, dropping, reordering, and delaying events from within the application. This translates into the ability to localize the areas under test and perform fuzzing in a systematic manner. In some embodiments, the fuzz testing system tests concurrent asynchronous and event-based code, and can generate event streams based on a given statistical distribution. Representing events, event sources, processors, and sinks as first-class objects provides easy access to the event handlers and facilitates implementing fuzzing by introducing event processors between the source and the sink. Thus, the fuzz testing system improves the testability of applications and APIs with asynchronous behavior and provides a uniform framework for introducing fuzz testing into such applications.Type: ApplicationFiled: October 6, 2010Publication date: April 12, 2012Applicant: Microsoft CorporationInventors: Erik Meijer, Dragos A. Manolescu, John Wesley Dyer, Jeffrey Van Gogh
-
Publication number: 20120084749Abstract: Program language support is provided to facilitate reactive programming. Code can be provided that initiates conversion between a first-class pattern and a second-class pattern, wherein the patterns operate with respect to push-based data. Support is also provided for producing and consuming push-based data in accordance with an iterator pattern, for example.Type: ApplicationFiled: October 1, 2010Publication date: April 5, 2012Applicant: MICROSOFT CORPORATIONInventors: Jeffrey Van Gogh, Henricus Johannes Maria Meijer, John Wesley Dyer, Bart De Smet, Danny Van Velzen
-
Publication number: 20120078878Abstract: Query operators such as those that perform grouping functionality can be implemented to execute lazily rather than eagerly. For instance, one or more groups can be created and/or populated lazily with one or more elements from a source sequence in response to a request for a group or element of a group. Furthermore, lazy execution can be optimized as a function of context surrounding a query, among other things.Type: ApplicationFiled: September 28, 2010Publication date: March 29, 2012Applicant: MICROSOFT CORPORATIONInventors: Bart De Smet, Henricus Johannes Maria Meijer, Jeffrey Van Gogh, John Wesley Dyer
-
Publication number: 20120072442Abstract: Monadic types are preserved for query operators to further query operator compositionality utilizing operators defined over a monad. Query operators that are defined over a monad and are suited to return non-monadic types are constructed or altered to return a monadic type. For instance, aggregate query operators defined over a local or remote sequence monad can be generated that return a monadic type.Type: ApplicationFiled: September 22, 2010Publication date: March 22, 2012Applicant: MICROSOFT CORPORATIONInventors: Bart De Smet, Henricus Johannes Maria Meijer, Jeffrey Van Gogh, John Wesley Dyer
-
Publication number: 20110246962Abstract: A state machine may be represented using event-driven objects in a database query language. A bind operator from a database query language may be used as a state transition function, where the transition function has side effects defining the state. The objects may be manipulated with event driven expressions and operators and perform what would otherwise be complex operations with simple state machines.Type: ApplicationFiled: April 5, 2010Publication date: October 6, 2011Applicant: Microsoft CorporationInventors: Henricus Johannes Maria Meijer, Dragos A. Manolescu, Jeffrey van Gogh, John Wesley Dyer, Brian C. Beckman