IP Library › Granted Patent US 11,163,560
Granted Patent B1
US 11,163,560 · App. 16/844,084 · Granted Nov 2, 2021

Methods and arrangements to process comments

Inventors: Reza Farivar (Champaign, IL); Kenneth Taylor (Champaign, IL); Austin Grant Walters (Savoy, IL); Fardin Abdi Taghi Abad (Champaign, IL); Anh Truong (Champaign, IL); Vincent Pham (Champaign, IL); Jeremy Edward Goodsitt (Champaign, IL)
Assignee: CAPITAL ONE SERVICES, LLC
G06F8/73G06F8/41G06F40/30G06N3/08G06N5/04G06N20/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,163,560
App. No.
16/844,084
Granted
Nov 2, 2021
Kind
B1
Abstract

Described herein are embodiments for managing comments in a program code file. A system may select program code and compile it to an intermediary code. The system may compare the intermediary code to a library of intermediary code snippets associated with comments. Based on the comparison, a system may recognize the code to be obsolete. In some embodiments, a system may generate one or more recommendations to update a code. Based on received feedback regarding a recommendation, a system may accordingly update a code.

Claims (40)

1. An apparatus comprising:

memory; and

logic circuitry coupled with the memory to

identify a program code segment with an associated comment;

generate an intermediate code segment based on the program code segment, the intermediate code segment comprising code at an intermediate stage of compilation between program code and compiled code;

identify a library code segment corresponding to the intermediate code segment;

identify a set of one or more comments based on an association between the library code segment and the set of one or more comments;

compare the associated comment with the set of one or more comments to determine that a deviation between the associated comment and the set of one or more comments exceeds a deviation threshold; and

output an indication that the associated comment might be obsolete.

2. The apparatus of claim 1 , the logic circuitry to receive a selection of the program segment and a request to determine whether the associated comment might be obsolete.

3. The apparatus of claim 1 , the logic circuitry to detect an edit of the program segment, the detection to identify the program segment.

4. The apparatus of claim 1 , the logic circuitry to generate the intermediate code segment by compilation of the program code segment to the intermediate stage of compilation.

5. The apparatus of claim 1 , the logic circuitry to compare the intermediate code segment to the library code segment to identify the library code segment.

6. The apparatus of claim 1 , the logic circuitry to implement a model, the model to identify the library code segment based on the intermediate code segment.

7. The apparatus of claim 6 , wherein the model comprises a database, a statistical model, a machine learning model, or a combination thereof.

8. The apparatus of claim 7 , the model to compare the associated comment with the set of one or more comments to determine the deviation based on a lack of an exact match.

9. The apparatus of claim 7 , the statistical model to determine Levenshtein distance metrics based on the associated comment and the set of one or more comments to determine the deviation.

10. The apparatus of claim 7 , the machine learning model to perform natural language processing based on the associated comment and the set of one or more comments to determine the deviation.

11. A non-transitory storage medium containing instructions, which when executed by a processor, cause the processor to perform operations, the operations to:

identify a program code segment with an associated comment;

generate an intermediate code segment based on the program code segment, the intermediate code segment comprising code at an intermediate stage of compilation between program code and compiled code;

identify a library code segment corresponding to the intermediate code segment;

identify a set of one or more comments based on an association between the library code segment and the set of one or more comments;

compare the associated comment with the set of one or more comments to determine that a deviation between the associated comment and the set of one or more comments exceeds a deviation threshold; and

output an indication that the associated comment might be obsolete.

12. The non-transitory storage medium of claim 11 , the operations to receive an indication of a request to determine whether the associated comment for the program code segment might be obsolete.

13. The non-transitory storage medium of claim 11 , wherein the operations generate the intermediate code segment by compilation of the program code segment to the intermediate stage of compilation.

14. The non-transitory storage medium of claim 11 , wherein the operations identify the library code segment by comparison of the intermediate code segment to the library code segment.

15. The non-transitory storage medium of claim 11 , wherein the operations implement a model, the model to identify the library code segment based on the intermediate code segment.

16. The non-transitory storage medium of claim 15 , wherein the model comprises a database, a statistical model, a machine learning model, or a combination thereof.

17. The non-transitory storage medium of claim 16 , the model to compare the associated comment with the set of one or more comments to determine the deviation based on a lack of an exact match.

18. The non-transitory storage medium of claim 17 , the machine learning model to perform natural language processing based on the associated comment and the set of one or more comments to determine the deviation.

19. The non-transitory storage medium of claim 16 , the statistical model to determine Levenshtein distance metrics based on the associated comment and the set of one or more comments to determine the deviation.

20. A system comprising:

memory; and

logic circuitry coupled with the memory to

identify multiple, different program codes;

parse the multiple, different program codes into training program segments, each of the training program segments to include an associated comment;

compile each of the training program segments to generate corresponding intermediate code segments, each of the intermediate code segments associated with a corresponding training code segment and the associated comment of the corresponding training code segment, wherein the intermediate code segments include repetitions, the repetitions associated with differing associated comments; and

train a machine learning model to determine a probability based on an input intermediate code segment and an input comment, the probability to indicate a likelihood that the input comment matches the input intermediate code segment.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 9, 2020
From: FARIVAR, REZA; TAYLOR, KENNETH; WALTERS, AUSTIN GRANT; ABDI TAGHI ABAD, FARDIN; TRUONG, ANH; PHAM, VINCENT; GOODSITT, JEREMY EDWARD
To: CAPITAL ONE SERVICES, LLC
Reel/Frame 052355/0661 →