IP Library Granted Patent US 10,437,921
Granted Patent B2
US 10,437,921 · App. 15/709,087 · Granted Oct 8, 2019

Methods and systems for invoking code in a different programming language

Inventors: Stephen Wolfram (Concord, MA); Christopher Wolfram (Concord, MA); Joel Klein (Urbana, IL); Jan Poeschko (Chicago, IL)
Assignee: Wolfram Research, Inc.
G06F17/243G06F3/0482G06F8/315G06F8/38G06F8/60G06F8/75G06F17/2247H04L67/10G06F17/28
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 10,437,921
App. No.
15/709,087
Granted
Oct 8, 2019
Kind
B2
Abstract

Programmer input in a first programming language is received, the programmer input including i) a built-in function of the first programming language, the built-in function corresponding to generating code for remotely invoking an electronic object deployed, or to be deployed, on a server via a communication network, and ii) a parameter that indicates the electronic object, wherein the code for invoking the electronic object comprises a) code in a second programming language different than the first programming language, or b) code in a markup language interpretable by a web browser. The programmer input is evaluated to: i) generate the code for remotely invoking the electronic object deployed, or to be deployed, on the server, and ii) if the electronic object is not yet deployed on the server, deploy the electronic object on the server. The code for remotely invoking the electronic object is generated for inclusion in a file corresponding to a web page or a program written in the second programming language.

Claims (54)

1. A method, comprising:

receiving, at one or more computers, programmer input in a first programming language, the programmer input including i) a built-in function of the first programming language, the built-in function corresponding to generating code for remotely invoking an electronic object deployed, or to be deployed, on a server via a communication network, and ii) a parameter that indicates the electronic object, wherein the code for invoking the electronic object comprises a) code in a second programming language different than the first programming language, or b) code in a markup language interpretable by a web browser; and

evaluating, at one or more computers, the programmer input to:

i) generate the code for remotely invoking the electronic object deployed, or to be deployed, on the server, and

ii) if the electronic object is not yet deployed on the server, deploy the electronic object on the server;

wherein the code for remotely invoking the electronic object is generated for inclusion in a file corresponding to a web page or a program written in the second programming language.

2. The method of claim 1 , wherein evaluating the programmer input comprises evaluating the programmer input to generate the code for remotely invoking the electronic object to employ a handle to the electronic object to invoke the electronic object.

3. The method of claim 2 , wherein the parameter that indicates the electronic object includes the handle to the electronic object.

4. The method of claim 1 , wherein:

receiving the programmer input in the first programming language comprises receiving programmer input, in the first programming language, corresponding to deploying the electronic object to the server; and

evaluating the programmer input comprises evaluating the programmer input to deploy the electronic object to the server so that the electronic object is accessible via the communication network.

5. The method of claim 4 , wherein:

the built-in function of the first programming language is a first built-in function; and

receiving the programmer input corresponding to deploying the electronic object to the server includes receiving a second built-in function of the first programming language, the second built-in function corresponding to deploying electronic objects to the server.

6. The method of claim 4 , wherein:

receiving the programmer input in the first programming language comprises receiving programmer input, in the first programming language, that defines functionality of the electronic object when the electronic object is evaluated by the server.

7. The method of claim 1 , wherein the electronic object includes code in a third programming language different than the first programming language.

8. The method of claim 7 , wherein:

the code for invoking the electronic object comprises code in the second programming language; and

the third programming language is different than the second programming language.

9. The method of claim 1 , wherein the code for invoking the electronic object comprises one or more of i) Hypertext Markup Language (HTML) elements, ii) Extensible Hypertext Markup Language (XHTML) elements, iii) Extensible Markup Language (XML) elements, and iv) style sheets.

10. The method of claim 1 , wherein the code for invoking the electronic object comprises, at least, one of i) Java code, ii) JavaScript code, iii) Python code, iv) C++ code, v) Objective C code, and vi) Xcode code.

