๐Ÿš€ go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.lang.lisp
Article #408

Re: MCL-bug &

#408
From: morioka ๅฎˆๅฒก ็Ÿฅๅฝฆ
Date: Thu, 11 Apr 1996 00:00
78 lines
3512 bytes
>>>>> In <4kh8st$qr8@ns.h.kyoto-u.ac.jp> 
>>>>>	yoshio@ug.h.kyoto-u.ac.jp (HAYASHI Yoshio) wrote:

ๆž—ใ•ใ‚“> ไธ€ๆ‰๏ผ ้›ป็ท็ ”ใ•ใ‚“ใซใ‚ˆใ‚‹ใจใ€Common Lispใฎไป•ๆง˜้€šใ‚Šใจใ„ใ†ใ“ใจใงใ™ใ€‚
ๆž—ใ•ใ‚“> ไธ€ๆ‰ใ•ใ‚“ใƒกใƒผใƒซใ‚ใ‚ŠใŒใจใ†ใ”ใ–ใ„ใพใ—ใŸใ€‚

ๆž—ใ•ใ‚“> Common LispใŒ่‡ชๅˆ†ใฎ็›ดๆ„Ÿใซๅˆใ‚ใชใ„ๅ‹•ไฝœใ‚’ใ—ใŸใ ใ‘ใงใ€ใƒใ‚ฐใงใ‚ใ‚‹
ๆž—ใ•ใ‚“> ใจใ„ใฃใฆใ—ใพใฃใŸใ‚ˆใ†ใงใ™ใ€‚

