next up previous contents index
Next: Operators Up: Syntax Previous: Differences to Prolog   Contents   Index

BNF

<pxlprog> ::= <pxexpr> { <pxexpr> }	

pxexpr ::= <func> | <single_quoted_text> | <interpolated_quoted_text> | <atom>
func ::= <atom> '(' <arg> { <arg> } ')'
<fact> ::= <pred> . 	
<pred> ::= <atom> [ ( <arglist> ) ]	
	
<rule> ::= [ <head> ] : - <body> .	
<head> ::= <pred> 	
<body> ::= <goal> { , <goal> }	
<goal> ::= <pred> | !
	
<arglist> ::= <arg> { , <arg> } 	
<arg> ::= <atom> | <var> | <list>	
	
<atom> ::= <lcchar> { <anychar> } 	
<atom> ::= ' { <anychar> } ' 	
	
<var> ::= <ucchar> { <anychar> }	
<var> ::= _ { <anychar> } 	
	
<list> ::= <leftbracket> <rightbracket>	
<list> ::= <leftbracket> <listelems> <rightbracket> 	
<listelems> ::= <arglist>	
<listelems> ::= <arglist> <barsymbol> <list>	
<listelems> ::= <arglist> <barsymbol> <var>



chris mungall 2006-02-09