11. A system, comprising:

one or more processors; and

one or more memory devices coupled to the one or more processors, the one or more memories storing machine readable instructions that, when executed by the one or more processors, cause the one or more processors to:

receive programmer input in a first programming language, the programmer input including i) a built-in function of the first programming language, the built-in function corresponding to generating code for remotely invoking an electronic object deployed, or to be deployed, on a server via a communication network, and ii) a parameter that indicates the electronic object, wherein the code for invoking the electronic object comprises a) code in a second programming language different than the first programming language, or b) code in a markup language interpretable by a web browser; and

evaluate the programmer input to:

i) generate the code for remotely invoking the electronic object deployed, or to be deployed, on the server, and

ii) if the electronic object is not yet deployed on the server, deploy the electronic object on the server;

wherein the code for remotely invoking the electronic object is generated for inclusion in a file corresponding to a web page or a program written in the second programming language.

12. The system of claim 11 , wherein the one or more memories further store machine readable instructions that, when executed by the one or more processors, cause the one or more processors to evaluate the programmer input to generate the code for remotely invoking the electronic object to employ a handle to the electronic object to invoke the electronic object.

13. The system of claim 12 , wherein the parameter that indicates the electronic object includes the handle to the electronic object.

14. The system of claim 11 , wherein:

the programmer input in the first programming language includes code corresponding to deploying the electronic object to the server; and

the one or more memories further store machine readable instructions that, when executed by the one or more processors, cause the one or more processors to evaluate the programmer input to deploy the electronic object to the server so that the electronic object is accessible via the communication network.

15. The system of claim 14 , wherein:

the built-in function of the first programming language is a first built-in function; and

the programmer input in the first programming language includes a second built-in function of the first programming language, the second built-in function corresponding to deploying electronic objects to the server.

16. The system of claim 14 , wherein:

the programmer input in the first programming language comprises programmer input that defines functionality of the electronic object when the electronic object is evaluated by the server.

17. The system of claim 11 , wherein the electronic object includes code in a third programming language different than the first programming language.

18. The system of claim 17 , wherein:

the code for invoking the electronic object comprises code in the second programming language; and

the third programming language is different than the second programming language.

19. The system of claim 11 , wherein the code for invoking the electronic object comprises one or more of i) Hypertext Markup Language (HTML) elements, ii) Extensible Hypertext Markup Language (XHTML) elements, iii) Extensible Markup Language (XML) elements, and iv) style sheets.

20. The system of claim 11 , wherein the code for invoking the electronic object comprises, at least, one of i) Java code, ii) JavaScript code, iii) Python code, iv) C++ code, v) Objective C code, and vi) Xcode code.

21. The system of claim 11 , further comprising:

the server.

22. A tangible, non-transitory computer readable medium, or media, storing machine readable instructions that, when executed by one or more computer processors, cause the one or more computer processors to:

receive programmer input in a first programming language, the programmer input including i) a built-in function of the first programming language, the built-in function corresponding to generating code for remotely invoking an electronic object deployed, or to be deployed, on a server via a communication network, and ii) a parameter that indicates the electronic object, wherein the code for invoking the electronic object comprises a) code in a second programming language different than the first programming language, or b) code in a markup language interpretable by a web browser; and

evaluate the programmer input to:

i) generate the code for remotely invoking the electronic object deployed, or to be deployed, on the server, and

ii) if the electronic object is not yet deployed on the server, deploy the electronic object on the server;

wherein the code for remotely invoking the electronic object is generated for inclusion in a file corresponding to a web page or a program written in the second programming language.

Continuity (5)
Continuation 15485923 · Apr 12, 2017
Continuation 15483121 · Apr 10, 2017
Continuation 14549541 · Nov 20, 2014
Provisional Application 61906888 · Nov 20, 2013
Related Publication 20180004721A1 · Jan 4, 2018