ๆž—ใ•ใ‚“> ใƒ—ใƒญใ‚ฐใƒฉใƒ ใ‚‚ใƒ€ใ‚คใ‚ขใƒญใ‚ฐใ‚’ใ ใ™ๅฟ…่ฆใ‚‚ใชใใ€
ๆž—ใ•ใ‚“> (defun gomi1 ()
ๆž—ใ•ใ‚“>   (let ((a '(0 0)))
ๆž—ใ•ใ‚“>     (print a)
ๆž—ใ•ใ‚“>     (incf (first a))))
ๆž—ใ•ใ‚“> ใ ใ‘ใงๅๅˆ†ใงใ—ใŸใ€‚

ๆž—ใ•ใ‚“> ใจใ“ใ‚ใงใ€ใ“ใ‚ŒใŒๅ‘ผใณๅ‡บใ™ๅบฆใซaใฎๅ€คใ‚’ๅค‰ใˆใฆใ—ใพใ†ใฎใฏใ€ไธ่‡ช็„ถใซ
ๆž—ใ•ใ‚“> ๆ€ใ†ใฎใงใ™ใŒใ€ๅˆ†ใ‹ใ‚Šใ‚„ใ™ใใ€ใใ‚ŒใŒ่‡ช็„ถใซๆ€ใˆใ‚‹ใ‚ˆใ†ใซ่ชฌๆ˜Žใงใใ‚‹
ๆž—ใ•ใ‚“> ไบบใŒใ„ใพใ—ใŸใ‚‰ใ€ๆ•™ใˆใฆใใ ใ•ใ„ใ€‚

ๆž—ใ•ใ‚“> ไพ‹ใˆใฐใ€ใ“ใฎใ“ใจใŒๅฝนใซ็ซ‹ใคไพ‹ใชใฉใ‚’ใ‚ใ’ใฆใใ‚Œใ‚‹ใจใ†ใ‚Œใ—ใ„ใงใ™ใ€‚

๏ผƒ MCL ใฏไฝฟใฃใฆใ„ใชใ„๏ผˆใจใ„ใ†ใ‚ˆใ‚Š Mac ใ‚’ไฝฟใฃใฆใ„ใชใ„๏ผ‰ใฎใงใ™ใŒโ€ฆ

  ๅฝนใซ็ซ‹ใคใ‹ใฉใ†ใ‹ใฏๅˆคใ‚Šใพใ›ใ‚“ใŒใ€ใ‚ชใƒ–ใ‚ธใ‚งใ‚ฏใƒˆๆŒ‡ๅ‘ใ‚‚ใฉใใ‚’ใ™ใ‚‹ใฎใซๅฝนใซ
็ซ‹ใกใพใ™ใ€‚

  ไพ‹ใˆใฐใ€

(setq position
      (let ((x 0) (y 0))
	(list
	 (cons 'set-x #'(lambda (num) (setq x num)))
	 (cons 'set-y #'(lambda (num) (setq y num)))
	 (cons 'get-x #'(lambda () x))
	 (cons 'get-y #'(lambda () y))
	 )))

(funcall (cdr (assoc 'get-x position)))
-> 0

(funcall (cdr (assoc 'set-x position)) 10)
-> 10

(funcall (cdr (assoc 'get-x position)))
-> 10

ใฆใชๆ„Ÿใ˜ใงใ™ใ€‚ใ“ใ‚Œใซใกใ‚‡ใฃใจ็šฎใ‚’ใ‹ใถใ›ใ‚Œใฐใกใ‚‡ใฃใจใ—ใŸใ‚ชใƒ–ใ‚ธใ‚งใ‚ฏใƒˆๆŒ‡ๅ‘
่จ€่ชžใงใ™ใ€‚๏ผˆ(funcall (cdr (assoc METHOD OBJECT)) ARG ...) ใ‚’ 
(send-message OBJECT METHOD ARG ...) ใจๆ›ธใใจใใ‚Œใฃใฝใ„ๆฐ—ๅˆ†ใซใชใ‚Šใพใ™
ใ‚ˆใญใ€‚(^_^)๏ผ‰

  ใคใพใ‚Šใ€้–ขๆ•ฐใซๅ†…้ƒจ็Šถๆ…‹ใ‚’ไฝœใ‚ŠใŸใ„ๅ ดๅˆใฏใ“ใฎๆ–นใŒไพฟๅˆฉใงใ™ใ€‚

  ไธŠใฎ้–ขๆ•ฐใซไผผใŸใ‚ˆใ†ใชไพ‹ใงใ™ใŒใ€

(defun position (&key x y)
  (let ((pos '(0 0)))
    (if x
	(setf (nth 0 pos) x)
      )
    (if y
	(setf (nth 0 pos) y)
      )
    pos))

ใจใ„ใ†ใ‚ˆใ†ใช้–ขๆ•ฐใ‚’ๆ›ธใใ“ใจใงๅ€คใ‚’่จญๅฎšใ™ใ‚‹้–ขๆ•ฐใจๅ€คใ‚’่ฟ”ใ™้–ขๆ•ฐใ‚’ๅ…ฑ้€šๅŒ–ใงใ
ใพใ™ใ€‚ใใ‚Œใซ็Šถๆ…‹ใ‚’่จ˜ๆ†ถใ™ใ‚‹ใฎใซๅคงๅŸŸๅค‰ๆ•ฐใ‚’ไฝœใ‚‰ใชใใฆใ‚‚่‰ฏใ„ใฎใŒใ†ใ‚Œใ—ใ„ใ‹
ใ‚‚็Ÿฅใ‚Œใพใ›ใ‚“ใ€‚

๏ผƒ ใ‚‚ใฃใจใ‚‚ใ€Emacs Lisp ใฎใ‚ˆใ†ใชๅ‹•็š„ๆŸ็ธ›ใ‚‚้–ขๆ•ฐใฎๆฉŸ่ƒฝใ‚’้ƒจๅˆ†็š„ใซๅค‰ใˆใ‚‹ใฎ
๏ผƒ ใซใฏไพฟๅˆฉใงใ€ใฉใฃใกใ‚‚ๆจใฆ้›ฃใ„ใงใ™ใŒใ€‚

-- 
โ”ฏโ”โ€ฆโ€ฅใƒปๆ‡ใ‹ใ—ใ„ๆœชๆฅใฎ่จ˜ๆ†ถใ‚’ใตใจๆ€ใ„ๅ‡บใ—ใ‹ใ‘ใŸใƒปโ€ฅโ€ฆโ”โ”โ”ฏโ”โ”โ”โ”ฏโ”
โ”‚โ”‚ โ”€ โ”‚  โ”€  ๏ผ    โ”€   โ”ผโ”€     โ”ฌ                โ”€   โ”€โ”ผ โ”ฌโ”ดโ”€
โ”ผโ”ผโ”€โ”ผ|ใ€“โ”โ”€โ”ผ ๅฎˆๅฒก ็Ÿฅๅฝฆ (MORIOKA Tomohiko) <morioka@jaist.ac.jp>โ”€
โ”ปโ”ปโ”โ”ปโ”โ”ทโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
Technical Details
Message-ID: <s1cohoztigu.fsf@jaist.ac.jp>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <4kdscg$9i4@ns.h.kyoto-u.ac.jp> <4kh8st$qr8@ns.h.kyoto-u.ac.jp>

Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS
X-Google-Thread: 1421c0,6e84f0ba6385f500
X-Google-Attributes: gid1421c0,public
From: morioka@jaist.ac.jp (ๅฎˆๅฒก ็Ÿฅๅฝฆ /
Subject: Re: MCL-bug &
Date: 1996/04/11
Message-ID: <s1cohoztigu.fsf@jaist.ac.jp>
X-Deja-AN: 147195170
sender: morioka@is28e1s91
dnas-posting-host: is28e1s91
references: <4kdscg$9i4@ns.h.kyoto-u.ac.jp> <4kh8st$qr8@ns.h.kyoto-u.ac.jp>
x-mua: tm-gnus 7.49 for September, tm-view 7.44
content-type: text/plain; charset=ISO-2022-JP
x-emacs: Mule 2.3 (ๆœซๆ‘˜่Šฑ) based on 19.30
organization: JAIST, Hokuriku / ๅŒ—้™ธๅ…ˆ็ซฏ็ง‘ๅญฆ
mime-version: 1.0 (generated by tm-edit 7.49)
newsgroups: fj.lang.lisp