Editing source code

US9823902B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9823902-B2
Application numberUS-201213560267-A
CountryUS
Kind codeB2
Filing dateJul 27, 2012
Priority dateJan 17, 2007
Publication dateNov 21, 2017
Grant dateNov 21, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method for editing source code includes receiving a modification to the source code made by a user, determining whether the modification would change the semantics of the source code, and handling the modification depending on the result of the determining.

First claim

Opening claim text (preview).

The invention claimed is: 1. A computer-implemented method for editing source code, comprising: receiving a modification to the source code; determining whether or not the modification would change semantics of the source code; and accepting or rejecting the modification based upon the determining, wherein a change in semantics of the source code is a change in how the source code operates during runtime. 2. The computer-implemented method of claim 1 , wherein the determining includes: compiling the source code, as unmodified, to produce first object code; compiling the source code, as modified with the modification, to produce second object code; and comparing the first object code to the second object code. 3. The computer-implemented method of claim 1 , further comprising comparing the modification to a list of modifications, wherein the list includes modifications that do not change the semantics of the source code and/or modifications that do change the semantics of the source code, and the accepting or rejecting the modification is based upon the comparing. 4. The computer-implemented method of claim 1 , further comprising determining whether the modification pertains to a portion of the source code in which changes to the source code are not permitted; and the accepting or rejection the modification is based upon the portion of the source code to which the modification pertains. 5. The computer-implemented method of claim 1 , further comprising ignoring, during the accepting or rejecting, syntactically invalid intermediate states of the modification. 6. The computer-implemented method of claim 1 , wherein the modification to the source code that does not change the semantics of the source code includes: changing an indentation of the source code, adding blank lines to the source code, change a name of a variable within the source code, and changing a comment within a comment line. 7. A computer hardware system configured to edit source code, comprising: a processor, wherein the processor is configured to initiate and/or perform: receiving a modification to the source code; determining whether or not the modification would change semantics of the source code; and accepting or rejecting the modification based upon the determining, wherein a change in semantics of the source code is a change in how the source code operates during runtime. 8. The system of claim 7 , wherein the determining includes: compiling the source code, as unmodified, to produce first object code; compiling the source code, as modified with the modification, to produce second object code; and comparing the first object code to the second object code. 9. The system of claim 7 , wherein the processor is further configured to initiate and/or perform: comparing the modification to a list of modifications, wherein the list includes modifications that do not change the semantics of the source code and/or modifications that do change the semantics of the source code, and the accepting or rejecting the modification is based upon the comparing. 10. The system of claim 7 , wherein the processor is further configured to initiate and/or perform: determining whether the modification pertains to a portion of the source code in which changes to the source code are not permitted; and the accepting or rejection the modification is based upon the portion of the source code to which the modification pertains. 11. The system of claim 7 , wherein the processor is further configured to initiate and/or perform: ignoring, during the accepting or rejecting, syntactically invalid intermediate states of the modification. 12. The system of claim 7 , wherein the modification to the source code that does not change the semantics of the source code includes: changing an indentation of the source code, adding blank lines to the source code, change a name of a variable within the source code, and changing a comment within a comment line. 13. A computer program product, comprising: a computer usable storage device having stored therein computer usable program instructions for editing source code, wherein the computer usable program instructions, which when executed on a computer hardware system, cause the computer hardware system to perform: receiving a modification to the source code; determining whether or not the modification would change semantics of the source code; and accepting or rejecting the modification based upon the determining, wherein a change in semantics of the source code is a change in how the source code operates during runtime, and the computer usable storage device is not a transitory, propagating signal per se. 14. The computer program product of claim 13 , wherein the determining includes: compiling the source code, as unmodified, to produce first object code; compiling the source code, as modified with the modification, to produce second object code; and comparing the first object code to the second object code. 15. The computer program product of claim 13 , wherein the computer usable program instructions further causes the computer hardware system to perform: comparing the modification to a list of modifications, wherein the list includes modifications that do not change the semantics of the source code and/or modifications that do change the semantics of the source code, and the accepting or rejecting the modification is based upon the comparing. 16. The computer program product of claim 13 , wherein the computer usable program instructions further causes the computer hardware system to perform: determining whether the modification pertains to a portion of the source code in which changes to the source code are not permitted; and the accepting or rejection the modification is based upon the portion of the source code to which the modification pertains. 17. The computer program product of claim 13 , wherein the computer usable program instructions further causes the computer hardware system to perform: ignoring syntactically, during the accepting or rejecting, invalid intermediate states of the modification. 18. The computer program product of claim 13 , wherein the modification to the source code that does not change the semantics of the source code includes: changing an indentation of the source code, adding blank lines to the source code, change a name of a variable within the source code, and changing a comment within a comment line. 19. The method of claim 1 , wherein the accepting or rejecting involves accepting the modification based upon the modification not changing the semantics of the source code, or rejecting the modification based upon the modification changing the semantics of the source code. 20. The system of claim 7 , wherein the accepting or rejecting involves accepting the modification based upon the modification not changing the semantics of the source code, or rejecting the modification based upon the modification changing the semantics of the source code.

Assignees

Inventors

Classifications

  • G06F8/33Primary

    Intelligent editors · CPC title

  • Software design · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9823902B2 cover?
A method for editing source code includes receiving a modification to the source code made by a user, determining whether the modification would change the semantics of the source code, and handling the modification depending on the result of the determining.
Who is the assignee on this patent?
Arning Andreas, Schwenkreis Friedemann, IBM
What technology area does this patent fall under?
Primary CPC classification G06F8/33. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 21 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).