Changeset 3826


Ignore:
Timestamp:
09/16/03 17:41:15 (20 years ago)
Author:
piso
Message:

Moved LAST to last.java.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/j/src/org/armedbear/lisp/Primitives.java

    r3816 r3826  
    33 *
    44 * Copyright (C) 2002-2003 Peter Graves
    5  * $Id: Primitives.java,v 1.399 2003-09-16 16:24:13 piso Exp $
     5 * $Id: Primitives.java,v 1.400 2003-09-16 17:41:15 piso Exp $
    66 *
    77 * This program is free software; you can redistribute it and/or
     
    4040    private static final int DIVIDE                     = 6;
    4141    private static final int EXIT                       = 7;
    42     private static final int LAST                       = 8;
    43     private static final int MAX                        = 9;
    44     private static final int MIN                        = 10;
    45     private static final int MULTIPLY                   = 11;
    46     private static final int VALUES                     = 12;
     42    private static final int MAX                        = 8;
     43    private static final int MIN                        = 9;
     44    private static final int MULTIPLY                   = 10;
     45    private static final int VALUES                     = 11;
    4746
    4847    // Primitive1
    49     private static final int ABS                        = 13;
    50     private static final int ARRAYP                     = 14;
    51     private static final int ARRAY_HAS_FILL_POINTER_P   = 15;
    52     private static final int BIT_VECTOR_P               = 16;
    53     private static final int BOTH_CASE_P                = 17;
    54     private static final int CHARACTERP                 = 18;
    55     private static final int CHAR_CODE                  = 19;
    56     private static final int CHAR_DOWNCASE              = 20;
    57     private static final int CHAR_INT                   = 21;
    58     private static final int CHAR_UPCASE                = 22;
    59     private static final int CODE_CHAR                  = 23;
    60     private static final int COMPILED_FUNCTION_P        = 24;
    61     private static final int CONSP                      = 25;
    62     private static final int EVAL                       = 26;
    63     private static final int EVENP                      = 27;
    64     private static final int FBOUNDP                    = 28;
    65     private static final int FMAKUNBOUND                = 29;
    66     private static final int FOURTH                     = 30;
    67     private static final int FUNCTIONP                  = 31;
    68     private static final int IDENTITY                   = 32;
    69     private static final int KEYWORDP                   = 33;
    70     private static final int LENGTH                     = 34;
    71     private static final int LISTP                      = 35;
    72     private static final int LOWER_CASE_P               = 36;
    73     private static final int MAKE_SYMBOL                = 37;
    74     private static final int MAKUNBOUND                 = 38;
    75     private static final int NUMBERP                    = 39;
    76     private static final int ODDP                       = 40;
    77     private static final int PREDECESSOR                = 41;
    78     private static final int SECOND                     = 42;
    79     private static final int SIMPLE_BIT_VECTOR_P        = 43;
    80     private static final int SIMPLE_STRING_P            = 44;
    81     private static final int SIMPLE_VECTOR_P            = 45;
    82     private static final int SPECIAL_OPERATOR_P         = 46;
    83     private static final int STRINGP                    = 47;
    84     private static final int SUCCESSOR                  = 48;
    85     private static final int SYMBOL_FUNCTION            = 49;
    86     private static final int SYMBOL_NAME                = 50;
    87     private static final int SYMBOL_PACKAGE             = 51;
    88     private static final int SYMBOL_PLIST               = 52;
    89     private static final int SYMBOL_VALUE               = 53;
    90     private static final int THIRD                      = 54;
    91     private static final int UPPER_CASE_P               = 55;
    92     private static final int VALUES_LIST                = 56;
    93     private static final int VECTORP                    = 57;
     48    private static final int ABS                        = 12;
     49    private static final int ARRAYP                     = 13;
     50    private static final int ARRAY_HAS_FILL_POINTER_P   = 14;
     51    private static final int BIT_VECTOR_P               = 15;
     52    private static final int BOTH_CASE_P                = 16;
     53    private static final int CHARACTERP                 = 17;
     54    private static final int CHAR_CODE                  = 18;
     55    private static final int CHAR_DOWNCASE              = 19;
     56    private static final int CHAR_INT                   = 20;
     57    private static final int CHAR_UPCASE                = 21;
     58    private static final int CODE_CHAR                  = 22;
     59    private static final int COMPILED_FUNCTION_P        = 23;
     60    private static final int CONSP                      = 24;
     61    private static final int EVAL                       = 25;
     62    private static final int EVENP                      = 26;
     63    private static final int FBOUNDP                    = 27;
     64    private static final int FMAKUNBOUND                = 28;
     65    private static final int FOURTH                     = 29;
     66    private static final int FUNCTIONP                  = 30;
     67    private static final int IDENTITY                   = 31;
     68    private static final int KEYWORDP                   = 32;
     69    private static final int LENGTH                     = 33;
     70    private static final int LISTP                      = 34;
     71    private static final int LOWER_CASE_P               = 35;
     72    private static final int MAKE_SYMBOL                = 36;
     73    private static final int MAKUNBOUND                 = 37;
     74    private static final int NUMBERP                    = 38;
     75    private static final int ODDP                       = 39;
     76    private static final int PREDECESSOR                = 40;
     77    private static final int SECOND                     = 41;
     78    private static final int SIMPLE_BIT_VECTOR_P        = 42;
     79    private static final int SIMPLE_STRING_P            = 43;
     80    private static final int SIMPLE_VECTOR_P            = 44;
     81    private static final int SPECIAL_OPERATOR_P         = 45;
     82    private static final int STRINGP                    = 46;
     83    private static final int SUCCESSOR                  = 47;
     84    private static final int SYMBOL_FUNCTION            = 48;
     85    private static final int SYMBOL_NAME                = 49;
     86    private static final int SYMBOL_PACKAGE             = 50;
     87    private static final int SYMBOL_PLIST               = 51;
     88    private static final int SYMBOL_VALUE               = 52;
     89    private static final int THIRD                      = 53;
     90    private static final int UPPER_CASE_P               = 54;
     91    private static final int VALUES_LIST                = 55;
     92    private static final int VECTORP                    = 56;
    9493
    9594    // Primitive2
    96     private static final int MEMBER                     = 58;
    97     private static final int RPLACA                     = 59;
    98     private static final int RPLACD                     = 60;
    99     private static final int SET                        = 61;
     95    private static final int MEMBER                     = 57;
     96    private static final int RPLACA                     = 58;
     97    private static final int RPLACD                     = 59;
     98    private static final int SET                        = 60;
    10099
    101100    private Primitives()
     
    110109        definePrimitive("/", DIVIDE);
    111110        definePrimitive("exit", EXIT);
    112         definePrimitive("last", LAST);
    113111        definePrimitive("max", MAX);
    114112        definePrimitive("min", MIN);
     
    231229                    if (args[i].isGreaterThan(result))
    232230                        result = args[i];
    233                 }
    234                 return result;
    235             }
    236             case LAST: {                        // ### last
    237                 int n;
    238                 switch (args.length) {
    239                     case 1:
    240                         n = 1;
    241                         break;
    242                     case 2:
    243                         n = Fixnum.getValue(args[1]);
    244                         break;
    245                     default:
    246                         throw new WrongNumberOfArgumentsException("LAST");
    247                 }
    248                 LispObject list = checkList(args[0]);
    249                 if (list == NIL)
    250                     return NIL;
    251                 LispObject result = list;
    252                 while (list instanceof Cons) {
    253                     list = list.cdr();
    254                     if (n-- <= 0)
    255                         result = result.cdr();
    256231                }
    257232                return result;
Note: See TracChangeset for help on using the changeset viewer.