caolan@caolan-laptop:~/Desktop$ cat server.js var http = require('http'); var server = http.createServer(function (req, res) { if (req.url == '/200.html') { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('ok\n'); } if (req.url == '/304.html') { res.writeHead(304, { 'Content-Type': 'text/plain' }); res.end('not modified\n'); } }); server.listen(8080); caolan@caolan-laptop:~/Desktop$ cat example200.scm (use http-client intarweb uri-common utils) (receive (body final-uri response) (call-with-response (make-request method: 'GET uri: (uri-reference "http://localhost:8080/200.html")) (lambda (request) #f) (lambda (response) (read-all (response-port response)))) (display body)) caolan@caolan-laptop:~/Desktop$ cat example304.scm (use http-client intarweb uri-common utils) (receive (body final-uri response) (call-with-response (make-request method: 'GET uri: (uri-reference "http://localhost:8080/304.html")) (lambda (request) #f) (lambda (response) (read-all (response-port response)))) (display body)) caolan@caolan-laptop:~/Desktop$ time csi -s example200.scm ok real 0m0.176s user 0m0.168s sys 0m0.004s caolan@caolan-laptop:~/Desktop$ time csi -s example304.scm real 0m5.193s user 0m0.176s sys 0m0.008s caolan@caolan-laptop:~/Desktop$ time curl http://localhost:8080/200.html ok real 0m0.010s user 0m0.004s sys 0m0.000s caolan@caolan-laptop:~/Desktop$ time curl http://localhost:8080/304.html real 0m0.010s user 0m0.004s sys 0m0.000s