{7 * 8 = [(* 7 8)]}
; generate HTML histogram table from results of DB query
(define (histogram field table)
(define results
(dbquery
{select [field],count(*) from [table]
group by [field], order by [field] asc}))
{<html><body>
<h1>Query results</h1>
The result of query <pre>[s]</pre> is
<table> [(trs results)]</table>
</body></html>})
(define (trs rows) (map (lambda (row) {<tr> [(tds row)]</tr>\n}) rows))
(define (tds row) (map (lambda (col) {<td> [ col ]</td>}) row))
Similar Scheme approaches: SCRIBE (Serrano), BRL (Lewis), ...
LL2, Saturday 9 November 2002, Tim Hickey/Ken Anderson