{"action":"created","comment":{"url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/comments/32381749","id":32381749,"diff_hunk":"@@ -5,183 +5,241 @@\n \\usepackage{hyperref}\n \\usepackage{fullpage}\n \n-\\title{Arcade Learning Environment\\\\ Technical Manual}\n+\\title{Arcade Learning Environment\\\\ Technical Manual (v.0.5.0)}\n \\author{}\n \n \\begin{document}\n \n \\maketitle\n+\n+\\clearpage\n+\n \\tableofcontents\n \n-\\section{Overview}\n+\\clearpage\n \n-This document describes how to install the Arcade Learning Environment as well as its technical \n-details, including \n-command-line flags, how to use the shared library interface, and the FIFO protocol \n-for agents communicating with ALE via stdin/stdout.\n+\\section{Overview}\n \n-The following ways of interfacing with ALE are detailed in this document:\n+This document describes how to install the Arcade Learning Environment as well as how to use it.\n+We will present the different ways to implement an agent: \n+\\begin{enumerate}\n+  \\item \\textbf{Shared Library interface} (C++): Loads ALE as a shared library (Section \n+  \\ref{sec:shared_library_interface}).}\n+  \\item \\textbf{CTypes interface} (Python): Uses the ALE as an external Python library, \n+  allowing one to write ALE code by just importing the correspondent library. This is a very\n+  fast interface (Section \\ref{sec:python_interface}).\n+  \\item \\textbf{RL-Glue interface} (C/C++, Java, Python, Matlab or Lisp): Communicates\n+  with ALE via RL-Glue (Section \\ref{sec:rlglue_interface}).}\n+  \\item \\textbf{FIFO interface} (any language): Communicates with ALE through a text interface \n+  using \\verb+stdin/stdout+ (Section \\ref{sec:pipes_interface}).}.\n+\\end{enumerate}\n \n-\\begin{itemize}\n-  \\item{\\textbf{Shared library interface.} Loads ALE as a shared library (Section \\ref{sec:shared_library_interface}).}\n-  \\item{\\textbf{FIFO interface.} Communicates with ALE through a text interface (Section \\ref{sec:pipes_interface}).}\n-  \\item{\\textbf{RL-Glue interface.} Communicates with ALE via RL-Glue (Section \\ref{sec:rlglue_interface}).}\n-\\end{itemize}\n+We also discuss some sensible features of this environment, such as its stochasticity.\n \n-\\section{Installing}\n+\\section{Installing}\\label{sec:install}\n \n \\subsection{Requirements}\n \n-To build and run ALE, you will need:\n+The basic requirements to build and run the ALE are:\n \n \\begin{itemize}\n-  \\item{g++ / make}\n+  \\item \\verb+CMake / make / g+++\n+\\end{itemize}\n+Notice that in the past (previous to version 0.5.0) the recommended method to compile the ALE was\n+through Makefiles written by the ALE developers. This has changed and now we suggest everyone to\n+use CMake to generate a Makefile and then to compile the code using such generated Makefile. The\n+old Makefiles written for Linux and OS X (files \\verb+makefile.mac+ and \\verb+makefile.unix+) are\n+still available, but we do not support them anymore.\n+\n+The ALE provides some functionalities that are not activated by default, but if chosen the user is \n+required to use additional packages:\n+\\begin{itemize}\n+  \\item \\verb+SDL / RL-Glue+\n \\end{itemize}\n \n \\subsection{Installation/Compilation}\n \n-This tutorial assumes that you have extracted ALE to \\verb+ale_0_4+. Compiling\n-ALE on a UNIX machine is as simple as:\n+One first has to install the ALE requirements before compiling the ALE itself. Assuming that \n+\\verb+g+++ and \\verb+make+ are already available to the user, to install CMake and SDL is \n+straightforward, and it can be done through package managers in both OS X and Linux:\n \n+\\subsubsection*{OS X:}\n \\begin{verbatim}\n-> cd ale_0_4\n-ale_0_4> cp makefile.unix makefile\n-ale_0_4> make\n+  > brew install cmake\n+  > brew install sdl\n \\end{verbatim}\n \n-Alternate makefiles are provided for \n+\\subsubsection*{Linux (e.g.: Ubuntu):}\n+\\begin{verbatim}\n+  > sudo apt-get install cmake\n+  > sudo apt-get install libsdl1.2-dev\n+\\end{verbatim}\n \n-\\begin{itemize}\n-  \\item{Mac OS X: \\verb+makefile.mac+}\n-\\end{itemize}\n+To install RL-Glue, in both systems, we recommend the user to go to the RL-Glue \n+webpage\\footnote{\\url{http://glue.rl-community.org/wiki/Main_Page}} and to follow\n+the presented instructions.\n \n-\\subsection{Sample Agents}\n+We are going to assume the ALE was extracted to \\verb+ale_0_5+. Then, compiling it\n+with CMake is very simple (in both systems):\n+\\begin{verbatim}\n+  > cd ale_0_5\n+  ale_0_5> cmake .\n+  ale_0_5> make -j4\n+\\end{verbatim}\n \n-The following sample agents are available:\n+This compiles the code without SDL and RL-Glue. If one wants to compile ALE with such libraries it \n+is enough to change such flags in the file \\verb+ale_0_5/CMakeLists.txt+. More specifically, lines\n+3 and/or 4 have to be changed (by replacing the word \\verb+OFF+ by \\verb+ON+ in the\n+correspondent line):\n \n-\\begin{itemize}\n-  \\item{\\textbf{Java agents / FIFO interface.} Refer to the accompanying ALE Java Agent tutorial.}\n-  \\item{\\textbf{C++ agent / shared library interface.} See Section \\ref{sec:shared_library_interface} and \\\\ \n-    \\verb+ale_0_4/doc/examples/sharedLibraryInterfaceExample.cpp+.}\n-  \\item{\\textbf{C++ agent / RL-Glue interface.} See Section \\ref{sec:rlglue_interface} and \\\\\n-    \\verb+ale_0_4/doc/examples/RLGlueAgent.c+.}\n-\\end{itemize}\n+\\begin{verbatim}\n+  option(USE_SDL \"Use SDL\" OFF)\n+  option(USE_RLGLUE \"Use RL-Glue\" OFF)\n+\\end{verbatim}\n \n-\\section{Command-line Arguments}\n+Due to different operational systems and installed libraries, some errors mainly related to the SDL \n+paths being wrong have been reported. If you face such issues please look at \n+Section~\\ref{sec:troubleshooting}.\n \n-Command-line arguments are passed to ALE before the ROM filename. TODO: Provide a different\n-example to use the command-line arguments (if any, since we removed the internal agent).\n-%: For example, assuming you have the appropriate ROM file saved in the directory \n-%\\verb+ale_0_4/roms+, the following runs the internal random agent on Space Invaders:\n+\\section{Implementing an agent in C++ (shared libraries)}\n \n-%\\begin{verbatim}\n-%ale_0_4> ./ale -game_controller internal -player_agent random_agent  \n-%  roms/space_invaders.bin\n-%\\end{verbatim}\n+If one wants to implement an agent in C++, the best approach is to use the ALE shared library. \n+The shared library interface allows agents to directly access ALE via a class called\n+\\verb+ALEInterface+, defined in \\verb+ale_interface.hpp+. We are going to discuss here, \n+step-by-step how to implement an agent that plays randomly. A code containing an example is\n+available at \\verb+doc/examples/sharedLibraryInterfaceExample.cpp+.\n \n-The configuration file \\verb+ale_0_4/stellarc+ can also be used to set frequently used\n-command-line arguments. \n+This example is automatically compiled with the ALE when following the steps presented in\n+Section~\\ref{sec:install}. If one wants to disable such an option it is enough to replace \\verb+ON+ \n+by \\verb+OFF+ in the line below, present in file \\verb+ale_0_5/CMakeLists.txt+:\n \n-\\subsection{Main Arguments}\n-\\small{\n \\begin{verbatim}\n+  option(BUILD_EXAMPLES \"Build Example Agents\" ON)\n+\\end{verbatim}\n \n-  -help -- prints out help information\n+To implement an agent, the first step is to include the library \\verb+ale_interface.hpp+, either via \n+the relative path \\verb+#include ``path/from/your/code/ale_interface.hpp''+, or as a standard \n+header: \\verb+#include <ale_interface.hpp>+. If the later is chosen, remember to add the proper \n+path using the flag \\verb+-I+ when compiling the code.\n \n-  -game_controller <fifo|fifo_named|rlglue> -- selects an ALE interface\n-    default: unset\n+To instantiate the Arcade Learning Environment it is enough to do:\\\\\n \n-  -random_seed <###|time> -- picks the ALE random seed, or sets it to current time\n-    default: time\n+\\verb+ALEInterface ale;+\\\\\n \n-  -display_screen <true|false> -- if true and SDL is enabled, displays ALE screen\n-    default: false\n+Once the environment is initialized, it is now possible to set its arguments. This is done with the \n+functions \\verb+setBool(), setInt(), setFloat()+. The complete list of flags is available in \n+Section~\\ref{sec:arguments}. Just as an example, if one wants to set the environment's seed he must \n+do:\\\\\n \n-\\end{verbatim}\n-}\n+\\verb+ale.setInt(\"random_seed\", 123);+\\\\\n \n-\\subsection{Environment Arguments}\n+After setting all variables we can now load the game ROM:\\\\\n \n-\\small{\n-\\begin{verbatim}\n+\\verb+ale.loadROM(asterix.bin /*rom name*/);+\\\\","path":"doc/manual/manual.tex","position":192,"original_position":192,"commit_id":"a89380d7251c440fadc5c0b434ee24d7e6b47f76","original_commit_id":"a89380d7251c440fadc5c0b434ee24d7e6b47f76","user":{"login":"mhauskn","id":19769,"avatar_url":"https://avatars.githubusercontent.com/u/19769?v=3","gravatar_id":"","url":"https://api.github.com/users/mhauskn","html_url":"https://github.com/mhauskn","followers_url":"https://api.github.com/users/mhauskn/followers","following_url":"https://api.github.com/users/mhauskn/following{/other_user}","gists_url":"https://api.github.com/users/mhauskn/gists{/gist_id}","starred_url":"https://api.github.com/users/mhauskn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mhauskn/subscriptions","organizations_url":"https://api.github.com/users/mhauskn/orgs","repos_url":"https://api.github.com/users/mhauskn/repos","events_url":"https://api.github.com/users/mhauskn/events{/privacy}","received_events_url":"https://api.github.com/users/mhauskn/received_events","type":"User","site_admin":false},"body":"In-line comment is a bit weird. Why not put after the semicolon with standard //?","created_at":"2015-06-14T16:59:38Z","updated_at":"2015-06-14T16:59:38Z","html_url":"https://github.com/mgbellemare/Arcade-Learning-Environment/pull/61#discussion_r32381749","pull_request_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/61","_links":{"self":{"href":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/comments/32381749"},"html":{"href":"https://github.com/mgbellemare/Arcade-Learning-Environment/pull/61#discussion_r32381749"},"pull_request":{"href":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/61"}}},"pull_request":{"url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/61","id":37107708,"html_url":"https://github.com/mgbellemare/Arcade-Learning-Environment/pull/61","diff_url":"https://github.com/mgbellemare/Arcade-Learning-Environment/pull/61.diff","patch_url":"https://github.com/mgbellemare/Arcade-Learning-Environment/pull/61.patch","issue_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/issues/61","number":61,"state":"open","locked":false,"title":"Improving ALE manual (final version).","user":{"login":"mcmachado","id":8333434,"avatar_url":"https://avatars.githubusercontent.com/u/8333434?v=3","gravatar_id":"","url":"https://api.github.com/users/mcmachado","html_url":"https://github.com/mcmachado","followers_url":"https://api.github.com/users/mcmachado/followers","following_url":"https://api.github.com/users/mcmachado/following{/other_user}","gists_url":"https://api.github.com/users/mcmachado/gists{/gist_id}","starred_url":"https://api.github.com/users/mcmachado/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mcmachado/subscriptions","organizations_url":"https://api.github.com/users/mcmachado/orgs","repos_url":"https://api.github.com/users/mcmachado/repos","events_url":"https://api.github.com/users/mcmachado/events{/privacy}","received_events_url":"https://api.github.com/users/mcmachado/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-06-07T14:45:27Z","updated_at":"2015-06-14T16:59:38Z","closed_at":null,"merged_at":null,"merge_commit_sha":"877065dbf778a0bf30fc3e081c55a4511d1345e5","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/61/commits","review_comments_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/61/comments","review_comment_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/comments{/number}","comments_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/issues/61/comments","statuses_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/statuses/a89380d7251c440fadc5c0b434ee24d7e6b47f76","head":{"label":"mcmachado:dev","ref":"dev","sha":"a89380d7251c440fadc5c0b434ee24d7e6b47f76","user":{"login":"mcmachado","id":8333434,"avatar_url":"https://avatars.githubusercontent.com/u/8333434?v=3","gravatar_id":"","url":"https://api.github.com/users/mcmachado","html_url":"https://github.com/mcmachado","followers_url":"https://api.github.com/users/mcmachado/followers","following_url":"https://api.github.com/users/mcmachado/following{/other_user}","gists_url":"https://api.github.com/users/mcmachado/gists{/gist_id}","starred_url":"https://api.github.com/users/mcmachado/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mcmachado/subscriptions","organizations_url":"https://api.github.com/users/mcmachado/orgs","repos_url":"https://api.github.com/users/mcmachado/repos","events_url":"https://api.github.com/users/mcmachado/events{/privacy}","received_events_url":"https://api.github.com/users/mcmachado/received_events","type":"User","site_admin":false},"repo":{"id":36095968,"name":"Arcade-Learning-Environment","full_name":"mcmachado/Arcade-Learning-Environment","owner":{"login":"mcmachado","id":8333434,"avatar_url":"https://avatars.githubusercontent.com/u/8333434?v=3","gravatar_id":"","url":"https://api.github.com/users/mcmachado","html_url":"https://github.com/mcmachado","followers_url":"https://api.github.com/users/mcmachado/followers","following_url":"https://api.github.com/users/mcmachado/following{/other_user}","gists_url":"https://api.github.com/users/mcmachado/gists{/gist_id}","starred_url":"https://api.github.com/users/mcmachado/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mcmachado/subscriptions","organizations_url":"https://api.github.com/users/mcmachado/orgs","repos_url":"https://api.github.com/users/mcmachado/repos","events_url":"https://api.github.com/users/mcmachado/events{/privacy}","received_events_url":"https://api.github.com/users/mcmachado/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mcmachado/Arcade-Learning-Environment","description":"The Arcade Learning Environment (ALE) -- a platform for AI research.","fork":true,"url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment","forks_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/forks","keys_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/teams","hooks_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/hooks","issue_events_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/issues/events{/number}","events_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/events","assignees_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/assignees{/user}","branches_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/branches{/branch}","tags_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/tags","blobs_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/git/refs{/sha}","trees_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/statuses/{sha}","languages_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/languages","stargazers_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/stargazers","contributors_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/contributors","subscribers_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/subscribers","subscription_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/subscription","commits_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/commits{/sha}","git_commits_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/git/commits{/sha}","comments_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/comments{/number}","issue_comment_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/issues/comments{/number}","contents_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/contents/{+path}","compare_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/merges","archive_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/downloads","issues_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/issues{/number}","pulls_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/pulls{/number}","milestones_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/milestones{/number}","notifications_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/labels{/name}","releases_url":"https://api.github.com/repos/mcmachado/Arcade-Learning-Environment/releases{/id}","created_at":"2015-05-22T21:25:44Z","updated_at":"2015-05-22T21:25:45Z","pushed_at":"2015-06-13T15:55:56Z","git_url":"git://github.com/mcmachado/Arcade-Learning-Environment.git","ssh_url":"git@github.com:mcmachado/Arcade-Learning-Environment.git","clone_url":"https://github.com/mcmachado/Arcade-Learning-Environment.git","svn_url":"https://github.com/mcmachado/Arcade-Learning-Environment","homepage":null,"size":3164,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"mgbellemare:dev","ref":"dev","sha":"f7f8766ab70b8c989d83c79a6eabc1e4528f4be0","user":{"login":"mgbellemare","id":2350286,"avatar_url":"https://avatars.githubusercontent.com/u/2350286?v=3","gravatar_id":"","url":"https://api.github.com/users/mgbellemare","html_url":"https://github.com/mgbellemare","followers_url":"https://api.github.com/users/mgbellemare/followers","following_url":"https://api.github.com/users/mgbellemare/following{/other_user}","gists_url":"https://api.github.com/users/mgbellemare/gists{/gist_id}","starred_url":"https://api.github.com/users/mgbellemare/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mgbellemare/subscriptions","organizations_url":"https://api.github.com/users/mgbellemare/orgs","repos_url":"https://api.github.com/users/mgbellemare/repos","events_url":"https://api.github.com/users/mgbellemare/events{/privacy}","received_events_url":"https://api.github.com/users/mgbellemare/received_events","type":"User","site_admin":false},"repo":{"id":5816654,"name":"Arcade-Learning-Environment","full_name":"mgbellemare/Arcade-Learning-Environment","owner":{"login":"mgbellemare","id":2350286,"avatar_url":"https://avatars.githubusercontent.com/u/2350286?v=3","gravatar_id":"","url":"https://api.github.com/users/mgbellemare","html_url":"https://github.com/mgbellemare","followers_url":"https://api.github.com/users/mgbellemare/followers","following_url":"https://api.github.com/users/mgbellemare/following{/other_user}","gists_url":"https://api.github.com/users/mgbellemare/gists{/gist_id}","starred_url":"https://api.github.com/users/mgbellemare/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mgbellemare/subscriptions","organizations_url":"https://api.github.com/users/mgbellemare/orgs","repos_url":"https://api.github.com/users/mgbellemare/repos","events_url":"https://api.github.com/users/mgbellemare/events{/privacy}","received_events_url":"https://api.github.com/users/mgbellemare/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mgbellemare/Arcade-Learning-Environment","description":"The Arcade Learning Environment (ALE) -- a platform for AI research.","fork":false,"url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment","forks_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/forks","keys_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/teams","hooks_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/hooks","issue_events_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/issues/events{/number}","events_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/events","assignees_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/assignees{/user}","branches_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/branches{/branch}","tags_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/tags","blobs_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/git/refs{/sha}","trees_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/statuses/{sha}","languages_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/languages","stargazers_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/stargazers","contributors_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/contributors","subscribers_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/subscribers","subscription_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/subscription","commits_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/commits{/sha}","git_commits_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/git/commits{/sha}","comments_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/comments{/number}","issue_comment_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/issues/comments{/number}","contents_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/contents/{+path}","compare_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/merges","archive_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/downloads","issues_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/issues{/number}","pulls_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls{/number}","milestones_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/milestones{/number}","notifications_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/labels{/name}","releases_url":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/releases{/id}","created_at":"2012-09-15T01:42:13Z","updated_at":"2015-06-08T15:38:11Z","pushed_at":"2015-06-13T16:52:19Z","git_url":"git://github.com/mgbellemare/Arcade-Learning-Environment.git","ssh_url":"git@github.com:mgbellemare/Arcade-Learning-Environment.git","clone_url":"https://github.com/mgbellemare/Arcade-Learning-Environment.git","svn_url":"https://github.com/mgbellemare/Arcade-Learning-Environment","homepage":null,"size":3782,"stargazers_count":54,"watchers_count":54,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":29,"mirror_url":null,"open_issues_count":8,"forks":29,"open_issues":8,"watchers":54,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/61"},"html":{"href":"https://github.com/mgbellemare/Arcade-Learning-Environment/pull/61"},"issue":{"href":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/issues/61"},"comments":{"href":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/issues/61/comments"},"review_comments":{"href":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/61/comments"},"review_comment":{"href":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/pulls/61/commits"},"statuses":{"href":"https://api.github.com/repos/mgbellemare/Arcade-Learning-Environment/statuses/a89380d7251c440fadc5c0b434ee24d7e6b47f76"}}}}