From owner-acpi-jp@jp.freebsd.org  Mon Dec  6 04:05:53 1999
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id EAA50711;
	Mon, 6 Dec 1999 04:05:53 +0900 (JST)
	(envelope-from owner-acpi-jp@jp.FreeBSD.org)
Received: from light.imasy.or.jp (root@light.imasy.or.jp [202.227.24.4])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id EAA50706
	for <acpi-jp@jp.freebsd.org>; Mon, 6 Dec 1999 04:05:52 +0900 (JST)
	(envelope-from iwasaki@jp.FreeBSD.org)
Received: from tasogare.imasy.or.jp (daemon@tasogare.imasy.or.jp [202.227.24.5])
	by light.imasy.or.jp (8.9.3+3.2W/3.7W-light) with ESMTP id EAA00169
	for <acpi-jp@jp.freebsd.org>; Mon, 6 Dec 1999 04:05:51 +0900 (JST)
	(envelope-from iwasaki@jp.FreeBSD.org)
Received: from localhost (isdn18.imasy.or.jp [202.227.24.210])
	by tasogare.imasy.or.jp (8.9.3+3.2W/3.7W-tasogare/smtpfeed 1.01) with ESMTP id EAA17448
	for <acpi-jp@jp.freebsd.org>; Mon, 6 Dec 1999 04:05:49 +0900 (JST)
	(envelope-from iwasaki@jp.FreeBSD.org)
Message-Id: <199912051905.EAA17448@tasogare.imasy.or.jp>
To: acpi-jp@jp.freebsd.org
In-Reply-To: Your message of "Sun, 05 Dec 1999 16:26:32 +0900"
	<199912050726.QAA29512@o3.otc.ogis-ri.co.jp>
References: <199912050726.QAA29512@o3.otc.ogis-ri.co.jp>
X-Mailer: Mew version 1.93 on Emacs 19.34 / Mule 2.3 (SUETSUMUHANA)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Date: Mon, 06 Dec 1999 04:05:48 +0900
From: Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
X-Dispatcher: imput version 980905(IM100)
Lines: 114
Reply-To: acpi-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+990727
X-Sequence: acpi-jp 145
Subject: [acpi-jp 145] Re: AML Namaspece design
Errors-To: owner-acpi-jp@jp.freebsd.org
Sender: owner-acpi-jp@jp.freebsd.org
X-Originator: iwasaki@jp.freebsd.org

