File: test.pl.html

package info (click to toggle)
source-highlight 3.1.7-1
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 10,332 kB
  • ctags: 5,233
  • sloc: sh: 11,270; cpp: 10,206; ansic: 9,515; makefile: 1,865; lex: 1,200; yacc: 1,021; php: 213; perl: 211; awk: 98; erlang: 94; lisp: 90; java: 75; ruby: 69; python: 61; asm: 43; ml: 38; ada: 36; haskell: 27; xml: 23; cs: 11; sql: 8; tcl: 6; sed: 4
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>