File: test.pl.html

package info (click to toggle)
source-highlight 3.1.4-1
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 9,404 kB
  • ctags: 5,526
  • sloc: sh: 10,428; cpp: 9,884; ansic: 8,483; makefile: 1,782; lex: 1,184; yacc: 1,009; php: 213; perl: 211; awk: 98; erlang: 94; java: 73; ruby: 69; python: 61; asm: 43; ml: 38; ada: 36; haskell: 27; xml: 23; lisp: 21; cs: 11; sql: 8; tcl: 6; sed: 3
file content (30 lines) | stat: -rw-r--r-- 7,168 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<!-- Generator: GNU source-highlight 
by Lorenzo Bettini
http://www.lorenzobettini.it
http://www.gnu.org/software/src-highlite -->
<pre><tt><i><font color="#9A1900">%      +------------------------------+</font></i>
<i><font color="#9A1900">%      |   test for Prolog source     |</font></i>
<i><font color="#9A1900">%      |______________________________|</font></i>

<b><font color="#000000">isinteger</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font> <font color="#009900">L</font><font color="#990000">)</font> <font color="#990000">:-</font> <b><font color="#000000">type</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font> int<font color="#990000">,</font> <font color="#009900">L</font><font color="#990000">).</font>

<i><font color="#9A1900">% booleans</font></i>
<b><font color="#000000">type</font></b><font color="#990000">(</font>true<font color="#990000">,</font> bool<font color="#990000">,</font> <font color="#009900">_</font><font color="#990000">).</font>
<b><font color="#000000">type</font></b><font color="#990000">(</font>false<font color="#990000">,</font> bool<font color="#990000">,</font> <font color="#009900">_</font><font color="#990000">).</font>

<b><font color="#000000">type</font></b><font color="#990000">(</font> <b><font color="#0000FF">and</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font><font color="#009900">Y</font><font color="#990000">),</font> bool<font color="#990000">,</font> <font color="#009900">L</font><font color="#990000">)</font> <font color="#990000">:-</font> <b><font color="#000000">isboolean</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font><font color="#009900">L</font><font color="#990000">),</font> <b><font color="#000000">isboolean</font></b><font color="#990000">(</font><font color="#009900">Y</font><font color="#990000">,</font><font color="#009900">L</font><font color="#990000">).</font>
<b><font color="#000000">type</font></b><font color="#990000">(</font> <b><font color="#0000FF">or</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font><font color="#009900">Y</font><font color="#990000">),</font> bool<font color="#990000">,</font> <font color="#009900">L</font><font color="#990000">)</font> <font color="#990000">:-</font> <b><font color="#000000">isboolean</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font><font color="#009900">L</font><font color="#990000">),</font> <b><font color="#000000">isboolean</font></b><font color="#990000">(</font><font color="#009900">Y</font><font color="#990000">,</font><font color="#009900">L</font><font color="#990000">).</font>
<b><font color="#000000">type</font></b><font color="#990000">(</font> <b><font color="#0000FF">not</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">),</font> bool<font color="#990000">,</font> <font color="#009900">L</font><font color="#990000">)</font> <font color="#990000">:-</font> <b><font color="#000000">isboolean</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font><font color="#009900">L</font><font color="#990000">).</font>

<b><font color="#000000">type</font></b><font color="#990000">(</font> <b><font color="#000000">succ</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">),</font> int<font color="#990000">,</font> <font color="#009900">L</font> <font color="#990000">)</font> <font color="#990000">:-</font> <b><font color="#000000">isinteger</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font><font color="#009900">L</font><font color="#990000">).</font>
<b><font color="#000000">type</font></b><font color="#990000">(</font> <b><font color="#000000">pred</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">),</font> int<font color="#990000">,</font> <font color="#009900">L</font> <font color="#990000">)</font> <font color="#990000">:-</font> <b><font color="#000000">isinteger</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font><font color="#009900">L</font><font color="#990000">).</font>
<b><font color="#000000">type</font></b><font color="#990000">(</font> <b><font color="#000000">iszero</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">),</font> bool<font color="#990000">,</font> <font color="#009900">L</font> <font color="#990000">)</font> <font color="#990000">:-</font> <b><font color="#000000">isinteger</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font><font color="#009900">L</font><font color="#990000">).</font>
<b><font color="#000000">type</font></b><font color="#990000">(</font> <font color="#009900">X</font> <font color="#990000">&lt;</font> <font color="#009900">Y</font><font color="#990000">,</font> bool<font color="#990000">,</font> <font color="#009900">L</font> <font color="#990000">)</font> <font color="#990000">:-</font> <b><font color="#000000">isinteger</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font><font color="#009900">L</font><font color="#990000">),</font> <b><font color="#000000">isinteger</font></b><font color="#990000">(</font><font color="#009900">Y</font><font color="#990000">,</font><font color="#009900">L</font><font color="#990000">).</font>

<i><font color="#9A1900">% is_member(X,L) check whether X is in the list</font></i>
<i><font color="#9A1900">% by using unification with occur check</font></i>

<b><font color="#000000">is_member</font></b><font color="#990000">(</font><font color="#009900">_</font><font color="#990000">,</font> <font color="#990000">[])</font> <font color="#990000">:-</font> <b><font color="#0000FF">fail</font></b><font color="#990000">.</font>
<b><font color="#000000">is_member</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font> <font color="#990000">[</font><font color="#009900">Y</font> <font color="#990000">|</font> <font color="#009900">_</font><font color="#990000">])</font> <font color="#990000">:-</font> <b><font color="#000000">unify</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font><font color="#009900">Y</font><font color="#990000">).</font>
<b><font color="#000000">is_member</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font> <font color="#990000">[</font><font color="#009900">_</font> <font color="#990000">|</font> <font color="#009900">List</font><font color="#990000">])</font> <font color="#990000">:-</font> <b><font color="#000000">is_member</font></b><font color="#990000">(</font><font color="#009900">X</font><font color="#990000">,</font> <font color="#009900">List</font><font color="#990000">).</font>
</tt></pre>