🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.lang.forth
Article #21

RPN + logic

#21
From: Yasunori Harada
Date: Mon, 14 Sep 1992 04:17
64 lines
2229 bytes
$@$_$J$5$s!"(J
$@5U%]!<%i%s%I$HO@M}7?8@8l$NM;9g$,$G$-$^$7$?!*!*(J
$@$$$+$,$G$7$g$&!)(J

$@<!$N$h$&$K;H$$$^$9!#(J

>_ dup head 2 == ?
 (2 . !*undef*)

$@$3$3$G!"(J>$@$O%W%m%s%W%H$G!"(J _ $@$OO@M}JQ?t$r:n$j$^$9!#(Jdup$@$K$h$C$FO@M}(J$@JQ?t(J
$@$X$N%]%$%s%?$rJ#@=$7!"$=$N0l$D$N(Jhead (lisp$@$N(Jcar)$@$r(J2$@$H(Junify(==)$@$7$^$9!#(J
$@J#@=$5$l$?$b$&0l$D$N%]%$%s(J$@%?$,%9%?%C%/$K;D$C$F$$$k$N$G$=$l$rI=<((J(?)$@$7(J
$@$^$9!#(J

>_ dup (3 4) append (1 2 3 4) == ?
 (1 2)

$@$3$l$O(J$@O@M}JQ?t$H(J(3 4)$@$H$r(Jappend$@$7!"(J(1 2 3 4)$@$H(Junify$@$9$k$N$G(J append $@$r(J
$@2?EY$+%P%C%/%H%i%C%/$7$F@.8y$7$^$9!#$=(J$@$N$H$-!"O@M}JQ?t$O(J(1 2)$@$H$J$C$F(J
$@$$$k$N$G$=$l$r(J?$@$K$h$jI=<($7$^$9!#(J

$@$5$F!"$3$3$G(Jappend$@$NDj5A$r>R2p$7$^(J$@$9!#(J

>'append ((swap nil ==) (swap snoc rot append cons) or) def

or $@$O%A%g%$%9%]%$%s%H$r@8@.$7$^$7$F(J$@!"%P%C%/%H%i%C%/$G$O$3$3$KLa$C$F$-(J
$@$^$9!#La$C$F$-$?>l9g!"%9%?%C%/$J$I$N>pJs$bI|85$7$^$9!#(J

$@$3$3$G!"(J

1 2     swap   ->  2 1
(1 2 3) snoc   ->  1 (2 3)
1 2 3   rot    ->  2 3 1
1 (2 3) cons   ->  (1 2 3)

$@$G$9!#(Jappend$@$N(J swap snoc rot append cons $@$NF0$-$O(J

(1 2 3) (4 5 6)
   swap ->
(4 5 6) (1 2 3)
   snoc ->
(4 5 6) 1 (2 3)
   rot  ->
1 (2 3) (4 5 6)
   append ->
1 (2 3 4 5 6)
   cons ->
(1 2 3 4 5 6)

$@$N$h$&$K$J$j$^$9!#(J

$@$A$J$_$K$3$N=hM}7O$O(Jlisp$@$G5-=R$5$l$F$$$^$7$F!"(J200$@9T0J2<$G$9!#(J
$@M_$7$$J}$,$$$i$C$7(J$@$c$$$^$7$?$i$*Aw$j$7$^$9!#(J

$@$3$NFCD'$O(Jprolog$@$G$OLLE]$G$"$C$?JQ?t$N=hM}$,I,MW$J$$E@$G$7$g$&!#(J
$@$=$NBe$o(J$@$j!"%9%?%C%/$rA`:n$7$FJ#;($J%j%9%H9=B$$r:n$k$N$,BgJQ$G$9$,!#(J


$@86ED9/FA(J@NTT$@4pAC8&5f=j(J


$@Bl@n$5$s!"$*5W(J$@$7$V$j$G$9!#(J
NTT$@$K="?&$7$^$7$?!#(J
Technical Details
Message-ID: <HARA.92Sep14131731@seraph.nttlab.ntt.jp>
Path: arc1-ca.pugleaf.net!sparky!uunet!ccut!wsclark!lab!lab!hara

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!ccut!wsclark!lab!lab!hara
From: hara@seraph.nttlab.ntt.jp (Yasunori Harada)
Newsgroups: fj.lang.forth
Subject: RPN + logic
Message-ID: <HARA.92Sep14131731@seraph.nttlab.ntt.jp>
Date: 14 Sep 92 04:17:31 GMT
Sender: news@lab.ntt.jp
Reply-To: hara@seraph.ntt
Distribution: fj
Organization: NTT Basic Research Laboratories, Musashino, Tokyo, JAPAN
Lines: 64