Ideone is a pastebin, as well as an online compiler and debugger. This project is a Pythonic binding to the Ideone API.
Installation
The Ideone API can also be installed with pip from PyPI using pip install ideone. Alternately, you can clone the repository and use setup.py like so
git clone https://github.com/jschaf/ideone-api.git cd ideone-api python setup.py install
Getting Started
You need an Ideone account and an API password which you can create at the Ideone registration page. After that, open up a Python shell and begin hacking.
>>> from ideone import Ideone
>>> i = Ideone('username', 'APIpassword')
>>> i.test()
{'answerToLifeAndEverything': 42,
'error': "OK",
'moreHelp': "ideone.com",
'oOok': True,
'pi': 3.14}
>>> i.create_submission('print(42)', language_name='python')
{'error': 'OK',
'link' : 'LsSbo'}
>>> i.create_submission('print(42)', language_id=166)
{'error': 'OK',
'link' : 'FDfrM'}
>>> i.submission_details('LsSbo')
{'cmpinfo': "",
'date': "2011-04-18 15:24:14",
'error': "OK",
'input': "",
'langId': 116,
'langName': "Python 3",
'langVersion': "python-3.1.2",
'memory': 5852,
'output': 42,
'public': True,
'result': 15,
'signal': 0,
'source': "print(42)",
'status': 0,
'stderr': "",
'time': 0.02}
>>> i.languages()
{'error': 'OK',
'languages': {1: "C++ (gcc-4.3.4)",
2: "Pascal (gpc) (gpc 20070904)",
...
...
...
125: "Falcon (falcon-0.9.6.6)"}}
Supported Languages
As of 27 May 2012, Ideone supports the following languages. You don’t need to use the full names for language_name. The simplified name works just as well with this API.
Index |
Ideone Full Name |
Simplified Name |
|---|---|---|
1 |
C++ (gcc-4.3.4) |
C++ |
2 |
Pascal (gpc) (gpc 20070904) |
Pascal |
3 |
Perl (perl 5.12.1) |
Perl |
4 |
Python (python 2.7.2) |
Python |
5 |
Fortran (gfortran-4.3.4) |
Fortran |
6 |
Whitespace (wspace 0.3) |
Whitespace |
7 |
Ada (gnat-4.3.2) |
Ada |
8 |
Ocaml (ocamlopt 3.10.2) |
Ocaml |
9 |
Intercal (c-intercal 28.0-r1) |
Intercal |
10 |
Java (sun-jdk-1.6.0.31) |
Java |
11 |
C (gcc-4.3.4) |
C |
12 |
Brainf**k (bff-1.0.3.1) |
Brainf**k |
13 |
Assembler (nasm-2.07) |
Assembler |
14 |
CLIPS (clips 6.24) |
CLIPS |
15 |
Prolog (swi) (swipl 5.6.64) |
Prolog |
16 |
Icon (iconc 9.4.3) |
Icon |
17 |
Ruby (ruby-1.9.2) |
Ruby |
19 |
Pike (pike 7.6.86) |
Pike |
21 |
Haskell (ghc-6.8.2) |
Haskell |
22 |
Pascal (fpc) (fpc 2.2.0) |
Pascal |
23 |
Smalltalk (gst 3.1) |
Smalltalk |
25 |
Nice (nicec 0.9.6) |
Nice |
26 |
Lua (luac 5.1.4) |
Lua |
27 |
C# (mono-2.8) |
C# |
28 |
Bash (bash 4.0.35) |
Bash |
29 |
PHP (php 5.2.11) |
PHP |
30 |
Nemerle (ncc 0.9.3) |
Nemerle |
32 |
Common Lisp (clisp) (clisp 2.47) |
Common Lisp |
33 |
Scheme (guile) (guile 1.8.5) |
Scheme |
34 |
C99 strict (gcc-4.3.4) |
C99 strict |
35 |
JavaScript (rhino) (rhino-1.6.5) |
JavaScript |
36 |
Erlang (erl-5.7.3) |
Erlang |
38 |
Tcl (tclsh 8.5.7) |
Tcl |
39 |
Scala (scala-2.9.1) |
Scala |
40 |
SQL (sqlite3-3.7.3) |
SQL |
43 |
Objective-C (gcc-4.5.1) |
Objective-C |
44 |
C++0x (gcc-4.5.1) |
C++0x |
45 |
Assembler (gcc-4.3.4) |
Assembler |
54 |
Perl 6 (rakudo-2010.08) |
Perl 6 |
55 |
Java7 (sun-jdk-1.7.0_03) |
Java7 |
62 |
Text (text 6.10) |
Text |
101 |
VB.NET (mono-2.4.2.3) |
VB.NET |
102 |
D (dmd) (dmd-2.042) |
D |
104 |
AWK (gawk) (gawk-3.1.6) |
AWK |
105 |
AWK (mawk) (mawk-1.3.3) |
AWK |
106 |
COBOL 85 (tinycobol-0.65.9) |
COBOL 85 |
107 |
Forth (gforth-0.7.0) |
Forth |
108 |
Prolog (gnu) (gprolog-1.3.1) |
Prolog |
110 |
bc (bc-1.06.95) |
bc |
111 |
Clojure (clojure 1.3) |
Clojure |
112 |
JavaScript (spidermonkey) (spidermonkey-1.7) |
JavaScript |
114 |
Go (gc-2010-07-14) |
Go |
115 |
Unlambda (unlambda-2.0.0) |
Unlambda |
116 |
Python 3 (python-3.1.2) |
Python 3 |
117 |
R (R-2.11.1) |
R |
118 |
COBOL (open-cobol-1.0) |
COBOL |
119 |
Oz (mozart-1.4.0) |
Oz |
121 |
Groovy (groovy-1.8.6) |
Groovy |
122 |
Nimrod (nimrod-0.8.8) |
Nimrod |
123 |
Factor (factor-0.93) |
Factor |
124 |
F# (fsharp-2.0.0) |
F# |
125 |
Falcon (falcon-0.9.6.6) |
Falcon |
Metadata
Release files for ideone 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| ideone-0.2.0.tar.gz | 7.7 kB | Without provenance | Details |
Release files / ideone-0.2.0.tar.gz
| Download URL | ideone-0.2.0.tar.gz |
|---|---|
| Size | 7.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0afb0723b82fb2b030d3183505332e7bf225a0ce147a4c992dcf55e01fce9b55
|
|
BLAKE2b-256 checksum How to use checksums |
b0c9f0b5b1554da4d9179acd4502cfae3e314282f8276b5f1f7dde8dadf08496
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for ideone 0.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.