-
公开(公告)号:US20230141807A1
公开(公告)日:2023-05-11
申请号:US17520694
申请日:2021-11-07
Applicant: Microsoft Technology Licensing, LLC
Inventor: Peter GROENEWEGEN , Arjun RADHAKRISHNA , Gustavo ARAUJO SOARES , Mark Alistair WILSON-THOMAS , Piyush ARORA , Aaron Chak Hei YIM , David Ellis PUGH , German David OBANDO CHACON , Andrew Richard STERLAND , Gregory MISKELLY
Abstract: Embodiments automate surfacing of underutilized development tool features, thereby enhancing the discoverability of subtools, commands, shortcuts, settings, visualizers, and other tool features. After spotting an inefficiency in the user’s interaction with one or more tools, the feature surfacing functionality offers the user an interaction optimization suggestion. A mapping structure correlates detected interaction patterns with objectively better interaction optimizations. Several examples of mappings are discussed. The user can accept a suggestion, have the suggested optimization applied by an enhanced tool, and thereby reduce the number of user gestures utilized to accomplish a desired result, reduce the number of tools utilized, increase security, reduce risk of error, or get to the desired result faster, for example. Interaction optimizations also help the user stay focused, by reducing or avoiding departures from the user’s current primary workflow. Other aspects of tool feature surfacing functionality are also described herein.
-
公开(公告)号:US20230289151A1
公开(公告)日:2023-09-14
申请号:US17691746
申请日:2022-03-10
Applicant: Microsoft Technology Licensing, LLC
Inventor: Peter GROENEWEGEN , Gustavo ARAUJO SOARES , Mohammad RAZA , Arjun RADHAKRISHNA
IPC: G06F8/36
CPC classification number: G06F8/36
Abstract: Generating a template based on source code examples includes identifying a set of related files within a source code project, and identifying a set of textual content portions that are each at least partially repeated across a subset of the related files. A set of templates is generated, each comprising at least one textual content portion from the set of textual content portions. Each template is associated with a set of selection criteria. The set of templates is exposed for automated consumption within a source code editor, based on the set of selection criteria associated with each template. Consuming a template includes identifying a user input indicating creation of a source code block or file within the source code editor, identifying attribute(s) of the source code block or file, and using the attribute(s) to identify a selection criterion associated with a particular template. The particular template is automatically presented.
-
公开(公告)号:US20230176829A1
公开(公告)日:2023-06-08
申请号:US17544502
申请日:2021-12-07
Applicant: Microsoft Technology Licensing, LLC
Inventor: Kiarash RAHMANI , Mohammad RAZA , Sumit GULWANI , Vu Minh LE , Daniel James MORRIS , Arjun RADHAKRISHNA , Gustavo ARAUJO SOARES , Ashish TIWARI
Abstract: Embodiments use a multi-modal approach to generate software programs that match a solution program description. The solution program description may include natural language, input-output examples, partial source code, desired operators, or other hints. Some embodiments use optimized prompts to a pre-trained language model to obtain initial candidate programs. Maximal program components are extracted and then recombined variously using component-based synthesis. Beam search reduces a solution program search space by discarding some candidates from a given synthesis iteration. Relevance metrics, string similarity metrics, operator frequency distributions, token rareness scores, and other optimizations may be employed. By virtue of optimizations and the multi-modal approach, a solution program may be obtained after fewer iterations than by use of a language model alone. The multi-modal approach is domain agnostic, as illustrated by examples using regular expression and cascading style sheet selector domain specific languages.
-
公开(公告)号:US20240256423A1
公开(公告)日:2024-08-01
申请号:US18159712
申请日:2023-01-26
Applicant: Microsoft Technology Licensing, LLC
Inventor: Jialu ZHANG , José Pablo CAMBRONERO SÁNCHEZ , Gustavo ARAUJO SOARES , Vu Minh LE , Sumit GULWANI , Gust Ben Anneloes VERBRUGGEN
CPC classification number: G06F11/3608 , G06F8/42 , G06F8/71
Abstract: Some embodiments generate prompts and submit them in queries to a language model trained on code to perform automated program repair. Some embodiments fix syntactic mistakes and semantic mistakes by combining multimodal prompts, iterative querying, test-case-based selection of few-shots, and program chunking. In some cases, edit distance is minimized between an initial flawed program and the automatically created improved version of that program. The initial flawed program is obtained from a programming student, or from a source code generator.
-
公开(公告)号:US20230229850A1
公开(公告)日:2023-07-20
申请号:US17576652
申请日:2022-01-14
Applicant: Microsoft Technology Licensing, LLC
Inventor: Mohammad RAZA , Arjun RADHAKRISHNA , José Pablo CAMBRONERO SÁNCHEZ , Sumit GULWANI , John Francis LAM , Vu Minh LE , Daniel MORRIS , Daniel Adam PERELMAN , Daniel Galen SIMMONS , Gustavo ARAUJO SOARES , Ashish TIWARI
IPC: G06F40/154 , G06F9/54 , G06F40/143 , G06N20/00 , G06F40/18 , G06F40/183
CPC classification number: G06F40/154 , G06F9/543 , G06F40/143 , G06N20/00 , G06F40/18 , G06F40/183
Abstract: Pasting content from a clipboard buffer as structured tabular data. A computer system determines a data type of content within a clipboard buffer. Based on the data type of the content, the computer system identifies a tabular pattern analysis technique to apply to the content. Based on applying the tabular pattern analysis technique to the content, the computer system identifies a portion of tabular content within the content. Using a clipboard application programming interface, the computer system presents the portion of tabular content to an application as paste data that is structured as a set of rows and a set of columns.
-
公开(公告)号:US20220317978A1
公开(公告)日:2022-10-06
申请号:US17220131
申请日:2021-04-01
Applicant: Microsoft Technology Licensing, LLC
Inventor: Titus BARIK , Gustavo ARAUJO SOARES , Piyush ARORA , Peter GROENEWEGEN , Sumit GULWANI , Ameya Sanjay KETKAR , Vu Minh LE , Wode NI , David Ellis PUGH , Arjun RADHAKRISHNA , Ivan RADICEK , Ashish TIWARI , Mark Alistair WILSON-THOMAS
Abstract: Edit automation functionality generalizes edits performed by a user in a document, locates similar text, and recommends or applies transforms while staying within a current workflow. Source code edits such as refactoring are automated. The functionality uses or provides anchor target lists, temporal edit patterns, edit graphs, automatable edit sequence libraries, and other data structures and computational techniques for identifying locations appropriate for particular edits, for getting transforms, for selecting optimal transforms, for leveraging transforms in an editing session or later, and for displaying transform recommendations and results. The edit automation functionality enhances automation subtool generation, discoverability, and flexibility, for refactoring, snippet insertion, quick actions in an integrated development environment, and other automatable edit sequences.
-
7.
公开(公告)号:US20230289180A1
公开(公告)日:2023-09-14
申请号:US17692013
申请日:2022-03-10
Applicant: Microsoft Technology Licensing, LLC
Inventor: Peter GROENEWEGEN , Gustavo ARAUJO SOARES , Arjun RADHAKRISHNA , Mark Alistair WILSON-THOMAS , Jonathan Keith SIMMONS
Abstract: Methods, systems, and computer program products for deploying a static code analyzer based on program synthesis from input-output examples. A computer system uses program synthesis on a set of input-output examples of source code edits to generate a rewrite rule that defines a transformation pattern. Based on a determined static code analyzer format, the computer system generates a static code analyzer from the rewrite rule. The static code analyzer includes a find portion that indicates a matching condition for identifying a portion of source code text, and a fix portion that indicates a textual replacement to apply to the portion of source code text matched by the find portion. The computer system deploys the static code analyzer to a development environment, including configuring the static code analyzer to be executable against a source code file within the development environment.
-
公开(公告)号:US20230116149A1
公开(公告)日:2023-04-13
申请号:US17497923
申请日:2021-10-09
Applicant: Microsoft Technology Licensing, LLC
Inventor: Arjun RADHAKRISHNA , Gustavo ARAUJO SOARES , Peter GROENEWEGEN , Mark Alistair WILSON-THOMAS , Aaron Chak Hei YIM , Piyush ARORA , Mohammad RAZA
Abstract: Embodiments automate several aspects of document copy-paste updates. An enhanced editor submits context, such as a copied section, pasted section, nearby text, or parser information, to an automatic suggestion generator. The editor gets back a suggestion for automatically changing the pasted section, thus helping users avoid tedium and errors. For instance, string substitutions begun by the user can be automatically and easily completed within the pasted section. Refactoring between variable declarations and parameter lists is detected and completed on request. Situation-specific transforms based on code synthesis, word associations, temporal edit patterns, anchor target lists, regular expressions, or autocompletion are offered. Suggestions are given inside the user's current workflow to avoid breaks in focus. Suggestions can be refined automatically in response to implicit or explicit user feedback. Users are warned of unedited pasted sections. Code review is aided by highlighting pasted sections.
-
公开(公告)号:US20220317979A1
公开(公告)日:2022-10-06
申请号:US17220156
申请日:2021-04-01
Applicant: Microsoft Technology Licensing, LLC
Inventor: Gustavo ARAUJO SOARES , Piyush ARORA , Titus BARIK , Peter GROENEWEGEN , Sumit GULWANI , Ameya Sanjay KETKAR , Vu Minh LE , Wode NI , David Ellis PUGH , Arjun RADHAKRISHNA , Ivan RADICEK , Ashish TIWARI , Mark Alistair WILSON-THOMAS
IPC: G06F8/33 , G06F16/901
Abstract: Edit automation functionality generalizes edits performed by a user in a document, locates similar text, and recommends or applies transforms while staying within a current workflow. Source code edits such as refactoring are automated. The functionality uses or provides anchor target lists, temporal edit patterns, edit graphs, automatable edit sequence libraries, and other data structures and computational techniques for identifying locations appropriate for particular edits, for getting transforms, for selecting optimal transforms, for leveraging transforms in an editing session or later, and for displaying transform recommendations and results. The edit automation functionality enhances automation subtool generation, discoverability, and flexibility, for refactoring, snippet insertion, quick actions in an integrated development environment, and other automatable edit sequences.
-
公开(公告)号:US20200334054A1
公开(公告)日:2020-10-22
申请号:US16592470
申请日:2019-10-03
Applicant: Microsoft Technology Licensing, LLC
Inventor: Sumit GULWANI , Arjun RADHAKRISHNA , Abhishek UDUPA , Gustavo ARAUJO SOARES , Vu Minh LE , Anders MILTNER , Mark A. WILSON-THOMAS
Abstract: Automatically identifying context-specific repeated transformations (such as repeated edit tasks) that are based on observation of the developer drafting or modifying code. As the developer modifies the code, the code passes through a series of states, one after the other. The computing system observes the series of states of the code. It is based on this observation that the computing system identifies repeated transformations of the code for potentially offering to continue performing the repeated transformations for the user. This alleviates the developer from having to manually perform the remainder of the repeated transformations.
-
-
-
-
-
-
-
-
-