Re: Special Interest Groups - HTTP/CGI and SMTP/MIME
Bill Yerazunis <[email protected]>
| Newsgroups | gmane.mail.spam.crm114 |
|---|---|
| Message-ID | <[email protected]> |
From: Chris Babcock <[email protected]> > Start CRM114mk2 and clean things up as you've described. What I'm really panting for is a socket interface. When netcat is in listening mode, it doesn't close stdout until the client closes the socket. That makes the keep flag useless for running a server on just about any protocol. I want to set up something co-routine-like that blocks execution of the crm script while waiting for a network connection then spawns a handler thread to deal with the connection while the main program goes back to waiting for a new connection. Hmmm... lemme think a bit. So, what you want is a "spawn on event=connect" to a socket? As you might guess, I didn't think of that in the original design, although for mail filtering, yeah, it might be cool to have the entire mail handler live in CRM114. Some flavor of scoping or notion of name spaces will have to happen before it's feasible to develop library code... and candidly, that's what I spend most of my time doing. I've got a dirt simple SMTP client, some basic CGI stuff and an HTML template driver. It's surprisingly few LOCs, but it's enough that I've put off upgrading to BlameBarack.=20 Namespaces are easy. Just prefix all of YOUR variables with LIBNAME_ . So, your library foo would have :FOO_var1: :FOO_var2: and so on. Note this is an old technique; DEC VMS software used three-letter code prefixes from day 1, and getting your three-letter prefix was the "first birthday" for any software project. I'm kind of hoping that the scoping mechanism in the main branch is something really novel and idiomaticly CRM. Since you can syscall labels, using syscall v. call isn't really that big of a deal. If declaring namespaces were explicit, though, existing code would still work and accessing libraries would be transparent. The issue would then be finding an idiomatic way to declare the namespace. We're thinking about it. But libcrm114 comes first. - Bill Yerazunis ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com