diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2016-08-17 19:04:35 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2016-08-17 19:04:35 -0700 |
commit | d990e8f07aee36f68bcd270889d20c2d22b9aa0b (patch) | |
tree | 07a624ea81f2974e1bb038462f4d0607237ea431 /html/088file.mu.html | |
parent | cb159b8c8a888f089676a63273b76b641e860d88 (diff) | |
download | mu-d990e8f07aee36f68bcd270889d20c2d22b9aa0b.tar.gz |
3219
Trying keeping html in the master branch: https://github.com/blog/2228-simpler-github-pages-publishing Let's see if https://akkartik.github.io/mu updates after I push this commit to just the master branch.
Diffstat (limited to 'html/088file.mu.html')
-rw-r--r-- | html/088file.mu.html | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/html/088file.mu.html b/html/088file.mu.html new file mode 100644 index 00000000..a8f2153c --- /dev/null +++ b/html/088file.mu.html @@ -0,0 +1,68 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> +<html> +<head> +<meta http-equiv="content-type" content="text/html; charset=UTF-8"> +<title>Mu - 088file.mu</title> +<meta name="Generator" content="Vim/7.4"> +<meta name="plugin-version" content="vim7.4_v2"> +<meta name="syntax" content="none"> +<meta name="settings" content="use_css,pre_wrap,no_foldcolumn,expand_tabs,prevent_copy="> +<meta name="colorscheme" content="minimal"> +<style type="text/css"> +<!-- +pre { white-space: pre-wrap; font-family: monospace; color: #eeeeee; background-color: #080808; } +body { font-size: 12pt; font-family: monospace; color: #eeeeee; background-color: #080808; } +* { font-size: 12pt; font-size: 1em; } +.muRecipe { color: #ff8700; } +.muData { color: #ffff00; } +.Comment { color: #9090ff; } +.Delimiter { color: #800080; } +.Special { color: #c00000; } +.Constant { color: #00a0a0; } +.muControl { color: #c0a020; } +--> +</style> + +<script type='text/javascript'> +<!-- + +--> +</script> +</head> +<body> +<pre id='vimCodeElement'> +<span class="Comment"># Wrappers around file-system primitives that take a 'filesystem' object and</span> +<span class="Comment"># are thus easier to test.</span> + +<span class="muData">container</span> filesystem [ + <span class="Delimiter">{</span>data: (address table (address array character) (address array character))<span class="Delimiter">}</span> +] + +<span class="muRecipe">def</span> start-reading fs:address:filesystem, filename:address:array:character<span class="muRecipe"> -> </span>contents:address:source:character [ + <span class="Constant">local-scope</span> + <span class="Constant">load-ingredients</span> + x:number/file<span class="Special"> <- </span>$open-file-for-reading filename + contents:address:source:character, sink:address:sink:character<span class="Special"> <- </span>new-channel <span class="Constant">30</span> + $print <span class="Constant">[sink: ]</span>, sink, <span class="Constant">10/newline</span> + chan:address:channel:character<span class="Special"> <- </span>get *sink, <span class="Constant">chan:offset</span> + $print <span class="Constant">[chan in start-reading: ]</span>, chan, <span class="Constant">10/newline</span> + start-running transmit x, sink +] + +<span class="muRecipe">def</span> transmit file:number, sink:address:sink:character<span class="muRecipe"> -> </span>file:number, sink:address:sink:character [ + <span class="Constant">local-scope</span> + <span class="Constant">load-ingredients</span> + <span class="Delimiter">{</span> + c:character<span class="Special"> <- </span>$read-from-file file + <span class="muControl">break-unless</span> c + sink<span class="Special"> <- </span>write sink, c + <span class="muControl">loop</span> + <span class="Delimiter">}</span> + $print <span class="Constant">[closing chan after reading file]</span>, <span class="Constant">10/newline</span> + sink<span class="Special"> <- </span>close sink + $print <span class="Constant">[returning from 'transmit']</span>, <span class="Constant">10/newline</span> +] +</pre> +</body> +</html> +<!-- vim: set foldmethod=manual : --> |