Subject: Re: a working lisp telnetd?
From: (Rob Warnock)
Date: Mon, 25 Jul 2005 22:54:36 -0500
Newsgroups: comp.lang.lisp
Message-ID: <>
Christopher C. Stacy <> wrote:
| Scott Schwartz <"schwartz+@usenet "> writes:
| > GP lisper <> writes:
| > > Yes, but multiple connections is a 'hard part' in lisp.  Apparently,
| > > only threaded lisps can work.  That's interesting, since telnetd was
| > > part of linux long before threading appeared.
| > 
| > "If people understood fork, we wouldn't have threads." 
| >  -- Rob Pike.
| To implement telnet correctly for one connection requires multiprocessing.

Not so, if you have a reliable "select()" and non-blocking I/O.
In that case, a single process can easily do *multiple* telnetd's.
This is within-one-process multiprogramming, not multiprocessing.

Aside#1: What CMUCL call's "multiprocessing" is no such thing. It's really
  within-one-process multiprogramming, a.k.a. "cooperative green threads".]

Aside: I don't know if CMUCL's SERVE-EVENT is adequate to handle
  the "telnetd" job, but it might be.


Rob Warnock			<>
627 26th Avenue			<URL:>
San Mateo, CA 94403		(650)572-2607