Code: Select all
#!/usr/local/bin/hopeless -f
uses string,lines,list;
dec base : string # num -> string;
--- base(_,_) <= nil;
--- base("0",1) <= "500-igr.jpg";
--- base("a",1) <= "adaptatsia-programm-na-disk-v-sisteme-tr-dos.jpg";
--- base("a",2) <= "arhitektura-vichislitelnih-sistem.jpg";
--- base("b",1) <= "beta-disk-interface.jpg";
...........
--- base("ya",1) <= "ya-strou-kv-radiostantsiu.jpg";
--- base("ya",2) <= "yazik-assemblera-dla-ibm-pc.jpg";
--- base("ya",3) <= "yazik-programmirovania-el-76.jpg";
--- base("ya",4) <= "yazik-radioshem.jpg";
dec printone : string -> string;
--- printone(s) <= "<a href=\"../books/"<>s<>"\"><img border=0 width=200 src=\"../books/"<>s<>"\"></a>\n";
dec printall : string # num -> string;
--- printall(l,n) <= let s==base(l,n) in
if s=nil then ""
else printone(s)<>printall(l,n+1);
write "Content-type: text/html\n\n";
write lines(printall(argv@0,1));
Code: Select all
./books.hop ya
Content-type: text/html
<a href="../books/ya-strou-kv-radiostantsiu.jpg"><img border=0 width=200 src="../books/ya-strou-kv-radiostantsiu.jpg"></a>
<a href="../books/yazik-assemblera-dla-ibm-pc.jpg"><img border=0 width=200 src="../books/yazik-assemblera-dla-ibm-pc.jpg"></a>
<a href="../books/yazik-programmirovania-el-76.jpg"><img border=0 width=200 src="../books/yazik-programmirovania-el-76.jpg"></a>
<a href="../books/yazik-radioshem.jpg"><img border=0 width=200 src="../books/yazik-radioshem.jpg"></a>