diff ts.pl @ 0:cfb7c6b24319

Initial revision
author kono
date Thu, 30 Aug 2007 14:57:44 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ts.pl	Thu Aug 30 14:57:44 2007 +0900
@@ -0,0 +1,39 @@
+/*
+ Copyright (C) 1988,2005, Shinji Kono 
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license, but changing it is not allowed.  You can also
+ use this wording to make the terms for other programs.
+
+ send your comments to kono@ie.u-ryukyu.ac.jp
+*/
+
+/*    Tokio interpreter on prolog */
+
+/*    operator definitions */
+/*	@  	.. next */
+/*	#,[]  	.. always */
+/*	<> 	.. sometime */
+
+:-op(1200, fy	,[(('$define')),(('$function'))]).	/* macro definitions */
+/* :-op(1250, xfy	,[('$clause'),('r_call')]).	 macro development */
+:-op(1200, xfy	,[('$clause'),('$call')]).	/* macro development */
+:-op(1100, xfy	,[( '|' )]).			/* guard */
+:-op(1160, fx   ,[(tokio)]).	/* Tokio formula  interpreter */
+:-op(1150, fy   , [(if),(while)]).
+:-op(1150, xfy  , [(else)]).
+:-op(1150, xfy  , [(do)]).
+:-op(1150, xfy  , (then)).
+:-op(1150, xfy  , [('&&'),( & )]).
+:-op(900,  fx   , ['<>',#,'|a|','|t|','||',beg,halt]).	
+:-op(700,  xfy , [\=,===,' = '] ).
+:-op(700,  xfy , [:=] ).		/* static assignment instanteanous */
+:-op(700,  xfy , [<=] ).		/* temporal assignment instanteanous */
+:-op(700,  xfy , [<==] ).		/* static temporal assignment  */
+:-op(700,  xfy , [<-] ).		/* temporal assignment */
+:-op(700,  xfy , [<<-] ).		/* multiple temporal assignment */
+:-op(700,  xfy , [<--] ).		/* force constrant */
+:-op(700,  xfy , proj ).		/* projection */
+:-op(700,  xfy , gets ).		/* repeatedly assignment */
+:-op(600,  xfx , to ).			/* range */
+:-op(150,  fy  , @).			/* next oprator */
+:-op(140,  fx  , *).			/* variables */