🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.lang.lisp
Article #514

Re: AKCL compiler

#514
From: Hisao Kuroda
Date: Wed, 12 Feb 1992 03:53
108 lines
3098 bytes
$@9uED!w?tM}%7%9%F%`$G$9!#(J

In article <UZUHARA.92Feb6183515@wsrs2.trl.ibm.com> uzuhara@trl.ibm.co.jp (Shigeru UZUHARA) writes:

 ;
 ;AKCL($@$G$-$k$@$1:G?7HG$N(J)$@$r<j85$K$*;}$A$NJ}$K(J
 ;$@$*4j$$$,$"$k$N$G$9$,!D(J
 ;$@<!$N%W%m%0%i%`$r(J Safety=0 $@$G%3%s%Q%$%k$7$?7k2L!"$I$s$J(J
 ;.c$@%U%!%$%k$,$G$-$k$+65$($F$$$?$@$1$J$$$G$7$g$&$+!)(J
 ;
 ;
 ;(defun afo (x y &aux z)
 ;  (setf z (car y))
 ;  (setf (car y) nil)
 ;  (if (null x)
 ;	y
 ;	(prog1
 ;	  (cons (car x) (afo (cdr x) y))
 ;	  (bfo z))))
 ;

$@$3$s$J$N$G$$$$$N$G$7$g$&$+!)(J

dw@1% kcl
AKCL (Austin Kyoto Common Lisp)  Version(1.603) 1992$@G/(J02$@7n(J01$@F|(J($@EZ(J) 00$@;~(J23$@J,(J14$@IC(J JST
Contains Enhancements by W. Schelter

>(defun afo (x y &aux z)
  (setf z (car y))
  (setf (car y) nil)
  (if (null x)
      y
      (prog1
        (cons (car x) (afo (cdr x) y))
        (bfo z))))

AFO

>(disassemble 'afo)
Compiling gazonk0.lsp.
End of Pass 1.  
#include <cmpinclude.h>
#include "gazonk0.h"
init_gazonk0(){do_init(VV);}
/*	function definition for AFO	*/

static L1()
{register object *base=vs_base;
	register object *sup=base+VM1; VC1
	vs_check;
	{object V1;
	register object V2;
	V1=(base[0]);
	V2=(base[1]);
	vs_top=sup;
TTL:;
	{object V3;
	V3= Cnil;
	V3= CMPcar((V2));
	(V2)->c.c_car = Cnil;
	if(((V1))!=Cnil){
	goto T7;}
	base[2]= (V2);
	vs_top=(vs_base=base+2)+1;
	return;
T7:;
	{object V6;
	V7= CMPcar((V1));
	base[2]= CMPcdr((V1));
	base[3]= (V2);
	vs_top=(vs_base=base+2)+2;
	(void) (*Lnk0)();
	vs_top=sup;
	V8= vs_base[0];
	V6= make_cons(/* INLINE-ARGS */V7,V8);
	base[2]= (V3);
	vs_top=(vs_base=base+2)+1;
	(void) (*Lnk1)();
	vs_top=sup;
	base[2]= (V6);
	vs_top=(vs_base=base+2)+1;
	return;}}
	}
}
static LnkT1(){ call_or_link(VV[1],&Lnk1);} /* BFO */
static LnkT0(){ call_or_link(VV[0],&Lnk0);} /* AFO */
End of Pass 2.  
OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3
Finished compiling gazonk0.lsp.       
#(
#(user::afo user::bfo (system::%init . #((system::warn-version 603) (system::mf (lisp::quote user::afo) 0) (system::debug (lisp::quote user::afo) (lisp::quote (user::x user::y))))))
)

static L1();
#define VC1 object  V8 ,V7;
#define VM1 4
static char * VVi[3]={
#define Cdata VV[2]
(char *)(L1)
};
#define VV ((object *)VVi)
static  LnkT1() ;
static  (*Lnk1)() = LnkT1;
static  LnkT0() ;
static  (*Lnk0)() = LnkT0;
T

>
Technical Details
Message-ID: <368@msisun.msi.co.jp>
Path: arc1-ca.pugleaf.net!sparky!uunet!sun-barr!ccut!wnoc-tyo-news!sh.wide!kogwy!msisun!kuroda
References: <UZUHARA.92Feb6183515@wsrs2.trl.ibm.com>

Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS
X-Google-Thread: 1421c0,d03b4a1a9f5db2a3,start
X-Google-Attributes: gid1421c0,public
X-Google-ArrivalTime: 1992-02-15 21:54:18 PST
Path: arc1-ca.pugleaf.net!sparky!uunet!sun-barr!ccut!wnoc-tyo-news!sh.wide!kogwy!msisun!kuroda
From: kuroda@msisun.msi.co.jp (Hisao Kuroda)
Newsgroups: fj.lang.lisp
Subject: Re: AKCL compiler
Message-ID: <368@msisun.msi.co.jp>
Date: 12 Feb 92 03:53:16 GMT
References: <UZUHARA.92Feb6183515@wsrs2.trl.ibm.com>
Distribution: fj
Organization: MSI.Inc. Shinjyuku-ku,Tokyo,JAPAN
Lines: 108
In-reply-to: uzuhara@trl.ibm.co.jp's message of 6 Feb 92 09:35:15 GMT