Changeset 11323


Ignore:
Timestamp:
09/18/08 20:48:17 (14 years ago)
Author:
ehuelsmann
Message:

Cleanup patch provided by Ville.

Patch by: Ville Voutilianen <ville.voutilainen at gmail dot com>

File:
1 edited

Legend:

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

    r11316 r11323  
    412412    if (arity == 0)
    413413      {
    414         final LispThread thread = LispThread.currentThread();
    415         LispObject result = NIL;
    416         LispObject prog = body;
    417         while (prog != NIL)
    418           {
    419             result = eval(prog.car(), environment, thread);
    420             prog = prog.cdr();
    421           }
    422         return result;
     414        return progn(body, environment,
     415                     LispThread.currentThread());
    423416      }
    424417    else
     
    445438        if (auxVars != null)
    446439          bindAuxVars(ext, thread);
    447         LispObject result = NIL;
    448         LispObject prog = body;
    449440        try
    450441          {
    451             while (prog != NIL)
    452               {
    453                 result = eval(prog.car(), ext, thread);
    454                 prog = prog.cdr();
    455               }
     442            return progn(body, ext, thread);
    456443          }
    457444        finally
     
    459446            thread.lastSpecialBinding = lastSpecialBinding;
    460447          }
    461         return result;
    462448      }
    463449    else
     
    490476        if (auxVars != null)
    491477          bindAuxVars(ext, thread);
    492         LispObject result = NIL;
    493         LispObject prog = body;
    494478        try
    495479          {
    496             while (prog != NIL)
    497               {
    498                 result = eval(prog.car(), ext, thread);
    499                 prog = prog.cdr();
    500               }
     480            return progn(body, ext, thread);
    501481          }
    502482        finally
     
    504484            thread.lastSpecialBinding = lastSpecialBinding;
    505485          }
    506         return result;
    507486      }
    508487    else
     
    538517        if (auxVars != null)
    539518          bindAuxVars(ext, thread);
    540         LispObject result = NIL;
    541         LispObject prog = body;
    542519        try
    543520          {
    544             while (prog != NIL)
    545               {
    546                 result = eval(prog.car(), ext, thread);
    547                 prog = prog.cdr();
    548               }
     521            return progn(body, ext, thread);
    549522          }
    550523        finally
     
    552525            thread.lastSpecialBinding = lastSpecialBinding;
    553526          }
    554         return result;
    555527      }
    556528    else
     
    588560        if (auxVars != null)
    589561          bindAuxVars(ext, thread);
    590         LispObject result = NIL;
    591         LispObject prog = body;
    592562        try
    593563          {
    594             while (prog != NIL)
    595               {
    596                 result = eval(prog.car(), ext, thread);
    597                 prog = prog.cdr();
    598               }
     564            return progn(body, ext, thread);
    599565          }
    600566        finally
     
    602568            thread.lastSpecialBinding = lastSpecialBinding;
    603569          }
    604         return result;
    605570      }
    606571    else
     
    641606        if (auxVars != null)
    642607          bindAuxVars(ext, thread);
    643         LispObject result = NIL;
    644         LispObject prog = body;
    645608        try
    646609          {
    647             while (prog != NIL)
    648               {
    649                 result = eval(prog.car(), ext, thread);
    650                 prog = prog.cdr();
    651               }
     610            return progn(body, ext, thread);
    652611          }
    653612        finally
     
    655614            thread.lastSpecialBinding = lastSpecialBinding;
    656615          }
    657         return result;
    658616      }
    659617    else
     
    696654        if (auxVars != null)
    697655          bindAuxVars(ext, thread);
    698         LispObject result = NIL;
    699         LispObject prog = body;
    700656        try
    701657          {
    702             while (prog != NIL)
    703               {
    704                 result = eval(prog.car(), ext, thread);
    705                 prog = prog.cdr();
    706               }
     658            return progn(body, ext, thread);
    707659          }
    708660        finally
     
    710662            thread.lastSpecialBinding = lastSpecialBinding;
    711663          }
    712         return result;
    713664      }
    714665    else
     
    754705        if (auxVars != null)
    755706          bindAuxVars(ext, thread);
    756         LispObject result = NIL;
    757         LispObject prog = body;
    758707        try
    759708          {
    760             while (prog != NIL)
    761               {
    762                 result = eval(prog.car(), ext, thread);
    763                 prog = prog.cdr();
    764               }
     709            return progn(body, ext, thread);
    765710          }
    766711        finally
     
    768713            thread.lastSpecialBinding = lastSpecialBinding;
    769714          }
    770         return result;
    771715      }
    772716    else
     
    819763        if (auxVars != null)
    820764          bindAuxVars(ext, thread);
    821         LispObject result = NIL;
    822         LispObject prog = body;
    823765        try
    824766          {
    825             while (prog != NIL)
    826               {
    827                 result = eval(prog.car(), ext, thread);
    828                 prog = prog.cdr();
    829               }
     767            return progn(body, ext, thread);
    830768          }
    831769        finally
     
    833771            thread.lastSpecialBinding = lastSpecialBinding;
    834772          }
    835         return result;
    836773      }
    837774    else
Note: See TracChangeset for help on using the changeset viewer.