Patents by Inventor Mikhail Arkhipov

Mikhail Arkhipov 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: 10437574
    Abstract: Systems and methods are described for providing code completion features for code modules that have been incorporated into a source code document being edited by a user of a source code editor. Embodiment dynamically load and apply partial code evaluation to code modules referenced in the source code document (and any code modules referenced directly or indirectly by such code modules) while the user is editing it. The partial code evaluation is performed on a background thread that is separate from a main thread used to execute the user interface for the source code editor. The results of such partial code evaluation are cached and used to provide code completion information for the code modules.
    Type: Grant
    Filed: October 6, 2016
    Date of Patent: October 8, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Wai Man Yuen, Vishal R. Joshi, Justin Beckwith, Mikhail Arkhipov
  • Patent number: 10338893
    Abstract: Systems and methods for providing auto-completion functionality in a source code editor are described. In accordance with the systems and methods, code entities that are candidates for auto-completion are presented to a user via multiple auto-completion menus that are accessed in steps rather than via a single auto-completion menu. The multiple auto-completion menus include at least a first menu and a second menu. The first menu includes a common portion (e.g., a common prefix) of a subset of the candidate code entities. The second menu includes the subset of the candidate code entities and is presented when the user selects the common portion from the first menu.
    Type: Grant
    Filed: January 11, 2016
    Date of Patent: July 2, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Justin Beckwith, Thao Doan, Vishal R. Joshi, Alison Q. Lu, Wai Man Yuen, Mikhail Arkhipov
  • Publication number: 20170024195
    Abstract: Systems and methods are described for providing code completion features for code modules that have been incorporated into a source code document being edited by a user of a source code editor. Embodiment dynamically load and apply partial code evaluation to code modules referenced in the source code document (and any code modules referenced directly or indirectly by such code modules) while the user is editing it. The partial code evaluation is performed on a background thread that is separate from a main thread used to execute the user interface for the source code editor. The results of such partial code evaluation are cached and used to provide code completion information for the code modules.
    Type: Application
    Filed: October 6, 2016
    Publication date: January 26, 2017
    Inventors: Wai Man Yuen, Vishal R. Joshi, Justin Beckwith, Mikhail Arkhipov
  • Patent number: 9524307
    Abstract: Systems and methods perform asynchronous error checking on a structured document. In accordance with the systems/methods, a first thread, such as a main application thread of a document editor, parses the document to identify one or more new elements included therein and create copies of the one or more new elements. A second thread, such as a background thread, applies error checking to the copies of the one or more new elements to generate error results corresponding to the one or more new elements. The first thread the uses the error results to indicate errors in association with the one or more new elements.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: December 20, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Mikhail Arkhipov
  • Patent number: 9471286
    Abstract: Systems and methods are described for providing code completion features for code modules that have been incorporated into a source code document being edited by a user of a source code editor. Embodiment dynamically load and apply partial code evaluation to code modules referenced in the source code document (and any code modules referenced directly or indirectly by such code modules) while the user is editing it. The partial code evaluation is performed on a background thread that is separate from a main thread used to execute the user interface for the source code editor. The results of such partial code evaluation are cached and used to provide code completion information for the code modules.
    Type: Grant
    Filed: June 4, 2013
    Date of Patent: October 18, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Wai Man Yuen, Vishal R. Joshi, Justin Beckwith, Mikhail Arkhipov
  • Publication number: 20160124720
    Abstract: Systems and methods for providing auto-completion functionality in a source code editor are described. In accordance with the systems and methods, code entities that are candidates for auto-completion are presented to a user via multiple auto-completion menus that are accessed in steps rather than via a single auto-completion menu. The multiple auto-completion menus include at least a first menu and a second menu. The first menu includes a common portion (e.g., a common prefix) of a subset of the candidate code entities. The second menu includes the subset of the candidate code entities and is presented when the user selects the common portion from the first menu.
    Type: Application
    Filed: January 11, 2016
    Publication date: May 5, 2016
    Inventors: Justin Beckwith, Thao Doan, Vishal R. Joshi, Alison Q. Lu, Wai Man Yuen, Mikhail Arkhipov
  • Patent number: 9244658
    Abstract: Systems and methods for providing auto-completion functionality in a source code editor are described. In accordance with the systems and methods, code entities that are candidates for auto-completion are presented to a user via multiple auto-completion menus that are accessed in steps rather than via a single auto-completion menu. The multiple auto-completion menus include at least a first menu and a second menu. The first menu includes a common portion (e.g., a common prefix) of a subset of the candidate code entities. The second menu includes the subset of the candidate code entities and is presented when the user selects the common portion from the first menu.
    Type: Grant
    Filed: June 4, 2013
    Date of Patent: January 26, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Justin Beckwith, Thao Doan, Vishal R. Joshi, Alison Q. Lu, Wai Man Yuen, Mikhail Arkhipov
  • Publication number: 20140359572
    Abstract: Systems and methods are described for providing code completion features for code modules that have been incorporated into a source code document being edited by a user of a source code editor. Embodiment dynamically load and apply partial code evaluation to code modules referenced in the source code document (and any code modules referenced directly or indirectly by such code modules) while the user is editing it. The partial code evaluation is performed on a background thread that is separate from a main thread used to execute the user interface for the source code editor. The results of such partial code evaluation are cached and used to provide code completion information for the code modules.
    Type: Application
    Filed: June 4, 2013
    Publication date: December 4, 2014
    Inventors: Wai Man Yuen, Vishal R. Joshi, Justin Beckwith, Mikhail Arkhipov
  • Publication number: 20140359574
    Abstract: Systems and methods for providing auto-completion functionality in a source code editor are described. In accordance with the systems and methods, code entities that are candidates for auto-completion are presented to a user via multiple auto-completion menus that are accessed in steps rather than via a single auto-completion menu. The multiple auto-completion menus include at least a first menu and a second menu. The first menu includes a common portion (e.g., a common prefix) of a subset of the candidate code entities. The second menu includes the subset of the candidate code entities and is presented when the user selects the common portion from the first menu.
    Type: Application
    Filed: June 4, 2013
    Publication date: December 4, 2014
    Inventors: Justin Beckwith, Thao Doan, Vishal R. Joshi, Alison Q. Lu, Wai Man Yuen, Mikhail Arkhipov
  • Publication number: 20140279938
    Abstract: Systems and method are described for performing asynchronous error checking on a structured document. In accordance with the systems/methods, a first thread, such as a main application thread of a document editor, parses the document to identify one or more new elements included therein and create copies of the one or more new elements. A second thread, such as a background thread, applies error checking to the copies of the one or more new elements to generate error results corresponding to the one or more new elements. The first thread the uses the error results to indicate errors in association with the one or more new elements.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: MICROSOFT CORPORATION
    Inventor: Mikhail Arkhipov
  • Patent number: 7984107
    Abstract: A proxy service for simulating real assembly features on a remote device is described. A data stream including reflection data of a real assembly is generated. The reflection data stream may include data associated with proxy types without including the code from the real assembly. A client obtains the reflection data stream. The reflection data stream facilitates the generation of a proxy assembly on the client and allows the client to instantiate features of the real assembly on the client without the code for the real assembly.
    Type: Grant
    Filed: September 9, 2005
    Date of Patent: July 19, 2011
    Assignee: Microsoft Corporation
    Inventors: Joseph Michael Davis, Mikhail Arkhipov
  • Patent number: 7293232
    Abstract: A source code editor is used to develop multilanguage documents while providing the advanced editing functionality of secondary editors and without requiring the programmer to explicitly open and interface with the secondary editors. The multilanguage document is presented to the user in a primary application view of the primary editor. Code segments written in different languages are identified and sent to the appropriate secondary editors, which in turn create secondary documents that are transparent to the programmer. As edits are made to the primary application view of the document, the edits are replicated by the secondary editors behind the scene. Functionality that is enabled by the secondary editors, such as syntax coloring, auto-completion, and validation is identified by the primary editor and replicated in the primary application view, so as to appear as if the primary editor is inherently configured with the leveraged functionality of the secondary editors.
    Type: Grant
    Filed: November 26, 2003
    Date of Patent: November 6, 2007
    Assignee: Microsoft Corporation
    Inventors: Mikhail Arkhipov, Joshua Israel Kaplan, Timothy Michael Mc Bride, Li Zhang, C. Douglas Hodges, Elliot H. Omiya
  • Publication number: 20070061479
    Abstract: A proxy service for simulating real assembly features on a remote device is described. A data stream including reflection data of a real assembly is generated. The reflection data stream may include data associated with proxy types without including the code from the real assembly. A client obtains the reflection data stream. The reflection data stream facilitates the generation of a proxy assembly on the client and allows the client to instantiate features of the real assembly on the client without the code for the real assembly.
    Type: Application
    Filed: September 9, 2005
    Publication date: March 15, 2007
    Applicant: Microsoft Corporation
    Inventors: Joseph Davis, Mikhail Arkhipov
  • Publication number: 20050114769
    Abstract: A source code editor is used to develop multilanguage documents while providing the advanced editing functionality of secondary editors and without requiring the programmer to explicitly open and interface with the secondary editors. The multilanguage document is presented to the user in a primary application view of the primary editor. Code segments written in different languages are identified and sent to the appropriate secondary editors, which in turn create secondary documents that are transparent to the programmer. As edits are made to the primary application view of the document, the edits are replicated by the secondary editors behind the scene. Functionality that is enabled by the secondary editors, such as syntax coloring, auto-completion, and validation is identified by the primary editor and replicated in the primary application view, so as to appear as if the primary editor is inherently configured with the leveraged functionality of the secondary editors.
    Type: Application
    Filed: November 26, 2003
    Publication date: May 26, 2005
    Inventors: Mikhail Arkhipov, Joshua Kaplan, Timothy McBride, Li Zhang, C. Hodges, Elliot Omiya
  • Publication number: 20050022211
    Abstract: An API and method for processing a user interface event is provided. The user interface event may take place in any environment of a software application, and may result from any type of user or software action. An embodiment also provides a framework for customizing the processing of a user interface event without the need to maintain accountability of computer states. In the method, an application process user interface event is processed using an operating system process. A user interface event is received by the application process by way of a user interface. A software component adapted to process the user interface event is pushed onto a memory stack by the operating system process. The operating system process processes the user interface event using the software component, and pops the software component from the memory stack.
    Type: Application
    Filed: August 13, 2004
    Publication date: January 27, 2005
    Applicant: Microsoft Corporation
    Inventors: Evgeny Veselov, Alex Mogilevsky, Mikhail Arkhipov, Mark Harper
  • Publication number: 20040003248
    Abstract: A web page is published with a digital signature. The web server verifies the digital signature at runtime before sending the page over a network to a client. If the signature does not match to the document content (e.g., the decrypted document content that had been previously encoded during the signing process does not match the original never encoded clear document content), the server stops serving the page and provides an indication, such as notifying the system administrator and/or the client. The client browser also can check the signature when it gets the page. The client browser can refuse to render the page and warn the user if the digital signature does not match to the document content.
    Type: Application
    Filed: June 26, 2002
    Publication date: January 1, 2004
    Applicant: Microsoft Corporation
    Inventor: Mikhail Arkhipov