[racket] Why implement modules as signatures and units, if there's only 1 unit?

From: Eli Barzilay (eli at barzilay.org)
Date: Wed Jun 1 15:37:40 EDT 2011

Two minutes ago, Greg Hendershott wrote:
> In e.g. `net' I notice many modules done as 3 files. For instance:
> pop3-sig.rkt
> pop3-unit.rkt
> pop3.rkt
> Similar trios for base64, cgi, cookie, dns, ftp, head, imap, mime,
> nntp, qp, sendmail, smtp, uri-codec, url. [...]
> But all of these have only the one unit. In which case, seems it
> would be simpler to do these as plain modules, in 1 file each?

Those files have very old roots, predating the module system.

          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!

Posted on the users mailing list.