[Toss-devel-svn] SF.net SVN: toss:[1357] trunk/Toss
Status: Beta
Brought to you by:
lukaszkaiser
|
From: <luk...@us...> - 2011-03-13 17:36:54
|
Revision: 1357
http://toss.svn.sourceforge.net/toss/?rev=1357&view=rev
Author: lukaszkaiser
Date: 2011-03-13 17:36:46 +0000 (Sun, 13 Mar 2011)
Log Message:
-----------
Web work, async moves, chess correction.
Modified Paths:
--------------
trunk/Toss/WebClient/Connect.js
trunk/Toss/WebClient/Main.js
trunk/Toss/examples/Chess.toss
trunk/Toss/www/docs.xml
trunk/Toss/www/index.xml
trunk/Toss/www/navigation.xml
trunk/Toss/www/styles/screen.css
trunk/Toss/www/xsl/include/common.xsl
Added Paths:
-----------
trunk/Toss/www/develop.xml
Modified: trunk/Toss/WebClient/Connect.js
===================================================================
--- trunk/Toss/WebClient/Connect.js 2011-03-13 00:09:53 UTC (rev 1356)
+++ trunk/Toss/WebClient/Connect.js 2011-03-13 17:36:46 UTC (rev 1357)
@@ -28,6 +28,8 @@
var PAYOFF_STR = ""
var PLAYER_STR = ""
+var ASYNC_REQ_PENDING = 0;
+
// Helper function: sign of a number.
function sign (x) {
if (x > 0.01) { return (1); }
@@ -76,19 +78,21 @@
}
// Send [msg] to server asynchronously, ignore response text.
-function async_server_msg (msg) {
+function async_server_msg (msg, f) {
var xml_request = new XMLHttpRequest ();
xml_request.open ('POST', 'Handler.py', true);
xml_request.setRequestHeader ('Content-Type',
'application/x-www-form-urlencoded; charset=UTF-8');
xml_request.onreadystatechange = function () {
if (xml_request.readyState == 4) {
+ ASYNC_REQ_PENDING -= 1;
resp = xml_request.responseText;
if (resp.indexOf ("MOD_PYTHON ERROR") > -1) {
alert (resp.substring(resp.indexOf("Traceback")));
- }
+ } else { f(resp) };
}
};
+ ASYNC_REQ_PENDING += 1;
xml_request.send (msg);
}
@@ -98,10 +102,15 @@
}
// Send [msg] to server attaching prefix '[cmd]#' async., ignore response.
-function async_srv (cmd, msg) {
- return (async_server_msg (cmd + '#' + msg));
+function async_srv_ignore (cmd, msg) {
+ return (async_server_msg (cmd + '#' + msg, function(x) { } ));
}
+// Send [msg] to server attaching prefix '[cmd]#' async., run f on return.
+function async_srv (cmd, msg, f) {
+ return (async_server_msg (cmd + '#' + msg, f ));
+}
+
// Strip [c1] and [c2] from beginning and end of [str].
function strip (c1, c2, str) {
if (str.length == 0) return (str);
Modified: trunk/Toss/WebClient/Main.js
===================================================================
--- trunk/Toss/WebClient/Main.js 2011-03-13 00:09:53 UTC (rev 1356)
+++ trunk/Toss/WebClient/Main.js 2011-03-13 17:36:46 UTC (rev 1357)
@@ -119,6 +119,7 @@
// Handler for clicks on elements.
function handle_elem_click (elem) {
+ if (ASYNC_REQ_PENDING != 0) { return; }
var moves = get_moves (elem, LAST_CLICKED_ELEM);
if (moves.length == 0) {
LAST_CLICKED_ELEM = "";
@@ -209,6 +210,7 @@
}
function play_click (game, play_id, pi) {
+ document.getElementById("opponents").style.display = "none";
list_plays (game);
game_click (game);
document.getElementById ("game-title").innerHTML = game;
@@ -232,7 +234,11 @@
return;
}
document.getElementById("working").style.display = "block";
- var info = srv("MOVE_PLAY", 'c, '+ CUR_MOVE +', '+ play_py_id (CUR_PLAY_I));
+ async_srv("MOVE_PLAY", 'c, '+ CUR_MOVE +', '+ play_py_id (CUR_PLAY_I),
+ make_move_continue);
+}
+
+function make_move_continue (info) {
set_info (info);
CUR_MOVE = "";
CUR_ELEMS = [];
@@ -242,14 +248,15 @@
disp_name(PLAYS[CUR_PLAY_I][PLAYER_STR]);
document.getElementById("working").style.display = "none";
full_redraw ();
- async_srv ("UPD_SVG", play_py_id(CUR_PLAY_I) + ", " + svg_string());
+ async_srv_ignore ("UPD_SVG", play_py_id(CUR_PLAY_I) + ", " + svg_string());
var old_li = document.getElementById ("plays-list-" + GAME_NAME +
"-elem-" + CUR_PLAY_I);
var li = new_play_item (GAME_NAME, CUR_PLAY_I);
old_li.parentNode.replaceChild (li, old_li);
if (PLAYS[CUR_PLAY_I][PLAYER_STR] == "computer") {
- var m = suggest_move ();
- if (m != "") { make_move (); }
+ //var m = suggest_move ();
+ //if (m != "") { make_move (); }
+ suggest_move_async (make_move);
}
}
@@ -380,7 +387,7 @@
PLAYS.push(p);
set_info(info_nbr.substring(info_idx+1));
full_redraw ();
- async_srv ("UPD_SVG", play_py_id(CUR_PLAY_I) + ", " + svg_string());
+ async_srv_ignore ("UPD_SVG", play_py_id(CUR_PLAY_I) + ", " + svg_string());
li = new_play_item (GAME_NAME, CUR_PLAY_I);
document.getElementById("plays-list-" + GAME_NAME).appendChild(li);
}
@@ -400,6 +407,25 @@
return (m);
}
+function decrease_moving (n) {
+ document.getElementById("working").innerHTML = "Moving in " + n + " ...";
+ if (n > 0) {
+ setTimeout("decrease_moving(" + (n-1) + ")", 1000);
+ }
+}
+
+function suggest_move_async (f) {
+ document.getElementById("working").innerHTML = "Moving in 5 ...";
+ document.getElementById("working").style.display = "block";
+ setTimeout("decrease_moving(4)", 1000)
+ var fm = function (m) {
+ document.getElementById("working").style.display = "none";
+ document.getElementById("working").innerHTML = "Working...";
+ if (m != "") { show_move (m); f() }
+ };
+ async_srv("SUGGEST", 'c, '+ play_py_id (CUR_PLAY_I), fm);
+}
+
function suggest_move_better () {
document.getElementById("working").innerHTML = "Calculating move...";
document.getElementById("working").style.display = "block";
Modified: trunk/Toss/examples/Chess.toss
===================================================================
--- trunk/Toss/examples/Chess.toss 2011-03-13 00:09:53 UTC (rev 1356)
+++ trunk/Toss/examples/Chess.toss 2011-03-13 17:36:46 UTC (rev 1357)
@@ -49,7 +49,7 @@
wP
.
-" emb w, b post not CheckW()
+" emb w, b pre not IsEight(a2) post not CheckW()
RULE BlackPawnMove:
[ | | ] "
...
@@ -61,7 +61,7 @@
...
bP
-" emb w, b post not CheckB()
+" emb w, b pre not IsFirst(a1) post not CheckB()
RULE WhitePawnMoveDbl:
[ | | ] "
@@ -98,7 +98,16 @@
[ a, b | wP { a }; b { b } | - ]
->
[ a, b | wP { b } | - ]
- emb w, b pre ex z (C(a, z) and (R(z, b) or R(b, z))) post not CheckW()
+ emb w, b
+ pre not IsEight(b) and ex z (C(a, z) and (R(z, b) or R(b, z)))
+ post not CheckW()
+RULE WhitePawnBeatPromote:
+ [ a, b | wP { a }; b { b } | - ]
+ ->
+ [ a, b | wQ { b } | - ]
+ emb w, b
+ pre IsEight(b) and ex z (C(a, z) and (R(z, b) or R(b, z)))
+ post not CheckW()
RULE WhitePawnBeatRDbl:
[ | | ] "
...
@@ -135,7 +144,16 @@
[ a, b | bP { a }; w { b } | - ]
->
[ a, b | bP { b } | - ]
- emb w, b pre ex z (C(z, a) and (R(z, b) or R(b, z))) post not CheckB()
+ emb w, b
+ pre not IsFirst(b) and ex z (C(z, a) and (R(z, b) or R(b, z)))
+ post not CheckB()
+RULE BlackPawnBeatPromote:
+ [ a, b | bP { a }; w { b } | - ]
+ ->
+ [ a, b | bQ { b } | - ]
+ emb w, b
+ pre IsFirst(b) and ex z (C(z, a) and (R(z, b) or R(b, z)))
+ post not CheckB()
RULE BlackPawnBeatRDbl:
[ | | ] "
...
@@ -304,6 +322,7 @@
[WhitePawnMove -> 1];
[WhitePawnMoveDbl -> 1];
[WhitePawnBeat -> 1];
+ [WhitePawnBeatPromote -> 1];
[WhitePawnBeatLDbl -> 1];
[WhitePawnBeatRDbl -> 1];
[WhitePawnPromote -> 1];
@@ -327,6 +346,7 @@
[BlackPawnMove -> 0];
[BlackPawnMoveDbl -> 0];
[BlackPawnBeat -> 0];
+ [BlackPawnBeatPromote -> 0];
[BlackPawnBeatLDbl -> 0];
[BlackPawnBeatRDbl -> 0];
[BlackPawnPromote -> 0];
@@ -350,6 +370,7 @@
[WhitePawnMove -> 3];
[WhitePawnMoveDbl -> 3];
[WhitePawnBeat -> 3];
+ [WhitePawnBeatPromote -> 3];
[WhitePawnBeatLDbl -> 3];
[WhitePawnBeatRDbl -> 3];
[WhitePawnPromote -> 3];
@@ -372,6 +393,7 @@
[BlackPawnMove -> 2];
[BlackPawnMoveDbl -> 2];
[BlackPawnBeat -> 2];
+ [BlackPawnBeatPromote -> 2];
[BlackPawnBeatLDbl -> 2];
[BlackPawnBeatRDbl -> 2];
[BlackPawnPromote -> 2];
@@ -395,6 +417,7 @@
[WhitePawnMove -> 5];
[WhitePawnMoveDbl -> 5];
[WhitePawnBeat -> 5];
+ [WhitePawnBeatPromote -> 5];
[WhitePawnBeatLDbl -> 5];
[WhitePawnBeatRDbl -> 5];
[WhitePawnPromote -> 5];
@@ -417,6 +440,7 @@
[BlackPawnMove -> 4];
[BlackPawnMoveDbl -> 4];
[BlackPawnBeat -> 4];
+ [BlackPawnBeatPromote -> 4];
[BlackPawnBeatLDbl -> 4];
[BlackPawnBeatRDbl -> 4];
[BlackPawnPromote -> 4];
@@ -440,6 +464,7 @@
[WhitePawnMove -> 7];
[WhitePawnMoveDbl -> 7];
[WhitePawnBeat -> 7];
+ [WhitePawnBeatPromote -> 7];
[WhitePawnBeatLDbl -> 7];
[WhitePawnBeatRDbl -> 7];
[WhitePawnPromote -> 7];
@@ -461,6 +486,7 @@
[BlackPawnMove -> 6];
[BlackPawnMoveDbl -> 6];
[BlackPawnBeat -> 6];
+ [BlackPawnBeatPromote -> 6];
[BlackPawnBeatLDbl -> 6];
[BlackPawnBeatRDbl -> 6];
[BlackPawnPromote -> 6];
@@ -484,6 +510,7 @@
[WhitePawnMove -> 9];
[WhitePawnMoveDbl -> 9];
[WhitePawnBeat -> 9];
+ [WhitePawnBeatPromote -> 9];
[WhitePawnBeatLDbl -> 9];
[WhitePawnBeatRDbl -> 9];
[WhitePawnPromote -> 9];
@@ -507,6 +534,7 @@
[BlackPawnMove -> 8];
[BlackPawnMoveDbl -> 8];
[BlackPawnBeat -> 8];
+ [BlackPawnBeatPromote -> 8];
[BlackPawnBeatLDbl -> 8];
[BlackPawnBeatRDbl -> 8];
[BlackPawnPromote -> 8];
@@ -529,6 +557,7 @@
[WhitePawnMove -> 11];
[WhitePawnMoveDbl -> 11];
[WhitePawnBeat -> 11];
+ [WhitePawnBeatPromote -> 11];
[WhitePawnBeatLDbl -> 11];
[WhitePawnBeatRDbl -> 11];
[WhitePawnPromote -> 11];
@@ -551,6 +580,7 @@
[BlackPawnMove -> 10];
[BlackPawnMoveDbl -> 10];
[BlackPawnBeat -> 10];
+ [BlackPawnBeatPromote -> 10];
[BlackPawnBeatLDbl -> 10];
[BlackPawnBeatRDbl -> 10];
[BlackPawnPromote -> 10];
@@ -573,6 +603,7 @@
[WhitePawnMove -> 13];
[WhitePawnMoveDbl -> 13];
[WhitePawnBeat -> 13];
+ [WhitePawnBeatPromote -> 13];
[WhitePawnBeatLDbl -> 13];
[WhitePawnBeatRDbl -> 13];
[WhitePawnPromote -> 13];
@@ -595,6 +626,7 @@
[BlackPawnMove -> 12];
[BlackPawnMoveDbl -> 12];
[BlackPawnBeat -> 12];
+ [BlackPawnBeatPromote -> 12];
[BlackPawnBeatLDbl -> 12];
[BlackPawnBeatRDbl -> 12];
[BlackPawnPromote -> 12];
@@ -617,6 +649,7 @@
[WhitePawnMove -> 15];
[WhitePawnMoveDbl -> 15];
[WhitePawnBeat -> 15];
+ [WhitePawnBeatPromote -> 15];
[WhitePawnBeatLDbl -> 15];
[WhitePawnBeatRDbl -> 15];
[WhitePawnPromote -> 15];
@@ -638,6 +671,7 @@
[BlackPawnMove -> 14];
[BlackPawnMoveDbl -> 14];
[BlackPawnBeat -> 14];
+ [BlackPawnBeatPromote -> 14];
[BlackPawnBeatLDbl -> 14];
[BlackPawnBeatRDbl -> 14];
[BlackPawnPromote -> 14];
@@ -660,6 +694,7 @@
[WhitePawnMove -> 17];
[WhitePawnMoveDbl -> 17];
[WhitePawnBeat -> 17];
+ [WhitePawnBeatPromote -> 17];
[WhitePawnBeatLDbl -> 17];
[WhitePawnBeatRDbl -> 17];
[WhitePawnPromote -> 17];
@@ -683,6 +718,7 @@
[BlackPawnMove -> 16];
[BlackPawnMoveDbl -> 16];
[BlackPawnBeat -> 16];
+ [BlackPawnBeatPromote -> 16];
[BlackPawnBeatLDbl -> 16];
[BlackPawnBeatRDbl -> 16];
[BlackPawnPromote -> 16];
@@ -705,6 +741,7 @@
[WhitePawnMove -> 19];
[WhitePawnMoveDbl -> 19];
[WhitePawnBeat -> 19];
+ [WhitePawnBeatPromote -> 19];
[WhitePawnBeatLDbl -> 19];
[WhitePawnBeatRDbl -> 19];
[WhitePawnPromote -> 19];
@@ -727,6 +764,7 @@
[BlackPawnMove -> 18];
[BlackPawnMoveDbl -> 18];
[BlackPawnBeat -> 18];
+ [BlackPawnBeatPromote -> 18];
[BlackPawnBeatLDbl -> 18];
[BlackPawnBeatRDbl -> 18];
[BlackPawnPromote -> 18];
@@ -749,6 +787,7 @@
[WhitePawnMove -> 21];
[WhitePawnMoveDbl -> 21];
[WhitePawnBeat -> 21];
+ [WhitePawnBeatPromote -> 21];
[WhitePawnBeatLDbl -> 21];
[WhitePawnBeatRDbl -> 21];
[WhitePawnPromote -> 21];
@@ -771,6 +810,7 @@
[BlackPawnMove -> 20];
[BlackPawnMoveDbl -> 20];
[BlackPawnBeat -> 20];
+ [BlackPawnBeatPromote -> 20];
[BlackPawnBeatLDbl -> 20];
[BlackPawnBeatRDbl -> 20];
[BlackPawnPromote -> 20];
@@ -793,6 +833,7 @@
[WhitePawnMove -> 23];
[WhitePawnMoveDbl -> 23];
[WhitePawnBeat -> 23];
+ [WhitePawnBeatPromote -> 23];
[WhitePawnBeatLDbl -> 23];
[WhitePawnBeatRDbl -> 23];
[WhitePawnPromote -> 23];
@@ -814,6 +855,7 @@
[BlackPawnMove -> 22];
[BlackPawnMoveDbl -> 22];
[BlackPawnBeat -> 22];
+ [BlackPawnBeatPromote -> 22];
[BlackPawnBeatLDbl -> 22];
[BlackPawnBeatRDbl -> 22];
[BlackPawnPromote -> 22];
@@ -836,6 +878,7 @@
[WhitePawnMove -> 25];
[WhitePawnMoveDbl -> 25];
[WhitePawnBeat -> 25];
+ [WhitePawnBeatPromote -> 25];
[WhitePawnBeatLDbl -> 25];
[WhitePawnBeatRDbl -> 25];
[WhitePawnPromote -> 25];
@@ -859,6 +902,7 @@
[BlackPawnMove -> 24];
[BlackPawnMoveDbl -> 24];
[BlackPawnBeat -> 24];
+ [BlackPawnBeatPromote -> 24];
[BlackPawnBeatLDbl -> 24];
[BlackPawnBeatRDbl -> 24];
[BlackPawnPromote -> 24];
@@ -880,6 +924,7 @@
[WhitePawnMove -> 27];
[WhitePawnMoveDbl -> 27];
[WhitePawnBeat -> 27];
+ [WhitePawnBeatPromote -> 27];
[WhitePawnBeatLDbl -> 27];
[WhitePawnBeatRDbl -> 27];
[WhitePawnPromote -> 27];
@@ -902,6 +947,7 @@
[BlackPawnMove -> 26];
[BlackPawnMoveDbl -> 26];
[BlackPawnBeat -> 26];
+ [BlackPawnBeatPromote -> 26];
[BlackPawnBeatLDbl -> 26];
[BlackPawnBeatRDbl -> 26];
[BlackPawnPromote -> 26];
@@ -923,6 +969,7 @@
[WhitePawnMove -> 29];
[WhitePawnMoveDbl -> 29];
[WhitePawnBeat -> 29];
+ [WhitePawnBeatPromote -> 29];
[WhitePawnBeatLDbl -> 29];
[WhitePawnBeatRDbl -> 29];
[WhitePawnPromote -> 29];
@@ -945,6 +992,7 @@
[BlackPawnMove -> 28];
[BlackPawnMoveDbl -> 28];
[BlackPawnBeat -> 28];
+ [BlackPawnBeatPromote -> 28];
[BlackPawnBeatLDbl -> 28];
[BlackPawnBeatRDbl -> 28];
[BlackPawnPromote -> 28];
@@ -966,6 +1014,7 @@
[WhitePawnMove -> 31];
[WhitePawnMoveDbl -> 31];
[WhitePawnBeat -> 31];
+ [WhitePawnBeatPromote -> 31];
[WhitePawnBeatLDbl -> 31];
[WhitePawnBeatRDbl -> 31];
[WhitePawnPromote -> 31];
@@ -987,6 +1036,7 @@
[BlackPawnMove -> 30];
[BlackPawnMoveDbl -> 30];
[BlackPawnBeat -> 30];
+ [BlackPawnBeatPromote -> 30];
[BlackPawnBeatLDbl -> 30];
[BlackPawnBeatRDbl -> 30];
[BlackPawnPromote -> 30];
Added: trunk/Toss/www/develop.xml
===================================================================
--- trunk/Toss/www/develop.xml (rev 0)
+++ trunk/Toss/www/develop.xml 2011-03-13 17:36:46 UTC (rev 1357)
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE lecture SYSTEM "xsl/xhtml1-lat1.ent">
+
+<?xml-stylesheet type="text/xsl" href="xsl/main.xsl" charset="UTF-8"?>
+
+<personal>
+ <title lang="en">Develop Toss</title>
+ <title lang="de">Toss Ausbauen</title>
+ <history>
+ <link id="develop" href="/develop.html">Develop Toss</link>
+ </history>
+
+ <section title="Preparation">
+ <itemize>
+ <item>Except for the interfaces, most of Toss is programmed in
+ <a href="http://caml.inria.fr/">Objective Caml</a>. You will need
+ a good understanding of OCaml and a full OCaml installation
+ to work on the Toss Engine.
+ </item>
+ <item>Toss <em>build system</em> is based on <em>ocamlbuild</em>
+ and uses <em>Makefiles</em> for compilation of the C parts.
+ You will need a system which supports these to build Toss.
+ </item>
+ <item>If you want to develop Toss on Ubuntu, here is a command with
+ a list of packages to install.<br/>
+ sudo apt-get install g++ python-qt4 python-dev pyqt4-dev-tools
+ ocaml-findlib menhir libounit-ocaml-dev libapache2-mod-python
+ sqlite3 python-pysqlite2
+ </item>
+ <item>This command will checkout the
+ <a href="http://toss.svn.sourceforge.net/viewvc/toss/trunk/Toss/">Toss
+ SVN Repository</a> to the <em>Toss</em> directory.<br/>
+ svn co https://toss.svn.sourceforge.net/svnroot/toss/trunk/Toss Toss
+ </item>
+ <item>In the Toss directory run <em>make</em> and check that
+ it succeeds.</item>
+ </itemize>
+ </section>
+
+ <section title="Understanding Toss">
+ <itemize>
+ <item><a href="create.html">Create</a> at least one simple game
+ to get started.</item>
+ <item>Get acquainted with <a href="docs.html">Toss documentation</a>.
+ </item>
+ <item>Do not forget to read the <a href="reference/reference.pdf">
+ reference.pdf</a> document.</item>
+ <item>When you start looking at the code, you might find
+ the <a href="code_doc/">interface documentation</a> handy.</item>
+ <item>Skim through the <a href="Publications/">papers and talks</a>
+ about Toss to get an idea where the ideas come from.</item>
+ </itemize>
+ </section>
+
+ <section title="Working with the Toss Team">
+ <par>If you have an idea for Toss, a request, want to become a developer
+ or just want to talk, contact us! Most engaged Toss developers do
+ respond to Toss questions on their private emails every
+ day (see below), but <em>toss-devel</em> is the place we prefer.</par>
+ <itemize>
+ <item>Toss Mailing List:
+ <mailto address="tos...@li..."/></item>
+ <item>Łukasz Kaiser:
+ <mailto address="luk...@gm..."/></item>
+ <item>Łukasz Stafiniak:
+ <mailto address="luk...@gm..."/></item>
+ <item>Michał Wójcik:
+ <mailto address="mic...@gm..."/></item>
+ </itemize>
+ </section>
+
+</personal>
Modified: trunk/Toss/www/docs.xml
===================================================================
--- trunk/Toss/www/docs.xml 2011-03-13 00:09:53 UTC (rev 1356)
+++ trunk/Toss/www/docs.xml 2011-03-13 17:36:46 UTC (rev 1357)
@@ -52,6 +52,9 @@
<a href="http://www2.cse.iitk.ac.in/~fsttcs/2009/videos/star/LukaszKaiser.avi">
watched</a> online.
</item>
+ <item><em>Shorter presentation</em> focusing on the AI side was given at
+ <em>AGI 2010</em> and can also be
+ <a href="http://www.vimeo.com/15326245">watched</a> online.</item>
</itemize>
</section>
Modified: trunk/Toss/www/index.xml
===================================================================
--- trunk/Toss/www/index.xml 2011-03-13 00:09:53 UTC (rev 1356)
+++ trunk/Toss/www/index.xml 2011-03-13 17:36:46 UTC (rev 1357)
@@ -11,10 +11,12 @@
<section title="About" lang="en">
<par><em>Toss</em> is a program to create, modify and play games.
+ It includes a general game playing engine so that you can play any
+ game you create against the computer.
For example, did you ever wonder how your favorite game would feel
if you removed the middle of the board? With Toss, it is easy to
experiment! And after your game is ready, you can play it online
- against a computer or compete with your friends!
+ and compete with your friends!
</par>
</section>
@@ -82,20 +84,30 @@
<par>To learn more about the mathematical background and
the design of Toss, use the following links.</par>
<itemize>
-<item><em>Compact description</em> of the mathematical model behind Toss and
-our game playing algorithm can be found in the paper
-<a href="http://logic.rwth-aachen.de/~kaiser/playing_structure_rewriting_games.pdf">Playing Structure Rewriting Games</a>.</item>
+ <item><em>Compact description</em> of the mathematical model behind Toss
+ and our game playing algorithm can be found in the paper
+ <a href="http://logic.rwth-aachen.de/~kaiser/playing_structure_rewriting_games.pdf">Playing Structure Rewriting Games</a>.
+ </item>
-<item><em>Design and specification</em> of Toss are described in
- the <a href="reference.pdf">reference.pdf</a> document.</item>
+ <item><em>Design and specification</em> of Toss are described in
+ the <a href="reference.pdf">reference.pdf</a> document.
+ </item>
-<item> <em>Complexity</em> of a syntactic fragment of Toss was analyzed in
- the paper <a href="http://logic.rwth-aachen.de/~kaiser/graph_games_short.pdf">
- Synthesis for Structure Rewriting Systems</a>.</item>
-<item><em>Presentation</em> on the mathematics behind Toss was given at
- <em>IIT Kanpur</em> and can be
- <a href="http://www2.cse.iitk.ac.in/~fsttcs/2009/videos/star/LukaszKaiser.avi">
- watched</a> online.</item>
+ <item> <em>Complexity</em> of a syntactic fragment of Toss was analyzed in
+ the paper <a href="http://logic.rwth-aachen.de/~kaiser/graph_games_short.pdf">
+ Synthesis for Structure Rewriting Systems</a>.
+ </item>
+
+ <item><em>Presentation</em> on the mathematics behind Toss was given at
+ <em>IIT Kanpur</em> and can be
+ <a href="http://www2.cse.iitk.ac.in/~fsttcs/2009/videos/star/LukaszKaiser.avi">
+ watched</a> online.
+ </item>
+
+ <item><em>Shorter presentation</em> focusing on the AI side was given at
+ <em>AGI 2010</em> and can also be
+ <a href="http://www.vimeo.com/15326245">watched</a> online.
+ </item>
</itemize>
</section>
Modified: trunk/Toss/www/navigation.xml
===================================================================
--- trunk/Toss/www/navigation.xml 2011-03-13 00:09:53 UTC (rev 1356)
+++ trunk/Toss/www/navigation.xml 2011-03-13 17:36:46 UTC (rev 1357)
@@ -20,6 +20,7 @@
<item href="/code_doc/" id="code">Code Documentation</item>
</menu>
<item href="/Publications/" id="Publications">Papers and Talks</item>
+ <item href="/develop.html" id="develop">Develop Toss</item>
<item href="/contact.html" id="contact">Contact and Links</item>
</menu>
@@ -39,8 +40,8 @@
<menu title="Dokumentation" href="/docs.html" id="docs">
<item href="/background.html" id="background">Hintergrund</item>
</menu>
-
- <item href="/Publications/" id="Publications">Publikationen und Vorträge</item>
+ <item href="/Publications/" id="Publications">Papers und Talks</item>
+ <item href="/develop.html" id="develop">Toss Ausbauen</item>
<item href="/contact.html" id="contact">Kontakt und Links</item>
</menu>
Modified: trunk/Toss/www/styles/screen.css
===================================================================
--- trunk/Toss/www/styles/screen.css 2011-03-13 00:09:53 UTC (rev 1356)
+++ trunk/Toss/www/styles/screen.css 2011-03-13 17:36:46 UTC (rev 1357)
@@ -120,6 +120,7 @@
position: absolute;
bottom: 0px;
right: 0px;
+ /*display: none;*/
}
#parentnav ul {
Modified: trunk/Toss/www/xsl/include/common.xsl
===================================================================
--- trunk/Toss/www/xsl/include/common.xsl 2011-03-13 00:09:53 UTC (rev 1356)
+++ trunk/Toss/www/xsl/include/common.xsl 2011-03-13 17:36:46 UTC (rev 1357)
@@ -69,12 +69,12 @@
<xsl:template match="games-section">
<xsl:choose>
<xsl:when test="$lang='de'">
- <h3><a href="http://tplay.org">Online Spielen</a></h3>
+ <h3><a href="http://tplay.org">Online Spielen gegen Toss</a></h3>
<xsl:apply-templates />
<p><a href="http://tplay.org">Weitere Spiele</a></p>
</xsl:when>
<xsl:otherwise>
- <h3><a href="http://tplay.org">Play Online</a></h3>
+ <h3><a href="http://tplay.org">Play Online against Toss</a></h3>
<xsl:apply-templates />
<p><a href="http://tplay.org">More Games</a></p>
</xsl:otherwise>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|