> >method $B$N<B9T$NA0=hM}$H$7$F(B global $B$J$d$D$H$OJL$K0lEY2r@O$7$F(B
> >$B4IM}$7$F$*$1$P$$$$$G$9$h$M!#(B
> 
> $B$$$(!"$=$l$G$O$^$:$$$G$9!#(B
[snip]
> $B<B9TA0$K(B Method $B$NCf$r2r@O$7$F!"(BNamedObject $B$N@8@.$r$d$C$F$7$^$C$?$i!"(B
> $B0l$DL\$N(BStore $B$,(B \XYZ.BAR $B$NCM$G$O$J$/!"(B\XYZ.FOO.BAR $B$NCM$r;H$C$F$7$^$$$^$9!#(B
> $B$3$N(B BAR $B$N@8@.$O!"(BName(BAR,7) $B$r<B9T$9$k$H$-$K@8@.$5$l$k$H$+$+$l$F$$$^$9$N$G!"(B
> $B<B9T;~$KC`<!:n$C$F$d$i$J$$$H$$$1$^$;$s!#(B

$B8@MU$,B-$j$J$/$F$9$$$^$;$s!#(Blocal $B$J(B namespace $B$r9=@.$7$F$$$/(B
$B$N$HF1;~$KL>A02r7h$b$d$C$F$7$^$C$F!"(Bmethod $B$N<B9T$,=*$o$C$?$i(B
local $B$J(B namespace $B$rGK4~$7$FLa$k!"$H$$$&0UL#$G$9!#(B
$B@h$K$G$F$-$?Nc$G@bL@$7$F$_$^$9!#(BCSEG $B$H(B DSEG $B$,ITL@$J$N$G!"(B
$B$H$j$"$($:(B \CSEG $B$H(B \DSEG $B$K$7$F$*$-$^$9!#(B
$B=`Hw=hM}$O0J2<$N$h$&$JN.$l$K$J$j$^$9!#(B
		name space
step	global 		local		$B2r@O(B
0	\XYZ.BAR,
	\CSEG,
	\DSEG
1					Store() $BG'<1(B
2					  BAR $BI>2A(B
3					    local namspace $BC5:w(B
4					    global namspace $BC5:w(B
5					  --> \XYZ.BAR
6					  CSEG $BI>2A(B
7					    local namspace $BC5:w(B
8					    global namspace $BC5:w(B
9					  --> \CSEG
10					--> Store(\XYZ.BAR, \CSEG)
11					Name() $BG'<1(B
12					  BAR $B$H$$$&L>A0$G(B local $B$K(B object $B@8@.(B
13			BAR
14					Store() $BG'<1(B
15					  BAR $BI>2A(B
16					    local namspace $BC5:w(B
17					  --> \XYZ.FOO.BAR
18					  DSEG $BI>2A(B
19					    local namspace $BC5:w(B
20					    global namspace $BC5:w(B
21					  --> \DSEG
22					--> Store(\XYZ.FOO.BAR, \DSEG)
23					Name() $BG'<1(B
24					  \XYZ.FOOB $B$r(B local $B$K@8@.(B
25			\XYZ.FOOB

$B8e$O2r@O$K$h$C$FF@$i$l$?0J2<$r<B9T$9$k$@$1$H9M$($F$^$7$?!#(B
	Store(\XYZ.BAR, \CSEG)
	Store(\XYZ.FOO.BAR, \DSEG)

$B$G$b!"(B
> 	Scope(\XYZ) {
> 		Name(BAR, 5)
> 		Method(FOO, 1) {
> 			If (Arg0) {
> 				Name(Bar, 7);
> 				Store(One, BAR);
> 			}
> 			// If (Arg0)
> 			//	{Store(\XYZ.BAR, CSEG)}
> 			// Else
> 			//	{Store(\XYZ.FOO.BAR, CSEG)}
> 			// $B$HEy2A!)(B
> 			Store(BAR, CSEG)
> 		}
> 	}
> 
> $B$3$s$J$N$,$"$C$?>l9g!"OC$O$d$d$3$7$$$G$9$h$M!#(B

$B$&$&!"(BDeclare $B7O$NL?Na$H>r7oJ,4t$,Mm$`$H%[%s%H$$$d$G$9$M$'!#(B
Name() $B$,<B9T$5$l$?;~E@$G(B \XYZ.FOO.BAR $B$,$G$-$k$N$G!"(B
late binding $B$9$k$7$+$J$$$s$G$9$M!#(B
C++ $B$N2>A[4X?t%F!<%V%k$_$?$$$K$9$l$P;EAH$_$O:n$l$=$&$G$9$,(B
$BLLE]$G$9$M!#(B
$B7kO@$H$7$F$O<B9TA0$K2r@O$7$FL>A02r7h$9$k$N$O$$$m$$$m$H(B
$B5;$,I,MW$H$5$l3+H/$K;~4V$,$+$+$j$=$&$J$N$G!"C1=cL@2w$K(B
$B%$%s%?%W%j%?$GC`<!I>2A$7$J$,$i<B9T$7$F$$$/J}<0$G$H$j$"$($:(B
$B$$$-$^$7$g$&!#$G!"@-G=$d?.Mj@-$KLdBj$,$"$l$P!":#$^$GDs0F$5$l$?(B
$B5DO@$r$b$H$K2~A1$7$F$$$-$?$$$H;W$$$^$9!#(B

> ># $B$"$k$$$O<B9T$7$J$,$iA0J};2>H$,=P$F$-$?$i0lC6;_$^$C$FC5$7$K$$$C$F(B
> ># $B2r7h$7$?$i<B9T$r:F3+(B...
> # $B$J$b$s$G!"$I$C$A$+$H$$$&$HA0J};2>H$7$F$O$$$1$J$$$N$G$O!D(B

# $B$b$7$+$7$?$i!"(Bmethod $B$NCf$NL>A02r7hLdBj$GA0J};2>H$H$$$&$N$O(B
# $BB8:_$7$J$$$b$N$+$b(B ($B8@$$49$($l$P!"$=$&$$$&(B code $B$O6X;_$5$l$F$$$k(B)?

> >method $B$N:F5"8F$S=P$7$O$"$k$s$G$7$?$C$1(B?  $B$"$k$H$9$l$P!"(B
> >$B%*!<%HJQ?t$_$?$$$J07$$$G$9$+$M!#(B
> 
> 	Scope(\XYZ) {
> 		Method(FACT, 1) {
> 			If (Arg0) {
> 				Name(\XYZ.FOO,1)
> 				Store(Arg0, Local1)
> 				Decrement(Local1)
> 				Return Multiply(FACT(Local1),Arg0)
> 			}
> 			Else {
> 				Return 1;
> 			}
> 		}
> 	}
> $B$H$$$&$h$&$J>l9g$G$9$h$M!#(B

$B$=$&$G$9$M!#$3$&$$$&$N$,(B AML spec $B>e$"$jF@$k$N$+!"$^$?(B
$B$=$N>l9g(B Name(\XYZ.FOO,1) $B$O(B method FACT $B$KM#0l@8@.$5$l$k$N$+(B
$B8F$S=P$7Kh$KFHN)$K4IM}$9$Y$-$J$N$+!"$A$g$C$HJ,$+$j$^$;$s!#(B
$BD>46E*$K$O8F$S=P$7Kh$KFHN)$K4IM}$7$F(B return $B$9$k;~$K$=$l$>$l(B
$BGK4~$7$F$$$/$h$&$J5$$,$7$F$$$^$9!#(B
$B:F5"$K8B$i$:B>$N(B method $B$r<B9T$9$k>l9g$b!"%$%s%?%W%j%?$N(B 
method $B<B9TIt$N%9%?%C%/>e$K(B local $B$J(B namespace $B$rMQ0U$9$k(B
$B$H$$$&46$8$G$7$g$&$+!#(B
