IP Library Granted Patent US 8,479,156
Granted Patent B2
US 8,479,156 · App. 12/487,003 · Granted Jul 2, 2013

Providing target specific information for textual code at edit time

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 8,479,156
App. No.
12/487,003
Granted
Jul 2, 2013
Kind
B2
Abstract

Providing target specific information for textual code at edit time. Input specifying textual code or the textual code itself may be received. The textual code may be specified for a target device. The textual code may be analyzed to determine information regarding execution of the textual code on the target device. The information may regard at least one statement of the textual code. The information may be provided for display. The analysis and provision of information may be performed at edit time.

Claims (58)

1. A non-transitory computer readable memory medium storing program instructions executable by one or more processors to:

receive user input adding textual code to a program during editing of the program, wherein the textual code is specified for a real-time target device;

in response to receiving the user input adding the textual code:

analyze the textual code to determine whether the textual code has a deterministic execution time on the real-time target device; and

display information indicating that the execution time of the textual code on the real-time target device is non-deterministic;

wherein said analyzing and said displaying are performed during the editing of the program to provide feedback responsive to the addition of the textual code.

2. The memory medium of claim 1 , wherein the program instructions are further executable by the one or more processors to:

in response to receiving the user input adding the textual code:

analyze syntax information of at least one statement of the textual code, wherein the syntax information is specific to the real-time target device; and

display an indication that the syntax information is not compatible with the real-time target device, wherein said displaying the indication comprises displaying the indication during the editing of the program to provide the indication responsive to the addition of the textual code.

3. The memory medium of claim 1 , wherein the program instructions are further executable by the one or more processors to:

in response to receiving the user input adding the textual code:

analyze the textual code to determine whether the textual code performs one or more memory allocations when executed by the real-time target device; and

display information indicating that the textual code performs one or more memory allocations when executed by the real-time target device, wherein said displaying the information comprises displaying the information during the editing of the program to provide the information responsive to the addition of the textual code.

4. The memory medium of claim 1 , wherein the program instructions are further executable by the one or more processors to:

in response to receiving the user input adding the textual code:

analyze the textual code to determine that the textual code performs a data type conversion; and

display a suggestion for avoiding the data type conversion performed by the textual code, wherein said displaying the suggestion comprises displaying the suggestion during the editing of the program to provide the suggestion responsive to the addition of the textual code.

5. The memory medium of claim 1 , wherein the textual code is textual code of a dynamically typed programming language.

6. The memory medium of claim 1 , wherein the textual code is comprised in a graphical program, wherein the graphical program comprises a plurality of nodes and interconnections between the nodes, and wherein the plurality of nodes and interconnections between the nodes visually specifies functionality of the graphical program.

7. The memory medium of claim 1 , wherein said displaying the information comprises displaying a visual indication proximate to at least one statement of the textual code.

8. The memory medium of claim 1 , wherein the real-time target device comprises a programmable hardware element.

9. A method, comprising:

a computer system receiving user input adding textual code to a program during editing of the program, wherein the textual code is specified for a real-time target device;

in response to receiving the user input adding the textual code:

the computer system analyzing the textual code to determine whether the textual code has a deterministic execution time on the real-time target device; and

the computer system displaying information on a display device indicating that the execution time of the textual code on the real-time target device is non-deterministic;

wherein said analyzing and said displaying are performed by the computer system during the editing of the program to provide feedback responsive to the addition of the textual code.

10. The method of claim 9 , further comprising:

in response to receiving the user input adding the textual code:

the computer system analyzing syntax information of at least one statement of the textual code, wherein the syntax information is specific to the real-time target device; and

the computer system displaying an indication that the syntax information is not compatible with the real-time target device, wherein said displaying the indication comprises displaying the indication during the editing of the program to provide the indication responsive to the addition of the textual code.

11. The method of claim 9 , further comprising:

in response to receiving the user input adding the textual code:

the computer system analyzing the textual code to determine whether the textual code performs one or more memory allocations when executed by the real-time target device; and

the computer system displaying information indicating that the textual code performs one or more memory allocations when executed by the real-time target device, wherein said displaying the information comprises displaying the information during the editing of the program to provide the information responsive to the addition of the textual code.

12. The method of claim 9 , further comprising:

in response to receiving the user input adding the textual code:

the computer system analyzing the textual code to determine that the textual code performs a data type conversion; and

the computer system displaying a suggestion for avoiding the data type conversion, wherein said displaying the suggestion comprises displaying the suggestion during the editing of the program to provide the suggestion responsive to the addition of the textual code.

13. The method of claim 9 , wherein the textual code is textual code of a dynamically typed programming language.

14. The method of claim 9 , wherein the textual code is comprised in a graphical program, wherein the graphical program comprises a plurality of nodes and interconnections between the nodes, and wherein the plurality of nodes and interconnections between the nodes visually specifies functionality of the graphical program.

15. The method of claim 9 , wherein said displaying the information comprises displaying a visual indication proximate to at least one statement of the textual code.

16. The method of claim 9 , wherein the real-time target device comprises a programmable hardware element.

17. A system, comprising:

one or more processors;

a display coupled to the one or more processors; and

a memory medium coupled to the one or more processors, wherein the memory medium stores program instructions executable by the one or more processors to:

receive user input adding textual code to a program during editing of the program, wherein the textual code is specified for a real-time target device;

in response to receiving the user input adding the textual code:

analyze the textual code to determine whether the textual code has a deterministic execution time on the real-time target device; and

display information indicating that the execution time of the textual code on the real-time target device is non-deterministic;

wherein said analyzing and said displaying are performed during the editing of the program to provide feedback responsive to the addition of the textual code.

18. The memory medium of claim 1 , wherein the program instructions are further executable by the one or more processors to:

in response to receiving the user input adding the textual code:

analyze the textual code to determine that the textual code performs a data type conversion; and

display a suggestion for avoiding the data type conversion performed by the textual code;

wherein said displaying the suggestion comprises displaying the suggestion during the editing of the program to provide the suggestion responsive to the addition of the textual code.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2009
From: HUDSON III, DUNCAN G.; GOSALIA, RISHI H.
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 022843/0351 →