[racket] Module docs - still a problem
OK, I'm trying to generate module docs, so I run
raco setup
but I get
raco setup: --- building documentation ---
raco setup: error running: (lib carali/http.rkt)
dynamic-require: name is not provided: 'doc by module:
#<resolved-module-path:"/home/mcarter/src/racket-5.1/collects/carali/http.rkt">
raco setup: rendering: scribblings/main/start.scrbl
Any clues on this one?
Here's my info.rkt:
#lang setup/infotab ; -*- scheme -*-
(define name "carali")
(define blurb "Blurb blah blah")
(define scribblings '(
("http.rkt" (multi-page) (carali-library 101))
;("scribblings/carali.scrbl" (multi-page) (carali-library 101))
))
Here's my http.rkt:
#lang at-exp racket ; -*- scheme -*-
;(define name "carali/http")
;(module maths racket
; (provide http-get)
#|
(require (lib "url.ss" "net"))
(define (http-get url)
(let ((p 0)
(line 0))
(set! p (get-impure-port (string->url url)))
(let loop ((result ""))
(set! line (read-line p))
(if (eof-object? line)
(set! line result)
(loop (string-append result line))))
(close-input-port p)
line))
|#
;;; simplification suggested by Sogaard 29-Jul-2007
;(require (lib "port.ss")
; (lib "url.ss" "net"))
(require racket/port)
;(requite at-exp)
(require net/url)
; (require racket/contract)
(require scribble/srcdoc)
;(require/doc scribble/manual)
#|
(define (http-get-XXX url-as-string)
(let* ([out (open-output-string)]
[in (get-pure-port (string->url url-as-string))])
(copy-port in out)
(close-input-port in)
(get-output-string out)))
|#
;;;(http-get "http://www.google.co.uk/")
;;; Use (http-get "http://www.markcarter.me.uk/") , not (http-get
"www.markcarter.me.uk") .
;;; (http-get "http://www.markcarter.me.uk/index.html")
(provide/doc
(proc-doc/names
http-get
(-> string?
string?) ; the output
(string-url)
@{Say something meaningful about http-get.}))
(define (http-get url-as-string)
(port->string (get-pure-port (string->url url-as-string))))
;)
A previous poster said that the #lang directive created an implicit module.
However, this doesn't seem to be strictly true, as my function http-get is
automatically "provided" without explicit mention; which is not the same
behaviour as when I use a (module ...). Beats me.