Google
 

Trailing-Edge - PDP-10 Archives - clisp - clisp/upsala/feature.lap
There are no other files named feature.lap in the archive.
;;; CLC vP.U.V.1(2) compiling CARMEN::SS:<CLISP.UPSALA>FEATURE.CLISP.2

(IN-PACKAGE (QUOTE USER::LISP)) 
(EXPORT (QUOTE (MAKE-FEATURE))) 
(%PUT (QUOTE FEATUREP) (QUOTE %FUN-DOCUMENTATION) (QUOTE "If X is an atom, see if it is present in *FEATURES*.  Also
  handle arbitrary combinations of atoms using NOT, AND, OR.")) 

#_(LAP #0_FEATUREP EXPR
       (ENTRY-POINTS (2-FEW 1 2-MANY 2-MANY 2-MANY 2-MANY 2-MANY))
       #0_(*KEYWORD-PACKAGE* *FEATURES* NOT T AND FEATUREP OR)
       (CODE-START)
(LABEL 1)    (ADDI Q 3)
             (MOVEM O1 -2 Q)
             (CALL ATOM 1)
             (JUMPE O1 3)
             (MOVE O1 -2 Q)
             (CALL SYMBOL-NAME 1)
             (MOVEM O1 0 Q)
             (MOVE O2 (SPECIAL 0))
             (CALL INTERN 2)
             (MOVEM O1 -1 Q)
             (JRST 4)
(LABEL 3)    (MOVE O5 -2 Q)
             (MOVEM O5 -1 Q)
(LABEL 4)    (MOVE O1 -1 Q)
             (CALL ATOM 1)
             (JUMPE O1 6)
             (MOVE O2 (SPECIAL 1))
             (MOVE O1 -1 Q)
             (CALL MEMQ 2)
             (JRST 5)
(LABEL 6)    (MOVE O1 -1 Q)
             (MOVE O5 0 O1)
             (MOVEM O5 0 Q)
             (MOVE O2 (CONSTANT 2))
             (CAME O2 0 Q)
             (JRST 7)
             (MOVE O1 1 O1)
             (MOVE O1 0 O1)
             (CALL FEATUREP 1)
             (TDCN O1 O1)
             (MOVE O1 (CONSTANT 3))
             (MOVEI N 1)
             (JRST 5)
(LABEL 7)    (MOVE O1 -1 Q)
             (MOVE O5 0 O1)
             (MOVEM O5 0 Q)
             (MOVE O2 (CONSTANT 4))
             (CAME O2 0 Q)
             (JRST 8)
             (MOVE O2 1 O1)
             (MOVE O1 (CONSTANT 5))
             (CALL EVERY 2)
             (JRST 5)
(LABEL 8)    (MOVE O1 -1 Q)
             (MOVE O5 0 O1)
             (MOVEM O5 0 Q)
             (MOVE O2 (CONSTANT 6))
             (CAME O2 0 Q)
             (JRST 9)
             (MOVE O2 1 O1)
             (MOVE O1 (CONSTANT 5))
             (CALL SOME 2)
             (JRST 5)
(LABEL 9)    (SKIPA)
             (JRST 10)
             (MOVE O1 NIL)
             (MOVEI N 1)
(LABEL 10)
(LABEL 5)    (SUBI Q 3)
             (POPJ P)
)

(%PUT (QUOTE FEATUREP) (QUOTE %ARGS-DOCUMENTATION) (QUOTE (X))) 
(%PUT (QUOTE FEATUREP) (QUOTE %SOURCE-DOCUMENTATION) (CONS (QUOTE "CARMEN::SS:<CLISP.UPSALA>FEATURE.CLISP.2") (GET (QUOTE FEATUREP) (QUOTE %SOURCE-DOCUMENTATION)))) 
(%PUT (QUOTE MAKE-FEATURE) (QUOTE %FUN-DOCUMENTATION) (QUOTE "Make X be a feature, i.e. push it on *FEATURES*")) 

#_(LAP #0_MAKE-FEATURE EXPR
       (ENTRY-POINTS (2-FEW 1 2-MANY 2-MANY 2-MANY 2-MANY 2-MANY))
       #0_(*KEYWORD-PACKAGE* *FEATURES*)
       (CODE-START)
(LABEL 1)    (ADDI Q 3)
             (MOVEM O1 -2 Q)
             (CALL ATOM 1)
             (JUMPE O1 3)
             (MOVE O1 -2 Q)
             (CALL SYMBOL-NAME 1)
             (MOVEM O1 0 Q)
             (MOVE O2 (SPECIAL 0))
             (CALL INTERN 2)
             (MOVEM O1 -1 Q)
             (JRST 4)
(LABEL 3)    (MOVE O5 -2 Q)
             (MOVEM O5 -1 Q)
(LABEL 4)    (MOVE O1 -1 Q)
             (CALL FEATUREP 1)
             (JUMPN O1 6)
             (MOVE O2 (SPECIAL 1))
             (MOVE O1 -1 Q)
             (CALL CONS 2)
             (MOVEM O1 (SPECIAL 1))
             (MOVEI N 1)
             (JRST 5)
(LABEL 6)    (MOVE O1 NIL)
             (MOVEI N 1)
(LABEL 5)    (SUBI Q 3)
             (POPJ P)
)

(%PUT (QUOTE MAKE-FEATURE) (QUOTE %ARGS-DOCUMENTATION) (QUOTE (X))) 
(%PUT (QUOTE MAKE-FEATURE) (QUOTE %SOURCE-DOCUMENTATION) (CONS (QUOTE "CARMEN::SS:<CLISP.UPSALA>FEATURE.CLISP.2") (GET (QUOTE MAKE-FEATURE) (QUOTE %SOURCE-DOCUMENTATION)))) 
(MAPL (FUNCTION (LAMBDA (X) (RPLACA X (INTERN (SYMBOL-NAME (CAR X)) *KEYWORD-PACKAGE*)))) *FEATURES*)