File: highlight.tig.html

package info (click to toggle)
kf6-syntax-highlighting 6.13.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 47,568 kB
  • sloc: xml: 197,750; cpp: 12,850; python: 3,023; sh: 955; perl: 546; ruby: 488; pascal: 393; javascript: 161; php: 150; jsp: 132; lisp: 131; haskell: 124; ada: 119; ansic: 107; makefile: 96; f90: 94; ml: 85; cobol: 81; yacc: 71; csh: 62; erlang: 54; sql: 51; java: 47; objc: 37; awk: 31; asm: 30; tcl: 29; fortran: 18; cs: 10
file content (85 lines) | stat: -rw-r--r-- 11,583 bytes parent folder | download
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<!DOCTYPE html>
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>highlight.tig</title>
<meta name="generator" content="KF5::SyntaxHighlighting - Definition (Tiger) - Theme (Breeze Light)"/>
</head><body style="background-color:#ffffff;color:#1f1c1b"><pre>
<span style="color:#898887">/* Mandelbrot integer demo</span>
<span style="color:#898887"> * Released under the MIT License</span>
<span style="color:#898887"> */</span>

<span style="font-weight:bold">let</span>
  <span style="color:#898887">/* Basic types.  */</span>
  <span style="font-weight:bold">type</span> bool <span style="color:#ca60ca">=</span> <span style="color:#0057ae">int</span>
  <span style="font-weight:bold">type</span> coord <span style="color:#ca60ca">=</span> <span style="color:#0057ae">int</span>
  <span style="font-weight:bold">type</span> value <span style="color:#ca60ca">=</span> <span style="color:#0057ae">int</span>
  <span style="font-weight:bold">type</span> array2d <span style="color:#ca60ca">=</span> <span style="font-weight:bold">array</span> <span style="font-weight:bold">of</span> value
  <span style="font-weight:bold">type</span> image2d <span style="color:#ca60ca">=</span> { nrows <span style="color:#ca60ca">:</span> coord<span style="color:#ca60ca">,</span> ncols <span style="color:#ca60ca">:</span> coord<span style="color:#ca60ca">,</span> data <span style="color:#ca60ca">:</span> array2d }

  <span style="color:#898887">/* Image creation.  */</span>
  <span style="font-weight:bold">function</span> image_new (ncols <span style="color:#ca60ca">:</span> coord<span style="color:#ca60ca">,</span> nrows <span style="color:#ca60ca">:</span> coord) <span style="color:#ca60ca">:</span> image2d <span style="color:#ca60ca">=</span>
    image2d { nrows <span style="color:#ca60ca">=</span> nrows<span style="color:#ca60ca">,</span> ncols <span style="color:#ca60ca">=</span> ncols<span style="color:#ca60ca">,</span>
	      data <span style="color:#ca60ca">=</span> array2d[nrows <span style="color:#ca60ca">*</span> ncols] <span style="font-weight:bold">of</span> <span style="color:#b08000">0</span> }

  <span style="font-weight:bold">function</span> image_set (input <span style="color:#ca60ca">:</span> image2d<span style="color:#ca60ca">,</span> col <span style="color:#ca60ca">:</span> coord<span style="color:#ca60ca">,</span> row <span style="color:#ca60ca">:</span> coord<span style="color:#ca60ca">,</span>
		      value <span style="color:#ca60ca">:</span> value) <span style="color:#ca60ca">=</span>
    (
      input<span style="color:#ca60ca">.</span>data[row <span style="color:#ca60ca">*</span> input<span style="color:#ca60ca">.</span>ncols <span style="color:#ca60ca">+</span> col] <span style="color:#ca60ca">:=</span> value
    )

  <span style="font-weight:bold">function</span> mandelbrot () <span style="color:#ca60ca">=</span>
    <span style="font-weight:bold">let</span>
      <span style="font-weight:bold">type</span> fp <span style="color:#ca60ca">=</span> <span style="color:#0057ae">int</span>
      <span style="font-weight:bold">var</span> X <span style="color:#ca60ca">:</span> <span style="color:#0057ae">int</span> <span style="color:#ca60ca">:=</span> <span style="color:#b08000">300</span>
      <span style="font-weight:bold">var</span> Y <span style="color:#ca60ca">:</span> <span style="color:#0057ae">int</span> <span style="color:#ca60ca">:=</span> <span style="color:#b08000">300</span>
      <span style="font-weight:bold">var</span> ima <span style="color:#ca60ca">:</span> image2d <span style="color:#ca60ca">:=</span> image_new (X<span style="color:#ca60ca">,</span> Y)
      <span style="font-weight:bold">var</span> fixsize<span style="color:#ca60ca">:</span> <span style="color:#0057ae">int</span> <span style="color:#ca60ca">:=</span> <span style="color:#b08000">16834</span>

      <span style="font-weight:bold">function</span> mul(a <span style="color:#ca60ca">:</span> fp<span style="color:#ca60ca">,</span> b <span style="color:#ca60ca">:</span> fp) <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">=</span> (a<span style="color:#ca60ca">*</span>b)<span style="color:#ca60ca">/</span>fixsize
      <span style="font-weight:bold">function</span> frac(n <span style="color:#ca60ca">:</span> <span style="color:#0057ae">int</span><span style="color:#ca60ca">,</span> d <span style="color:#ca60ca">:</span> <span style="color:#0057ae">int</span>) <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">=</span> (n<span style="color:#ca60ca">*</span>fixsize)<span style="color:#ca60ca">/</span>d

      <span style="font-weight:bold">var</span> xcenter <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> frac(<span style="color:#b08000">0016</span><span style="color:#ca60ca">,</span> <span style="color:#b08000">10000</span>)
      <span style="font-weight:bold">var</span> ycenter <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> frac(<span style="color:#b08000">8224</span><span style="color:#ca60ca">,</span> <span style="color:#b08000">10000</span>)
      <span style="font-weight:bold">var</span> xmin <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> xcenter <span style="color:#ca60ca">-</span> frac(<span style="color:#b08000">5</span><span style="color:#ca60ca">,</span><span style="color:#b08000">100</span>)
      <span style="font-weight:bold">var</span> ymin <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> ycenter <span style="color:#ca60ca">-</span> frac(<span style="color:#b08000">5</span><span style="color:#ca60ca">,</span><span style="color:#b08000">100</span>)
      <span style="font-weight:bold">var</span> xmax <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> xcenter <span style="color:#ca60ca">+</span> frac(<span style="color:#b08000">5</span><span style="color:#ca60ca">,</span><span style="color:#b08000">100</span>)
      <span style="font-weight:bold">var</span> ymax <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> ycenter <span style="color:#ca60ca">+</span> frac(<span style="color:#b08000">5</span><span style="color:#ca60ca">,</span><span style="color:#b08000">100</span>)
      <span style="font-weight:bold">var</span> xs   <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> (xmax <span style="color:#ca60ca">-</span> xmin)<span style="color:#ca60ca">/</span>X
      <span style="font-weight:bold">var</span> ys   <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> (ymax <span style="color:#ca60ca">-</span> ymin)<span style="color:#ca60ca">/</span>Y

    <span style="font-weight:bold">function</span> iterations(x<span style="color:#ca60ca">:</span><span style="color:#0057ae">int</span><span style="color:#ca60ca">,</span> y<span style="color:#ca60ca">:</span><span style="color:#0057ae">int</span>) <span style="color:#ca60ca">:</span> <span style="color:#0057ae">int</span> <span style="color:#ca60ca">=</span>
    <span style="font-weight:bold">let</span>
        <span style="font-weight:bold">var</span> i <span style="color:#ca60ca">:</span> <span style="color:#0057ae">int</span> <span style="color:#ca60ca">:=</span> <span style="color:#b08000">0</span>
        <span style="font-weight:bold">var</span> p <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> xmin<span style="color:#ca60ca">+</span>x<span style="color:#ca60ca">*</span>xs
        <span style="font-weight:bold">var</span> q <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> ymin<span style="color:#ca60ca">+</span>y<span style="color:#ca60ca">*</span>ys
        <span style="font-weight:bold">var</span> x0 <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> <span style="color:#b08000">0</span>
        <span style="font-weight:bold">var</span> y0 <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> <span style="color:#b08000">0</span>
        <span style="font-weight:bold">var</span> xn <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> <span style="color:#b08000">0</span>
        <span style="font-weight:bold">var</span> four <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> frac(<span style="color:#b08000">4</span><span style="color:#ca60ca">,</span><span style="color:#b08000">1</span>)
        <span style="font-weight:bold">var</span> two  <span style="color:#ca60ca">:</span> fp <span style="color:#ca60ca">:=</span> frac(<span style="color:#b08000">2</span><span style="color:#ca60ca">,</span><span style="color:#b08000">1</span>)
    <span style="font-weight:bold">in</span>
        <span style="font-weight:bold">while</span> (mul(xn<span style="color:#ca60ca">,</span>xn)<span style="color:#ca60ca">+</span>mul(y0<span style="color:#ca60ca">,</span>y0) <span style="color:#ca60ca">&lt;</span> four) <span style="color:#ca60ca">&amp;</span> (i <span style="color:#ca60ca">&lt;</span> <span style="color:#b08000">256</span>) <span style="font-weight:bold">do</span>
        (
            i  <span style="color:#ca60ca">:=</span> i <span style="color:#ca60ca">+</span> <span style="color:#b08000">1</span><span style="color:#ca60ca">;</span>
            xn <span style="color:#ca60ca">:=</span> mul((x0<span style="color:#ca60ca">+</span>y0)<span style="color:#ca60ca">,</span>(x0<span style="color:#ca60ca">-</span>y0)) <span style="color:#ca60ca">+</span> p<span style="color:#ca60ca">;</span>
            y0 <span style="color:#ca60ca">:=</span> mul(two<span style="color:#ca60ca">,</span>mul(x0<span style="color:#ca60ca">,</span>y0)) <span style="color:#ca60ca">+</span> q<span style="color:#ca60ca">;</span>
            x0 <span style="color:#ca60ca">:=</span> xn
        )<span style="color:#ca60ca">;</span>
        i
    <span style="font-weight:bold">end</span>

    <span style="font-weight:bold">in</span>

    (<span style="font-weight:bold">for</span> y <span style="color:#ca60ca">:=</span> <span style="color:#b08000">0</span> <span style="font-weight:bold">to</span> (Y<span style="color:#ca60ca">-</span><span style="color:#b08000">1</span>) <span style="font-weight:bold">do</span>
        <span style="font-weight:bold">for</span> x <span style="color:#ca60ca">:=</span> <span style="color:#b08000">0</span> <span style="font-weight:bold">to</span> (X<span style="color:#ca60ca">-</span><span style="color:#b08000">1</span>) <span style="font-weight:bold">do</span>
            <span style="font-weight:bold">let</span>
                <span style="font-weight:bold">var</span> i <span style="color:#ca60ca">:</span> <span style="color:#0057ae">int</span>  <span style="color:#ca60ca">:=</span> iterations(x<span style="color:#ca60ca">,</span>y)
             <span style="font-weight:bold">in</span>
                image_set (ima<span style="color:#ca60ca">,</span> x<span style="color:#ca60ca">,</span> y<span style="color:#ca60ca">,</span> i)
             <span style="font-weight:bold">end</span>)<span style="color:#ca60ca">;</span>
    <span style="font-weight:bold">end</span>
<span style="font-weight:bold">in</span>
    <span style="color:#644a9b">print</span>(<span style="color:#bf0303">"Mandelbrot demo</span><span style="color:#3daee9">\n</span><span style="color:#bf0303">"</span>)<span style="color:#ca60ca">;</span>
    mandelbrot()
<span style="font-weight:bold">end</span>
</pre></body></html>