From: Nix [mailto:[EMAIL PROTECTED]
> 
> On 26 Nov 2006, [EMAIL PROTECTED] told this:
> > From: "Nix" <[EMAIL PROTECTED]>
> >
> >> On 20 Nov 2006, Giampaolo Tomassoni spake thusly:
> >>
> >>>> That's not even mentioning the metaprogramming and higher-order
> >>>> programming techniques that we use extensively in 
> SpamAssassin -- those
> >>>> are basically *just not possible* in C/C++. ;)
> >>>
> >>> Ops. What's this stuff? Let me know.
> >> eval and all that it implies. Compiling and executing code at runtime.
> >> Calling functions by name. That sort of thing.
> >> Of course you *can* do it in C/C++. The traditional method is to write
> >> an interpreter or JIT-compiler for another language and do whatever-it-
> >> is in that other language.
> >
> > Of course, you can do that from fast C/C++ code using exec() or 
> a perhaps
> > better a spamc/spamd trick to call these fancy perl facilities. 
> But that's
> > cheating, isn't it?
> 
> Yeah, you could chatter with perl over a pipe, or just embed 
> perl. Or just,
> y'know, use perl :)

Ok. Just a note: I didn't mean to write a perl interpreter, but just to supply 
with a simple SOA parser and ExpressionBTree builder to an hypotetical rule 
compiler for an even more hypotetical SAC++ deamon. Most of the rules in my 
rule body follow a simple SOA pattern. I didn't mean to "embed perl" into it 
nor to exec SA or otherwise use actual SA (apart for rules): that would be 
patently stupid.

giampaolo 

> 
> > Language wars get boring, ya know.
> 
> Never! Rewrite SpamAssassin in Objective Caml, Curry, and Cayenne now!
> It'll be so much more efficient afterwards, and the hair our users
> lose trying to install the myriad loony interpreters will *help* them
> in the long run!
> 
> -- 
> `The main high-level difference between Emacs and (say) UNIX, Windows,
>  or BeOS... is that Emacs boots quicker.' --- PdS

Reply via email to