yLuaz‘g‚Ýž‚ÝŒnŒ¾Œ ..
[2ch|¥Menu]
2:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/25 09:15:36
¡ŠÖ˜A‚µ‚Ă邩‚à‚µ‚ê‚È‚¢ƒXƒŒ
Io Language
½ÚØÝ¸(tech”Â)
2 part forth
½ÚØÝ¸(tech”Â)
œœœœTCL/TK‚Ȃ牴‚É•·‚¯ 2œœœœ
½ÚØÝ¸(tech”Â)
ECMAScript ƒfƒX 3
½ÚØÝ¸(tech”Â)
ŠeŽíƒ‰ƒCƒuƒ‰ƒŠÐ‰îƒXƒŒ2iƒQ§ìj
½ÚØÝ¸(gamedev”Â)
yPerl,PHPzLLƒoƒgƒ‹ƒƒƒCƒ„ƒ‹5yRuby,Pythonz
½ÚØÝ¸(tech”Â)
uƒRƒ“ƒpƒCƒ‰EƒXƒNƒŠƒvƒgƒGƒ“ƒWƒ“v‘Š’kŽº13
½ÚØÝ¸(tech”Â)
Garbage Collection (GC)‚ɂ‚¢‚ÄŒê‚éƒXƒŒ
½ÚØÝ¸(tech”Â)

3:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/25 09:17:28
¡ŽQlURL

¡Lua
URLØÝ¸(www.lua.org) i–{‰Æj
URLØÝ¸(lua-users.org) ilua-usersj
URLØÝ¸(luaforge.net)@iLuaForgej
URLØÝ¸(sugarpot.sakura.ne.jp)i5.1ƒ}ƒjƒ…ƒAƒ‹˜a–ój
LuaŒ¾Œê‚ÌЉî
URLØÝ¸(staff.aist.go.jp)
“ü–åLuaƒvƒƒOƒ‰ƒ~ƒ“ƒO
URLØÝ¸(www.amazon.co.jp)

¡Squirrel
URLØÝ¸(www.squirrel-lang.org) i–{‰Æj
URLØÝ¸(sourceforge.net)
URLØÝ¸(sourceforge.net) iSqPlusj
URLØÝ¸(sourceforge.net) iSquirrel Shellj
URLØÝ¸(wikiwiki.jp)iwiki“à2.1ƒ}ƒjƒ…ƒAƒ‹˜a–ój

¡XtaliƒQ[ƒ€Œü‚¯BƒXƒ^ƒbƒN‚ðˆÓޝ‚µ‚È‚­‚Ä‚¢‚¢Hj
URLØÝ¸(d.hatena.ne.jp)
URLØÝ¸(code.google.com)
URLØÝ¸(blog.livedoor.jp)

4:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/25 09:18:54
¡‚æ‚­•ª‚©‚ç‚È‚¢‚̂őOƒXƒŒ‚©‚çƒRƒsƒy

10 –¼‘OFƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ[sage] “Še“úF2008/03/11(‰Î) 21:17:18
Ruby‚àPython‚à‘gž‚߂邯‚ǂȂ B
Perl‚Í‚³‚·‚ª‚É‚â‚Á‚½‚±‚ƂȂ¢‚ªA‚Å‚«‚È‚¢‚±‚Æ‚à‚È‚¢‚¾‚낤B

11 –¼‘OFƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ[sage] “Še“úF2008/03/11(‰Î) 22:39:02
Ruby‚É‚µ‚Ä‚àPython‚É‚µ‚Ä‚à•W€ƒ‰ƒCƒuƒ‰ƒŠ‚⌾Œê‹@”\‚ª‚Å‚©‚·‚¬‚ɂ݂¦‚éB
‘gž‚݂Ɍü‚¢‚Ä‚é‚Á‚Ă̂̓R[ƒhƒTƒCƒY‚Ü‚½‚ÍŠO•”‚ւ̈ˑ¶‚Ì­‚È‚³‚Æ
Œ¾Œê‹@”\‚̃oƒ‰ƒ“ƒX‚ªŽæ‚ê‚Ä‚é‚Á‚ĈӖ¡‚ɂł͂Ȃ¢‚Ì‚©‚ÆB


12 –¼‘OFƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ[sage] “Še“úF2008/03/12(…) 01:23:20
–v‚ɂȂÁ‚½ƒeƒ“ƒvƒŒˆÄ‚ɂ͑‚¢‚Ä‚ ‚Á‚½‚¯‚ÇA
‚»‚¤‚¢‚¤”äŠr“I‘å‚«‚ÈŒ¾Œê‚Ì‘g‚Ý‚±‚݂̘b‚à
‘½­‚Í‹–—e‚·‚邱‚Æ‚ª‘OƒXƒŒ‚Å“¯ˆÓ‚³‚ê‚Ä‚¢‚½‚Í‚¸B

‚Å‚àˆê‰žLuaƒXƒŒ‚Ì‘±‚«‚¾‚©‚ç‚»‚̕ӂ͋ó‹C“Ç‚ñ‚ł˂ÆB

¡–vƒeƒ“ƒvƒŒ
The Pawn languagei‚¾‚ê‚àŽg‚Á‚ĂȂ³‚»‚¤‚ÈA‘g‚Ýž‚ÝŒ¾Œêj
URLØÝ¸(www.compuphase.com)
NullLogic Embedded Scripting Language
URLØÝ¸(sourceforge.net)

¦ƒeƒ“ƒvƒŒˆÈã¦

5:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/25 09:49:57
1‰³

6:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/25 13:22:42
ŽŸ‚©‚ç AngelScript ‚à‘«‚µ‚Ä‚ ‚°‚Ä‚¢‚¢‚ñ‚¶‚á‚È‚¢‚©‚Æ‚¿‚å‚Á‚ƃIƒ‚ƒ^

7:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/25 13:27:34
¡AngelScript
URLØÝ¸(www.angelcode.com)

‚܂Ƃßwiki‚Ƀeƒ“ƒvƒŒ‚̃y[ƒWì‚Á‚½‚Ù‚¤‚ª‚¢‚¢‚©‚ÈB

8:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/25 22:43:44
lua‚Ålua_call ‚·‚é‘O‚ÉŠÖ”‚ƈø”‚ðƒvƒbƒVƒ…‚µ‚Ü‚·‚æ‚ËB‚»‚¤‚¢‚¤ì‹Æ‚Ì‘O‚É‚Í
‚©‚Ȃ炸lua_settop(L, 0)‚µ‚½‚Ù‚¤‚ª‚¢‚¢‚ñ‚Å‚·‚©H
luaˆ—‚Ì‘OŒã‚Å‚¿‚á‚ñ‚ƃXƒ^ƒbƒN[‚³‚ªˆê’v‚·‚邿‚¤‚ɃvƒƒOƒ‰ƒ€‚ðS‚ª‚¯‚Ä‚¢‚ê‚Î
•s—v‚È‚à‚̂Ȃ̂łµ‚傤‚©B
‰½‚©‚·‚é‘O‚É•K‚¸lua_settop(L, 0)‚·‚éƒNƒZ‚ð•t‚¯‚Ä‚¨‚¢‚½‚Ù‚¤‚ª‚¢‚¢‚Ì‚©A
‚»‚ê‚Æ‚à‚»‚ê‚ÍC‚ŃOƒ[ƒoƒ‹•Ï”‚ð•K‚¸=NULL‚â=0‚ʼnŠú‰»‚µ‚È‚¢‚Æ‚«‚ª‚·‚܂Ȃ¢‚悤‚ÈA
‚¿‚å‚Á‚Ƃł«‚È‚»‚¤‚Èl‚ª‚â‚邱‚ƂȂ̂łµ‚傤‚©BƒvƒƒtƒFƒbƒVƒ‡ƒiƒ‹‚Ílua_settop(0)
‚È‚ñ‚Ä‚¢‚¿‚¢‚¿‚â‚è‚Ü‚¹‚ñ‚©H


9:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/25 23:22:12
>>8
u‚©‚Ȃ炸v‚Ȃǂƌ¾‚¤ŽÛŽq’è‹K‚ȃXƒ^ƒCƒ‹‚Å
ƒvƒƒtƒFƒbƒVƒ‡ƒiƒ‹‚ɂȂê‚邯‚ÍŽv‚¦‚È‚¢B펯“I‚Él‚¦‚ÄB

10:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/25 23:56:40
V‚µ‚¢ƒNƒ}ƒXƒŒ‚Í‚±‚±‚Å‚·‚©H

11:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/26 01:49:16
‚¢‚¢‚¦AƒPƒtƒBƒA‚Å‚·


12:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/26 07:32:04
>>2
‚±‚̃XƒŒ‚ÍŠù‚ÉŽIˆÚ“]‚µ‚Ă镨‚ªŠÜ‚Ü‚ê‚Ă邼B
ƒvƒƒOƒ‰ƒ€”‚Ípc12ŽI‚¾‚¼B

13:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/26 09:04:08
>>8
ꇂɂæ‚Á‚ĈقȂéBƒoƒCƒ“ƒ_‚̈ꕔ‚Æ‚µ‚ÄŽÀ‘•‚·‚邯‚«‚Í
settop‚É‚æ‚é•›ì—pi•K—v‚¾‚Á‚½’l‚ªƒXƒ^ƒbƒN‚©‚çö”­‚·‚é‚È‚Çj‚Ì•û‚ªS”z‚Ȃ̂ÅA
‚»‚ê–³‚µ‚łೂµ‚­“®ì‚·‚邿‚¤Td‚ÉŽÀ‘•‚·‚é‚ׂ«B

ˆê•ûA–{‘Ì‘¤‚©‚çƒXƒNƒŠƒvƒg‘¤‚̃R[ƒh‚ðŒÄ‚Ño‚·Û‚Í‘å’ï‚Í–ß‚è’l‚Í•s—v‚Ȃ̂Å
휂µ‚ĂෂµŽx‚¦‚È‚¢B‚¾‚©‚çsettop‚ðŒÄ‚Ño‚·•û–@‚àƒAƒŠB

‚à‚¿‚ë‚ñAƒGƒ‰[‚â—áŠO‚ªƒXƒ^ƒbƒN‚É“ü‚Á‚Ä‚¢‚éê‡‚à‚ ‚é‚̂ł»‚̑Ήž‚Í•K—vB

“¯‚¶‰¼‘zƒXƒ^ƒbƒNŒ^Œ¾Œê‚Å‚ ‚éSquirrel‚Å‚à‚Ü‚Á‚½‚­“¯‚¶‚±‚Æ‚ªŒ¾‚¦‚邾‚낤B

14:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/26 09:10:19
>>7
ŒöŽ®ƒTƒCƒg‚Ö‚ÌƒŠƒ“ƒN‚¾‚¯‚Å‚à‚¢‚¢‚©‚çì‚Á‚Ä‚ ‚°‚Ä‚­‚¾‚³‚¢( L¥ƒÖ¥`)

15:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/26 12:22:10
lua‚Åhoge=0xFF8888FF ‚Ì‚ ‚Æ‚É return hoge‚Æ‘‚¢‚Ä‚ ‚éŠÖ”‚ª‚ ‚Á‚ÄA
‚±‚Ì–ß‚è’l‚ðlua_tostring() ‚łƂÁ‚½‚Æ‚«‚É0xff8888ff‚Ì‚P‚Oi”•\‹L‚Å‚ ‚é
"4287138047"‚ª“¾‚ç‚ê‚邱‚Æ‚ðŠú‘Ò‚µ‚Ä‚¢‚½‚̂ł·‚ªA
‚È‚º‚©‚PƒCƒ“ƒNƒŠƒƒ“ƒg‚³‚ꂽ"4287138048"‚ª“ü‚Á‚Ä‚«‚Ä‚µ‚Ü‚¢‚Ü‚·B
‚µ‚©‚àƒRƒ“ƒpƒCƒ‹¨ŽÀs‚µ‚È‚¨‚·‚Æ‚¿‚á‚ñ‚Æ "4287138047" ‚ª“ü‚Á‚Ä‚½‚èA
‚ ‚êH‚ÆŽv‚Á‚Ä‚à‚¤ˆê“x‚â‚邯 "4287138048" ‚¾‚Á‚½‚è‚ÅA‚æ‚­‚í‚©‚è‚Ü‚¹‚ñB
‚±‚ÌŒ»Û‚ɂ‚¢‚ĂȂɂ©S“–‚½‚è‚ ‚è‚Ü‚·‚©H



16:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/26 21:07:59
luaƒXƒNƒŠƒvƒg“à‚ðƒXƒeƒbƒvŽÀs‚µ‚ÄA‹““®‚ð’­‚ß‚ê‚Îςޘb‚¶‚á‚È‚¢‚©B

17:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/28 15:31:55
ƒoƒO‚Å‚·

18:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/28 15:54:05
double‚ÌŠÛ‚ß‚©‚ËH

19:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/05/29 00:19:33
>>16Œ©‚ÄAGUI‚̃fƒoƒbƒK—~‚µ‚¢‚æ‚È[‚Á‚ÄŽv‚Á‚ÄŒŸõ‚µ‚Ä‚½‚ñ‚¾‚¯‚ÇA
‚±‚ê‚Á‚ÄŽg‚Á‚Ă݂½l‚¢‚éH

URLØÝ¸(wikiwiki.jp)

20:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/03 22:12:04
SqPlus‚Å•¡”VM‚ªˆµ‚¦‚È‚­‚Ä”Y‚ñ‚Å‚½‚̂ł·‚ªA
‚à‚µ‚©‚µ‚ÄSquirrel‚Á‚ÄŠî–{“I‚ÉVMˆêŒÂ‚¾‚¯ì‚é‚Ì‚ª•’ʂȂÌH


21:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/03 22:25:58
>>20
‚»‚ñ‚È‚±‚½[–³‚¢Bsqplus ‚ªÝŒvŒÃ‚¢‚¾‚¯

‚Å‚àAŽÀÛ–â‘è‚Æ‚µ‚ÄAVM•¡”ˆµ‚¤‚ÆA‰Šú‰»ˆ—‚Æ‚©‚ß‚ñ‚Ç‚­‚³‚­‚ËH
ŽÀsˆ—‚ð•¡”•Û—¯‚·‚邾‚¯‚È‚çƒXƒŒƒbƒh‚‚©‚¦‚΂¢‚¢‚킯‚ÅB


22:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/03 22:28:48
>>20
ƒIƒŒ‚àˆÈ‘O‚»‚¤Žv‚Á‚Ä‚´‚Á‚ƃ\[ƒX‚ðŒ©‚½‚ªA
VM‚ª•¡”ƒCƒ“ƒXƒ^ƒ“ƒX“®‚¢‚½‚Æ‚«‚É
static•Ï”‚ÅŠ±Â‚µ‚»‚¤‚ȂƂ±‚ë‚Í
ƒGƒ‰[ƒƒbƒZ[ƒWŠÖŒW‚­‚ç‚¢‚¾‚Á‚½B
ƒOƒ[ƒoƒ‹•Ï”‚Í’T‚µ‚É‚­‚¢‚̂Ŋm؂͖³‚¢B

ŽÀۂ̂Ƃ±‚ëATcl‚È‚ñ‚©‚ƈá‚Á‚Ä•¡”VMŠÔ‚Ì’ÊMŽè’i‚ªŒÀ‚ç‚ê‚Ă邩‚ç
‚ ‚Ü‚èŽg‚¢ŸŽè‚͂悭‚È‚¢‚ÆŽv‚¤‚æB

23:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/04 02:00:12
>>20‚ÌŒ¾‚¤•¡”VM‚Á‚ÄASTG‚Å‚½‚Æ‚¦‚邯A
i‚Pj“G‚P•C‚¸‚‚ÉVM‚ðŽ‚½‚¹‚ȕʂɈ—‚ð‚³‚¹‚é
i‚QjŽg‚¤ŠÖ”‚ªˆÙ‚È‚éA”wŒi‚݂̂̈—‚ð‚·‚éVM‚ÆA“G‚ÌoŒ»ƒpƒ^[ƒ“‚ðŠÇ—‚·‚éVM‚Ƃ𓯎ž‚É“®‚©‚·
‚̂ǂÁ‚¿H

24:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/04 05:22:10
sq_thread‚Å”h¶VM‚ðì‚Á‚ăXƒŒƒbƒh‚ʼnñ‚µ‚½‚±‚Ƃ͂ ‚Á‚½‚¯‚ÇA
“Æ—§‚µ‚½•¡”VM‚ð“®‚©‚·‚̂͂¿‚å‚Á‚Æ—p“r‚ªŽv‚¢‚‚©‚È‚¢‚È‚Ÿ
¥”ñ>>20‚ÌSquirrel‚Ì—p“r‚ª’m‚肽‚¢‚È‚ŸBƒQ[ƒ€ˆÈŠO‚È‚ÌH

25:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/04 08:10:20
23‚Ì2‚©‚ÈB
“¯‚¶ƒvƒƒOƒ‰ƒ€‚Ì’†‚ÉAƒQ[ƒ€—p‚Æ3Dƒ‚ƒfƒ‹•ÏŠ·‚Ȃǂ̃c[ƒ‹—p‚Ì‚QŒn“‚ ‚Á‚ÄA
¬Ý‚µ‚ÄŽg‚¤‚±‚Æ‚ª‚È‚¢‚̂ŕª‚¯‚½‚¢‚ȂƎv‚¢‚Ü‚µ‚½B


26:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/04 11:15:30
‚È‚é‚Ù‚ÇŠ®‘S•ª—£‚µ‚Ă镔•ª‚©B‚»‚ê‚È‚ç”[“¾B

C++ ‘¤‚Å HSQOBJECT ‚Ńf[ƒ^•ÛŽ‚·‚éƒIƒuƒWƒFƒNƒg‚Æ‚©‚ð‘g‚Þꇂɂ¿‚å‚Á‚Æ‚â‚₱‚µ‚¢‚±‚ƂɂȂé‚Ë„•¡”VM
‚½‚µ‚© sqplus ‚Í‚»‚Ì‚ ‚½‚è‚̈—‚ª‚·‚²‚­•ςȂ±‚ƂɂȂÁ‚Ä‚½‹C‚ª‚·‚éB–{“–‚ɂ܂Ƃà‚É“®‚­‚©‚Ç‚¤‚©‰ö‚µ‚¢B
scrat ‚Í‚«‚Á‚¿‚è‘‚¢‚Ä‚ ‚邯Žv‚¤B

‚»‚ê‚É‚à‚©‚ç‚ñ‚ÅAC++ƒCƒ“ƒXƒ^ƒ“ƒX‚©‚çƒx[ƒXVM‚ɃAƒNƒZƒX‚µ‚½‚­‚È‚é‹Ç–Ê‚ª‚½‚܂ɂłĂ­‚é‚ñ‚¾‚¯‚ÇA
•¡”VM~•¡”ƒXƒŒƒbƒhŽg‚Á‚Ă邯‚»‚±‚Å¢‚éBƒRƒ“ƒXƒgƒ‰ƒNƒ^ŠÜ‚Þƒƒ“ƒoŒÄ‚Ño‚µ‚ňø”‚É“n‚Á‚Ä‚­‚éVM‚ÍA
‚ ‚­‚܂ŃXƒŒƒbƒh‚ÌVM‚ÅAƒx[ƒXVM‚¶‚á‚È‚¢B’P“ÆVM‚È‚ç•KŽE‹ZƒOƒ[ƒoƒ‹•Ï”‚ªŽg‚¦‚邯‚Ç
•¡”VM‚¾‚Æ‚»‚ê‚ł͓Á’è‚Å‚«‚È‚¢B

‚±‚Ì–â‘è‚Í sq_getforeignptr/sq_setforeignptr ‚ðŽg‚¦‚΂½‚Ô‚ñ‰ðŒˆ‚·‚éB
sq_newthread ‚Ŷ¬‚³‚ꂽƒXƒŒƒbƒhVM‚ÉAƒx[ƒXVM ‚Ì’l‚ð‚±‚ê‚ð‚‚©‚Á‚ĉB‚µƒpƒ‰ƒ[ƒ^‚Æ
‚µ‚ÄŽ‚½‚¹‚邿‚¤‚É‚µ‚ÄAƒCƒ“ƒXƒ^ƒ“ƒX‚©‚ç‚Í‚±‚ê‚ÅŽæ‚èo‚µ‚ÄŽg‚¤‚悤‚É‚·‚ê‚΂¢‚¢B

squirrel ‘¤‚ðŠg’£‚µ‚ÄAVM‚ÌeŽqŠÖŒW‚ðŽæ“¾‚Å‚«‚éAPI‚ð‘Ý‚©‚ȂƈêuŽv‚Á‚½‚¯‚ÇA
squirrel ‚Ì\‘¢“I‚É‚ÍAV‹K¶¬‚µ‚½ƒXƒŒƒbƒhVM‚ÆŒ³‚ÌVM‚ÍŠ®‘S‚É“¯Ši (eŽq‚¶‚á‚È‚­‚Ä—F’B)
‚Ȃ̂ÅA‚±‚Ì get/setforeignptr ‚ų‰ð‚¾‚ÆŽv‚¤B

27:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 02:32:54
>>26
SqPlus‚͕ςƂ¢‚¤‚©AVM–{‘̂ɑ΂µ‚Ä—]Œv‚È‚±‚Æ‚ð‚µ‚Ä‚¢‚éB
new()‚Åì‚èŽÌ‚Ä‚½ƒNƒ‰ƒX‚ÉVM‚̃nƒ“ƒhƒ‹‚ðŠÇ—‚³‚¹‚邿‚¤‚È‚±‚Æ‚ð‚µ‚Ä‚é‚©‚çA
main()ŠÖ”‚𔲂¯‚½Œã‚Å‚µ‚©Squirrel‚ÌŠJ•úˆ—‚ªs‚í‚ê‚È‚­‚È‚éB
‚±‚ñ‚È“®ì‚¾‚ÆAƒtƒŒ[ƒ€ƒ[ƒN‰ð•ú‘O‚ÉƒŠƒŠ[ƒX‚µ‚È‚¢‚Æ‚¢‚¯‚È‚¢C++‘¤‚̃IƒuƒWƒFƒNƒg‚ÌŠJ•ú‚ª‚Å‚«‚È‚­‚È‚éB
Šù‚ÉŽw“E‚Í‚µ‚Ä‚é‚ñ‚¾‚ªAŠJ”­ŽÒ‚Í‚»‚Ìd—v«‚ª‚í‚©‚Á‚ĂȂ¢‚悤‚¾B
ˆê‰ž•¡”‚ÌVM‚̑Ήž‚Í‚³‚ê‚Ă邿‚¤‚ÉŒ©‚¦‚邪AŽÀÛ‚É“®‚©‚µ‚Ă݂Ȃ¢‚ƂȂñ‚Æ‚àB

scrat‚Í‚«‚Á‚¿‚è‘‚¢‚Ä‚ ‚é‚ñ‚łȂ­A‚Ȃɂà‚â‚Á‚ĂȂ¢‚¾‚¯B
‚±‚Á‚¿‚ÍŽŽ‚µ‚É“®‚©‚µ‚Ă݂½‚ªA‚Ü‚¾‚Ü‚¾Š®¬“x‚ª‘«‚è‚È‚¢B
Žw“E‚µ‚½‚çŠJ”­ŽÒ–Ù‚èž‚ñ‚¶‚á‚Á‚½B
SQBind‚̂ق¤‚ª‚â‚â‚Ü‚µ‚©‚ÈB‚¿‚傱‚¿‚傱‚Æ‚¢‚¶‚ê‚Ή½‚Æ‚©Žg‚¦‚郌ƒxƒ‹B

28:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 03:18:56
fork ‚µ‚¿‚á‚¢‚È‚æ

29:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 03:20:24
Sq++‚©

30:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 03:42:02
>>27
‚ ‚ A‚Ȃɂà‚â‚Á‚ĂȂ¢‚Ìd—v‚Æ‚¢‚¤‚©AƒIƒuƒWƒFƒNƒg•ÛŽ—p‚̃Nƒ‰ƒX‚Í–¾Ž¦“I‚É
VM Žw’è‚ÌŒû‚ð‚à‚Á‚ĂĎæ‚è‰ñ‚µ‚·‚邿‚¤‚É‘‚©‚ê‚Ă邩‚çA‚±‚ê‚Ȃ犮‘S‚É
ƒ†[ƒU‚ÌŠÇ—‰º‚É‚¨‚¯‚é‚ËA‚ÆŽv‚Á‚½‚ñ‚¾B

SQPlus ‚̂ق¤‚Í‚¢‚«‚Ȃ蒆‚ÌŒ©‚¦‚È‚¢‚Æ‚±‚Å VM ŠÇ—‚µ‚Ä‚éƒOƒ[ƒoƒ‹‚ȕϔ‚ð
ŒÄ‚Ño‚µ‚½‚肵‚Ă邩‚çA‚¢‚ë‚¢‚ëØ‚è‘Ö‚¦‚½‚è‚¢‚¶‚Á‚½‚肵‚Ă邤‚¿‚ɊԈႢ‚È‚­
”j’]‚·‚邯Žv‚¤BØ‚è‘Ö‚¦ˆ—‚ªƒOƒ[ƒoƒ‹•Ï”‚É‘ã“ü‚Æ‚©•|‚·‚¬‚éB

‚Ü‚ AŽÀ‚͂ςÁ‚Æ‘S‘Ì’­‚ß‚½‚¾‚¯‚Å‘S‘RŽg‚Á‚Ă݂Ă͂Ȃ¢‚ñ‚¾‚¯‚Ç‚Ë > sqrat
‚Ƃ肠‚¦‚¸‚ ‚̃ƒ“ƒo•Ï”‚̈—‹@\‚Í‚¢‚ë‚¢‚ë“ï‚ ‚肾‚È[‚ÆŽv‚¤B
‚ ‚ƃCƒ“ƒXƒ^ƒ“ƒX•Ô‚·ˆ—‚ ‚½‚è‚à‚È‚ñ‚©”÷–­

sqbind ‚͂ςÁ‚ƂݓD‚­‚³‚©‚Á‚½‚̂ł ‚ñ‚܂܂¶‚߂Ɍ©‚ĂȂ¢

31:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 03:56:50
>>30
‚»‚¤BVM‚̃nƒ“ƒhƒ‹‚̓†[ƒU[‚ÌŠÇ—‰º‚É‚¨‚«Aƒ†[ƒU[‚Ì–]‚Þƒ^ƒCƒ~ƒ“ƒO‚Å
ŠJ•úˆ—( sq_close() )‚ªs‚¦‚邿‚¤‚ɂȂÁ‚ĂȂ¢‚Ƴ‚µ‚­I—¹‚Å‚«‚È‚¢‚¶‚á‚È‚¢‚©B

Sqrat‚͂Ȃ©‚È‚©‹Ø‚ª‚¢‚¢‚ªA‚Ü‚¾ìŽÒ‚ªSquirrel‚ÌŽd‘g‚Ý‚ð‚æ‚­—‰ð‚Å‚«‚ĂȂ¢‚Ý‚½‚¢B
ƒƒ“ƒo•Ï”‚Ì“o˜^EŒÄ‚Ño‚µ‚¾‚¯‚ÇA‚ ‚ꂪ•’Ê‚¾‚ÆŽv‚¤‚æB
‚±‚̕ӂÍSqrat‚àSqBind‚àSqPlus‚à‘å·‚È‚¢‚Í‚¸Bi_get/_setæ‚ÁŽæ‚èj

SqBind‚̓XƒŒ‚Ìis‚Å‚ ‚é’ö“xƒoƒO‚ª’¼‚Á‚Ä‚é‚̂ł܂ Žg‚¦‚È‚¢‚±‚Æ‚à–³‚¢B
‚µ‚©‚µŽ–ŽÀãSqBindƒNƒ‰ƒX‚µ‚©Žg‚¦‚È‚¢\‘¢‚ɂȂÁ‚Ä‚¢‚ÄA
ˆÓŠO‚ɃoƒCƒ“ƒ_Ž©‘̂̃JƒXƒ^ƒ}ƒCƒY‚ÌŽ©—R“x‚ª’á‚¢B

ބީg‚ÍjkBind‚𔃂Á‚Ä‚¢‚ÄA‚ ‚ÌboostŽ®‚Ì‘‚«•û‚͂Ȃ©‚È‚©‚¢‚¯‚Ă邯Žv‚¤‚ñ‚¾‚ªA
i“Á‚ɃoƒCƒ“ƒh‚·‚éC++ƒNƒ‰ƒX‚̃Rƒ“ƒXƒgƒ‰ƒNƒ^‚Ì“o˜^‚ÌŽd•û‚ªoF‚Ìo—ˆj
ƒhƒLƒ…ƒƒ“ƒgEƒ†[ƒU[‚ªŠF–³‚Ȃ̂ł¢‚Ü‚³‚çŽg‚Á‚Ä‚­‚ê‚él‚ª‚¢‚é‚©‚Ç‚¤‚©B
ˆÈ‘OA”“ú‚©‚¯‚ÄSquirrel-2.2.2-stable‚܂łɒljÁ‚³‚ꂽŽd—l‚É‚ ‚킹‚½
’ljÁŽÀ‘•‚ð‚µ‚ÄAƒtƒH[ƒ‰ƒ€‚É“\‚è•t‚¯‚½‚ñ‚¾‚ªB

32:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 04:48:08
>>31
sqplus ‚ÍAƒƒ“ƒo•Ï”‚ð“o˜^‚µ‚悤‚Æ‚·‚é‚܂Š_get/_set ‚Ì‚Á‚Æ‚Á‚½‚肵‚È‚¢‚̂ł»‚Ì“_‚Í‹–—e”͈Íw
sqrat ‚Í‚½‚µ‚©–ⓚ–³—p‚Å‚à‚Á‚Ä‚©‚ê‚邿‚ËB

ŒÂl“I‚É‚ÍAƒXƒNƒŠƒvƒg‘¤‚ł̌p³«‚ðdŽ‹‚µ‚Ä‚ÄAƒƒ“ƒo‚Í •K‚¸ getter/setter ‚ÌŒ`‚Ì
ƒƒ\ƒbƒh‚Æ‚µ‚Ä squirrel ‘¤‚É“o˜^‚·‚éŒ`‚É‚µ‚Ä‚é‚ñ‚¾B
C++ ‘¤‚Å getter/setter ‚ª‚È‚­‚Ä public ‚ȃƒ“ƒo[‚ɂȂÁ‚Ä‚éꇂłàA
‚»‚Ìê‚Ńeƒ“ƒvƒŒ[ƒg‚Å@struct “à‚É static ‚ÈŽQÆ—pŠÖ”‚‚­‚Á‚Ä‚»‚ê‚ð“o˜^‚µ‚Ä‚µ‚Ü‚¤Œ`‚É‚·‚éB
‚¾‚©‚çA‚»‚Ì‚ ‚½‚è‚̃oƒCƒ“ƒ_‚Ì¡‚Ì‹@\‚͂܂邲‚Æ‚¢‚ç‚È‚¢B

‚¿‚Ȃ݂É_get/_set Ž©‘Ì‚ÍAƒƒ“ƒo‚ª‘¶Ý‚µ‚ĂȂ©‚Á‚½‚çA‚»‚Ì–¼‘O‚ɇ’v‚µ‚½
getter/setter ‚ð’T‚µ‚Ä‚»‚ê‚ðŒÄ‚Ño‚·‚Á‚ÄŒ`‚Ì‹@”\‚ð‘g‚ñ‚ÅŽg‚Á‚Ä‚éB

jkBind ‚͂ǂñ‚È‚¾‚Á‚½‚©‚æ‚­Šo‚¦‚ĂȂ¢‚â^^; “–Žž‚͂܂¾ƒeƒ“ƒvƒŒ[ƒg‚æ‚­‚í‚©‚Á‚ĂȂ©‚Á‚½‚µA
‚È‚ñ‚©‚â‚₱‚µ‚¢‚ȂƎv‚Á‚Ä•ú’u‚µ‚½‚悤‚Ècc

¡AŽ©•ª‚ªƒƒCƒ“‚Å‚³‚í‚Á‚Ä‚é”͈͂¾‚ÆAC++ ‚̃Nƒ‰ƒX‚̂ق¤‚ÌŒ`‚ðŒÅ’艻‚µ‚Ä‚é
‚Ì‚ÅA‚í‚è‚ÆŽèì‹Æ•”•ª‚ª‘½‚¢Œ`‚ÌŠÈ’P‚ȃoƒCƒ“ƒ_‘‚¢‚©‚Á‚Ä‚é‚ñ‚¾‚¯‚ÇA
‚æ‚»‚©‚ç‚à‚Á‚Ä‚«‚½ƒ‰ƒCƒuƒ‰ƒŠ‚ÌÚ‘±—p‚ÉA‚à‚Á‚Ɣėp“I‚ɂȂÁ‚Ä‚é‚Ì‚ª‚Ù‚µ‚­‚ÄA
ˆê‰ž sqplus Žg‚Á‚Ä‚½‚ñ‚¾‚¯‚ÇA‚¿‚å‚Á‚ƂȂŸ‚Á‚Ä‚±‚Ƃłà‚ë‚à‚ëæ‚èŠ·‚¦ŒŸ“¢’†B

sqrat ‚ª‚Ƃ肠‚¦‚¸‚̋؂͂悳‚»‚¤‚Ȃ̂ʼnü‘¢‚µ‚ÄŽg‚¨‚¤‚©‚È‚ŸB

33:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 07:12:40
>>32
ƒIƒŒ‚Ìê‡Asetter/getter‚ÍŒ´‘¥—pˆÓ‚µ‚È‚¢B
ƒƒ“ƒo•Ï”‚݂̂Ìstruct“I‚È‚à‚ÌAƒƒ\ƒbƒh‚݂̂Ìclass“I‚È‚à‚̂ɑå’ï‚Í•ª‚©‚ê‚éB
‚»‚Ìà–¾‚¾‚ÆC++ƒƒ\ƒbƒh‚ð‚Ç‚¤“o˜^‚·‚é‚©‚Ìà–¾‚ª–³‚¢‚Ý‚½‚¢‚È‚ñ‚¾‚¯‚ÇccH

‚»‚ê‚©‚çASqBind‚Ìê‡A_get/_set‚̓oƒCƒ“ƒh‚µ‚½ƒƒ“ƒo‚ª–³‚¢ê‡‚Í
ƒLƒƒƒ“ƒZƒ‹‚³‚ê‚ÄSquirrel‘¤‚ɧŒä‚ª–ß‚éB
‚¾‚©‚çƒoƒCƒ“ƒh‚µ‚½Œã‚ÅSquirrel‘¤‚©‚ç“o˜^‚µ‚½‚à‚Ì‚ðŒÄ‚Ño‚µ‚½‚è(‚±‚ê‚ÍŠm”FjA
Œp³‚µ‚½‚è‚à—LŒøi‚±‚ê‚Í‚½‚Ô‚ñj

ƒIƒŒ‚̓oƒCƒ“ƒh‚³‚ꂽC++‘¤‚̃Cƒ“ƒ^[ƒtƒFƒCƒX‚̌Œ肳‰ÁŒ¸‚ðŽ©•ª‚ÅM—p‚µ‚ĂȂ¢‚Ì‚ÅA
ƒoƒCƒ“ƒh‚µ‚½SquirrelƒNƒ‰ƒX‚ð‚³‚ç‚ÉŒp³‚µ‚½‚è‚Í‚µ‚È‚¢‚悤‚É‚µ‚Ä‚¢‚éB
‚»‚¤‚·‚邯‚«‚Í•ïŠÜ‚É‚·‚é‚ËB

‚»‚¤‚¢‚âASquirrel‚̓vƒƒpƒeƒB‚ª‚Ù‚µ‚¢‚©‚àB

34:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 10:34:09
‰½‚©‚â‚₱‚µ‚»‚¤‚Ȃ̂ʼn´‚ÍAngelScript‚ðŽg‚¤‚ºI

35:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 11:50:44
ŽÀÛ‚â‚₱‚µ‚¢‚¾‚ë
Ž©“®¶¬‚µ‚½ƒR[ƒh‚ðŽè“®‚ŃfƒoƒbƒO‚·‚é‚ñ‚¾‚©‚ç‚È

36:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 12:15:10
‚ [A‚‚܂è
ƒ{ƒgƒ‹ƒlƒbƒN‚¶‚á‚È‚¢Š‚ðŽ©“®‰»‚µ‚¿‚á‚Á‚Ä‚é‰Â”\«‚à‚ ‚é‚킯‚¾B

37:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 12:56:24
>>33
•’Ê‚¾‚æ` > C++ ƒƒ\ƒbƒh
ŠÖ”ƒ|ƒCƒ“ƒ^‚Æ‚©•K—v‚Èî•ñ‚ðƒNƒ[ƒWƒƒ‚ɃoƒCƒ“ƒh‚³‚¹‚Ä‚¨‚¢‚Ä‚»‚ê‚ð‚‚©‚Á‚Ä
ŒÄ‚Ño‚·Bsqplus ‚Æ‚©‚Ƃłâ‚Á‚Ä‚é‚̂Ɠ¯‚¶B

Œã‚©‚ç“o˜^‚µ‚½‚Ì‚ª—LŒø‚Ȃ͇̂”Ô‚ª‹t‚¾‚æB_get/_set ‚ªƒXƒ‹[‚µ‚Ä‚é‚ñ‚¶‚á‚È‚­‚ÄA
squirrel “I‚ÉŒ©‚‚©‚ç‚È‚©‚Á‚½‚Æ‚«‚ɉ‚ß‚Ä _get/_set ‚ªŒÄ‚΂ê‚Ä‚éB
_set/_get ‚ŃXƒ‹[‚µ‚½Œã‚ÍAsquirrel ‘¤‚ł̓ƒ“ƒoŒ©‚‚©‚ç‚È‚©‚Á‚½‚æ—áŠO‚ɂȂ邾‚¯B

squirrel ‚̃ƒ“ƒo‚Í펞㑂«ˆ—‚ł‚Ԃ³‚ê‚é‚Ì‚ÅAƒƒ“ƒo‚ÌŒp³‚͂ł«‚È‚¢B
C++ ‘¤‚ÌŒp³ŠT”O‚ðˆêŠÑ«‚ð‚à‚Á‚ĂЂ«‚±‚ނɂ̓ƒ\ƒbƒh‰»‚·‚邵‚©‚È‚¢B
_get/_set ‚Å C++‚̃ƒ“ƒoŽQÆ‚ðŽÀŒ»‚µ‚Ä‚éê‡A‚»‚̃ƒ^ƒƒ\ƒbƒh‚ð’¼ÚŒÄ‚Ño‚¹‚Î
Œ³‚ÌC++‚̃ƒ“ƒo‚ÍŒ©‚ê‚邯‚Ç‚»‚ê‚ÍŒp³‚¶‚á‚È‚¢‚¾‚낤‚ÆB

‚ ‚ÆAƒƒ^ƒƒ\ƒbƒh‚Í‹@\ãA•K‚¸ƒCƒ“ƒXƒ^ƒ“ƒX‚É’£‚è•t‚¢‚Ă邻‚ꂪŒÄ‚Ño‚³‚ê‚邿‚¤‚ÅA
ƒƒ^ƒƒ\ƒbƒh‚ðã‘‚«‚µ‚Ä‚©‚çeƒNƒ‰ƒX‚Ì‚»‚ê‚ð‚æ‚Ñ‚¾‚»‚¤‚Æ‚µ‚Ä‚àŽ©•ª‚Ì‚»‚ꂪ
ŒÄ‚Ño‚³‚ê‚Ä–³ŒÀƒ‹[ƒv‚ɂȂé‚Á‚Äã©‚à‚ ‚Á‚½‚è@ƒ‚͂܂Á‚½

ƒoƒCƒ“ƒh‚³‚ꂽ C++ ƒNƒ‰ƒX‚̈µ‚¢‚ÍA‚Ü‚ AD‚݂̖â‘è‚Á‚Ä‚±‚Æ‚ÅB
‚¨‚¢‚ç‚ÍAsquirrel ‚¾‚¯‚Å‘‚¢‚½ƒNƒ‰ƒX‚Æ“¯Š´Šo‚ÅŽg‚¢‚½‚¢l

>‚»‚¤‚¢‚âASquirrel‚̓vƒƒpƒeƒB‚ª‚Ù‚µ‚¢‚©‚àB

«‚±‚ꂪƒvƒƒpƒeƒB‚à‚Ç‚«
>‚¿‚Ȃ݂É_get/_set Ž©‘Ì‚ÍAƒƒ“ƒo‚ª‘¶Ý‚µ‚ĂȂ©‚Á‚½‚çA‚»‚Ì–¼‘O‚ɇ’v‚µ‚½
>getter/setter ‚ð’T‚µ‚Ä‚»‚ê‚ðŒÄ‚Ño‚·‚Á‚ÄŒ`‚Ì‹@”\‚ð‘g‚ñ‚ÅŽg‚Á‚Ä‚é

setter / getter —¼•û‚ ‚ê‚Γǂݑ‚«‰Â”\ƒvƒƒpƒeƒBAgetter ‚¾‚¯‚È‚ç
“ǂݞ‚Ýê—pƒvƒƒpƒeƒBAsetter ‚¾‚¯‚Ȃ瑂«ž‚Ýê—pƒvƒƒpƒeƒBA‚ł܂ A‚¿‚á‚ñ‚Æ
‚»‚ê‚Á‚Û‚­‚Å‚«‚Ä‚éB‚»‚Ì‹@\—p‚ÉŽg‚Á‚Ă邩‚çƒoƒCƒ“ƒ_‚ÍŸŽè‚ɂ‚©‚í‚ñ‚Å‚­‚ê‚Á‚Ä‚Ì‚à‚ ‚é

38:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 13:14:13
ƒ{ƒgƒ‹ƒlƒbƒN‚¶‚á‚È‚¢‚Æ‚±‚ë‚ðŽ©“®‰»‚µ‚Ä‚à‚炦‚é‚ñ‚È‚ç‘å‚¢‚ÉŒ‹\‚¶‚á‚È‚¢‚©B

39:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 13:47:55
>>37
‚ ‚êH@‚·‚邯A‚¿‚å‚Á‚Æ‰ð‚¹‚È‚¢“®ì‚ª‚ ‚é‚ÈB
C++‘¤‚Å’è‹`‚µ‚½PointƒNƒ‰ƒX‚ðSquirrel‚ɃoƒCƒ“ƒh‚µ‚Ä‚¢‚é‚ñ‚¾‚ª
‚±‚̃Cƒ“ƒXƒ^ƒ“ƒX‚ɑ΂·‚é‰ÁŽZ‚ð
function Point::_add(point)
‚ÌŒ`‚ÅSquirrelƒXƒNƒŠƒvƒg‚Ì’†‚ŒljÁ“o˜^‚µ‚Ä‚¢‚éB
‚±‚Ìó‘ԂŃCƒ“ƒXƒ^ƒ“ƒX‚ɑ΂µ‚ĉÁŽZ‚ðs‚í‚ê‚邯A‚¢‚Á‚½‚ñSqBind‚Ìgetter‚ðŒÄ‚Ño‚µ‚ÄŽ¸”s‚µ‚Ä‚©‚ç
_add‚ªŒÄ‚΂ê‚Ä‚¢‚邿‚¤‚ÉŒ©‚¦‚é‚ñ‚¾‚ÈB
ƒƒ^ƒƒ\ƒbƒh‚ÍŒ³‚©‚ç’Êí‚̃ƒ“ƒoEƒƒ\ƒbƒh‚Ƃ͈Ⴄˆµ‚¢‚ɂȂÁ‚Ä‚¢‚é‚©‚ç‚»‚ê‚Å‚©‚È‚ŸB
# —Ⴆ‚΃Cƒ“ƒXƒ^ƒ“ƒX‚ɑ΂µ‚Äforeach‚ð‚©‚¯‚Ä‚à“o˜^‚µ‚½ƒƒ^ƒƒ\ƒbƒh‚ðŒŸo‚Å‚«‚È‚¢B

40:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 15:34:28
>>39
‚ [A‚È‚ñ‚©‚í‚©‚Á‚½¡‰´‚Ì—‰ð‚Í‚¨‚©‚µ‚©‚Á‚½

>‚ ‚ÆAƒƒ^ƒƒ\ƒbƒh‚Í‹@\ãA•K‚¸ƒCƒ“ƒXƒ^ƒ“ƒX‚É’£‚è•t‚¢‚Ă邻‚ꂪŒÄ‚Ño‚³‚ê‚邿‚¤‚ÅA
>ƒƒ^ƒƒ\ƒbƒh‚ðã‘‚«‚µ‚Ä‚©‚çeƒNƒ‰ƒX‚Ì‚»‚ê‚ð‚æ‚Ñ‚¾‚»‚¤‚Æ‚µ‚Ä‚àŽ©•ª‚Ì‚»‚ꂪ
>ŒÄ‚Ño‚³‚ê‚Ä–³ŒÀƒ‹[ƒv‚ɂȂé‚Á‚Äã©‚à‚ ‚Á‚½‚è@ƒ‚͂܂Á‚½
‚±‚êŠÔˆá‚¢

ƒƒ^ƒƒ\ƒbƒh‚Í“o˜^Žž‚É“ÁŽêˆ—‚³‚ê‚Ä‚ÄAƒNƒ‰ƒXƒIƒuƒWƒFƒNƒg“à‚Ìê—p‚̃e[ƒuƒ‹‚ÉŠi”[‚³‚ê‚Ä‚ÄA
ƒƒ\ƒbƒh‚Æ‚µ‚Ä‚»‚à‚»‚à¶‚¦‚ĂȂ¢–Í—lB (class ƒIƒuƒWƒFƒNƒg‚Ì _metamethods ‚ɂ‚Á‚±‚Ü‚ê‚Ä‚é)
ƒNƒ‰ƒXƒIƒuƒWƒFƒNƒg‚Ƀƒ\ƒbƒh‚ª¶‚¦‚ĂȂ¢‚©‚çA“–‘RƒCƒ“ƒXƒ^ƒ“ƒX‘¤‚É‚àƒRƒs[‚³‚ê‚Ä‚«‚ĂȂ¢B
ƒCƒ“ƒXƒ^ƒ“ƒX‚ł̃ƒ^ƒƒ\ƒbƒhŒÄ‚Ño‚µˆ—‚ÍAVM“à‚©‚ç’¼ÚƒNƒ‰ƒXƒIƒuƒWƒFƒNƒg“à‚Ì _metamethods ‚ðŒ©‚És‚Á‚Ä‚é

‚±‚ñ‚È‚©‚ñ‚¶‚ŌĂÑo‚»‚¤‚Æ‚µ‚Ä‚½‚ñ‚¾‚¯‚Ç(‚¿‚å‚Á‚Æ‚¤‚남‚Ú‚¦ƒR[ƒh)
function _get(name) {
if (Ž©‘Oˆ—) {
return XXX;
} else { // ‚݂‚©‚ç‚È‚¢‚Ì‚Åe‚ɓЂ°‚é
return Parent::_get(name);
}
}

1. Parent::_get ‚Í‚»‚à‚»‚à‘¶Ý‚µ‚ĂȂ¢iƒƒ^ƒƒ\ƒbƒh‚Ȃ̂ŃNƒ‰ƒX‚ɂං¦‚ĂȂ¢)
2. Parent::hoge ‚̂悤‚ȃNƒ‰ƒXƒƒ\ƒbƒhŒÄ‚Ño‚µ‚ÍAVM‘¤‚ªƒRƒ“ƒeƒLƒXƒg‚ð‚·‚è‘Ö‚¦‚Ä this ƒRƒ“ƒeƒLƒXƒg‚ŌĂÑo‚µŠJŽn‚³‚ê‚Ä‚é
3. ‘¶Ý‚µ‚ĂȂ¢‚©‚硂̃Rƒ“ƒeƒLƒXƒg‚Ì _get ‚ª "_get" ‚ð’T‚·‚½‚߂ɌĂÑo‚µŠJŽn‚³‚ê‚é
4. –³ŒÀƒ‹[ƒv
‚±‚ñ‚ȃIƒ`‚ł͂Ȃ¢‚©‚Æ

‚»‚¿‚ç‚̂ق¤‚¾‚ÆAPoint::_add() ‚ð‚æ‚Ñ‚¾‚»‚¤‚Æ‚µ‚½Žž“_‚Å“¯‚¶‚±‚Æ‚ª‚¨‚±‚Á‚Ä‚é‚ñ‚¶‚á‚È‚¢‚©‚ÈB‚½‚Ô‚ñB
‚»‚Ìæ‚ª‚¿‚å‚Á‚Ƃ킩‚ç‚ñ‚Ì‚¾‚¯‚ÇA‚à‚µ‚©‚µ‚½‚ç SqBind ‚ª‚³‚ç‚Ƀe[ƒuƒ‹‚©‚猟õ‚µ‚ČĂÑo‚·‚Æ‚©
‚»‚¤‚¢‚¤ˆ—‚ª“ü‚Á‚Ä‚½‚è‚·‚é‚Ì‚©‚ÈH
‚Ç‚¿‚ç‚É‚µ‚Ä‚à‘å•Ï‹CŽ‚¿ˆ«‚¢‚±‚ƂɂȂÁ‚Ä‚é‚Á‚Ä‚±‚ƂɂȂé‚ñ‚¶‚á‚È‚¢‚©‚Æc

41:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/05 15:57:59
>>40
ƒXƒNƒŠƒvƒgŒ¾Œê“I‚ɂ̓ƒ^ƒƒ\ƒbƒh‚à’Êí‚̃ƒ“ƒo‚̂悤‚ÉŒ©‚¦‚Ä‚¢‚é‚ׂ«‚È‚ñ‚¾‚¯‚ÇA
‚¨‚»‚ç‚­“®ìŒø—¦ã‚Ì–â‘è‚Å‚»‚¤‚È‚Á‚Ä‚¢‚é‚ñ‚¾‚낤‚ËB
ƒƒ^ƒƒ\ƒbƒh‚Ì‘¶Ýƒ`ƒFƒbƒN‚ÍAPI‚ª‘¶Ý‚µ‚È‚¢‚©‚à‚µ‚ê‚È‚¢B

Sqrat‚ª‚¿‚傤‚Ç‚»‚ñ‚ÈŽÀ‘•‚ÅAƒoƒCƒ“ƒh‚µ‚½ƒƒ“ƒo‚̈ꗗ‚É_get‚ŌĂÑo‚³‚ꂽƒƒ“ƒo–¼‚ª‘¶Ý‚µ‚È‚¢ê‡A
ƒGƒ‰[‚ð•Ô‚³‚¸‚ɉ½‚à‚µ‚È‚¢‚à‚Ì‚¾‚©‚çA
SquirrelƒCƒ“ƒ^ƒvƒŠƒ^‚͕ԂÁ‚Ä‚«‚½null‚ɑ΂µ‚ăƒ^ƒƒ\ƒbƒh‚̌ĂÑo‚µ‚ð‚©‚¯‚悤‚Æ‚µ‚ÄŽ¸”s‚µ‚Ä‚éA‚ñ‚¾‚Á‚½‚©‚ÈB
‚Ƃɂ©‚­ƒoƒCƒ“ƒ_‘¤‚Å“o˜^‚·‚é_get‚ÍAŠÇŠŠOƒƒ^ƒƒ\ƒbƒhŒÄ‚Ño‚µ‚ɑ΂µ‚Ä‚Ífalse‚Ü‚½‚Í—áŠO‚ð•Ô‚µ‚Ä‚ ‚°‚È‚¢‚Æ‚¢‚¯‚È‚¢B

SquirrelƒCƒ“ƒ^ƒvƒŠƒ^‚ÌŽÀ‘•‘¤‚à‚à‚¤‚¿‚å‚Á‚Æ‚â‚è‚æ‚¤‚ª‚ ‚è‚»‚¤‚È‹C‚ª‚·‚邯‚Ç‚ËB

42:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/10 14:06:39
android‚ÅluaŽg‚¦‚é
URLØÝ¸(code.google.com)

43:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/11 00:03:37
‹v‚µ‚Ô‚è‚ÉRSSXVƒLƒ^[‚ÆŽv‚Á‚½‚ç‚»‚̃jƒ…[ƒX‚Å‚¿‚傯ƒKƒbƒJƒŠB

44:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/11 00:14:17
Google Android‚̓JƒXƒ^ƒ}ƒCƒY‚³‚ꂽLinux‚»‚Ì‚à‚̂Ȃñ‚¾‚©‚çA
Œ³‚©‚çŽg‚¦‚Ä“–‚½‚è‘O‚¾‚à‚ñ‚È‚ŸB

45:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/11 04:03:51
C‚É‚³Alua ‘g‚Ýž‚ñ‚ł邯‚³Alua‚̃\[ƒX‚Ý‚½‚Æ‚«‚ÉA‚ǂ̎¯•ÊŽq‚ª
C‚©‚çŽQÆ‚³‚ê‚Ä‚¢‚ÄA‚ǂꂪƒ[ƒJƒ‹‚¾‚¯‚ÅŽg—p‚³‚ê‚Ä‚¢‚é‚Ì‚©‚í‚©‚ç‚È‚­‚È‚éꇂª‚ ‚邿‚ËB
–½–¼‹K‘¥‚Æ‚©A‚â‚Á‚Ä‚éH

ˆê‰žAC‚©‚çŒÄ‚΂ê‚éŠÖ”‚ƕϔ–¼‚Í‘S‚Ä __ ‚ÅŽn‚܂邿‚¤‚É‚µ‚Ä‚éB
‚Å‚à‘å•¶Žš‚ÅŽn‚Ü‚Á‚Ä‚¢‚é‚Ì‚ª‘S‚ÄC‚©‚çŽQÆ‚³‚ê‚鎯•ÊŽq@‚Á‚Ä‹K‘¥‚Ì•û‚ª‚Ù‚¤‚ª
‚í‚©‚è‚â‚·‚¢‚Ì‚©‚ÈB‚Ç‚¤‚¾‚낤B __ ‚ÅŽn‚Ü‚é‚Ì‚ÍAŠÔˆá‚¢‚ª–³‚¢‹C‚ª‚·‚éB
‘å•¶Žš‚ÅŽn‚߂鎯•ÊŽq‚Á‚ÄA‚¯‚Á‚±‚¤‚¤‚Á‚©‚è‚‚¯‚»‚¤‚È‹C‚ª‚·‚é

46:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/11 08:39:16
>>45
local錾‚µ‚È‚¢‚ƃ[ƒJƒ‹‚ɂȂç‚È‚¢‚µ
require‚à‚ ‚é‚©‚ç–â‘è–³‚¢‚æ

47:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/11 13:06:52
>>46
‚»‚ê‚Å‚Í45‚ɑ΂·‚铚‚¦‚ɂȂÁ‚ĂȂ¢‚¾‚ëB
“š‚¦‚ÍAu‹æ•Ê‚·‚é•K—v‚͂Ȃ¢v‚¾‚ÈB
ŒãŽn––‚ª•K—v‚È‚çƒtƒ@ƒCƒiƒ‰ƒCƒU‚Å‚à‘‚¢‚Ä‚ ‚°‚ê‚Îςނ±‚Æ‚¾B

48:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/11 23:07:53
”nŽ­‚Á‚Û‚¢‚±‚Æ‚«‚­‚©‚à’m‚ê‚È‚¢‚¯‚Ç
CŒ¾ŒêƒŒƒxƒ‹‚̃vƒŠƒvƒƒZƒbƒT‚̃‰ƒCƒuƒ‰ƒŠ‚Á‚Ä‚ ‚é‚ÌH
Œy—ʃXƒNƒŠƒvƒgŒ¾Œê‚ÌA‚³‚ç‚É‘Oˆ——pB
Ž©ì‚µ‚ë‚Æ‚¢‚í‚ê‚è‚ᑊ‰ž‚ÌŽžŠÔ‚ð‚©‚¯‚ê‚Îì‚ê‚»‚¤‚¾‚¯‚ÇA
‚±‚¤‚¢‚¤“DL‚¢‚͕̂K—v‚Èl‚ÍŽ©•ª‚Åì‚é‚Ì‚©‚È‚ B

49:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/11 23:18:36
>>48
CPP32‚Á‚ÄC/C++ƒvƒŠƒvƒƒZƒbƒT‚ªVector‚É‚ ‚邿B
‚ ‚Æboost::wave‚Æ‚©B

50:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/11 23:22:52
URLØÝ¸(spirit.sourceforge.net)
‚±‚̂ւñH ƒ‰ƒCƒZƒ“ƒX‚Í boost


51:48
09/06/11 23:33:12
‚Ç‚¤‚à‚ ‚肪‚Æ‚¤BŒ©‚Ă݂܂·

52:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/12 03:19:25
ƒvƒŠƒvƒƒZƒbƒT‚͂ȂŸccB
—L—p‚³‚Í”F‚߂邵AŽÀÛƒvƒŠƒvƒƒZƒbƒT‚ðŠˆ—p‚µ‚½ƒQ[ƒ€‚̈—Œn‚ÍŒ©‚½‚±‚Æ‚ ‚é‚킯‚¾‚ªA
Œ‹‹Çƒ\[ƒXƒR[ƒh‚ª”š”­‚µ‚ăRƒ“ƒpƒCƒ‰EƒCƒ“ƒ^ƒvƒŠƒ^‘¤‚É•‰’S‚ª‚©‚©‚é‚Ì‚ª—Ž‚¿‚Ȃ̂ÅA
ƒIƒŒ‚Í‚ ‚Ü‚èŽ^¬‚Í‚µ‚©‚Ë‚éB

C++‚ÆC#‚̃rƒ‹ƒh‘¬“x‚Ì·‚ðŽv‚¤‚Æ‚ÈB

53:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/12 10:40:09
‚ ‚ç‚©‚¶‚߃vƒŠƒvƒƒZƒbƒT‚ð’Ê‚µ‚ăXƒNƒŠƒvƒg‚ð•ÏŠ·‚µA‚»‚ê‚ðƒvƒƒOƒ‰ƒ€‚ɓǂݞ‚Ü‚¹‚邯‚¢‚¤Žè‚à‚ ‚邿B
‚½‚¾ALua‚Å‚»‚ê‚â‚邯ƒRƒ“ƒpƒCƒ‹ƒGƒ‰[o‚Ü‚­‚肾‚Á‚½‚ÆŽv‚¤B
AngelScript‚Í–â‘è‚È‚µASquirrel‚à‚½‚Ô‚ñ–â‘è‚È‚¢‚ÆŽv‚¤B

‚½‚¾AŠO•”ƒXƒNƒŠƒvƒg‚Å‚ ‚Á‚½‚ç‚¢‚¢‚ȂƎv‚¤ƒvƒŠƒvƒƒZƒbƒT‚Ì‹@”\‚Í#include‚¾‚¯‚̂悤‚È‹C‚ª‚·‚éB

54:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/12 19:42:57
lua ‚Ń\[ƒX•ªŠ„‚µ‚½‚¢‚Æ‚«i‚Æ‚¢‚¤‚æ‚è‚àAƒ\[ƒX‚ð•¡”‚ÌluaƒXƒNƒŠƒvƒg‚Å‹¤—L‚µ‚½‚¢‚Æ‚«j
‚Á‚Ăǂ¤‚·‚ê‚΂¢‚¢‚ÌH
Luaƒtƒ@ƒCƒ‹‚ðƒ[ƒh‚µ‚ă‰ƒCƒuƒ‰ƒŠ‚Æ‚µ‚Ä“o˜^‚Ý‚½‚¢‚ÈŠÖ”‚ª‚ ‚éH

55:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/13 01:09:49
ƒ}ƒNƒƒvƒƒZƒbƒT‚Æ‚¢‚¦‚Îm4

>>54
require‚©dofile‚¶‚Ⴞ‚ß?

56:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/15 19:46:26
Lua‚É–¼‘O‹óŠÔ‚Á‚Ä‚ ‚é‚ñ‚Å‚·‚©H
“¯–¼ŠÖ”‚ª•ʃtƒ@ƒCƒ‹‚É‚ ‚Á‚½‚΂ ‚¢‚Ç‚¤‚·‚é‚ñ‚Å‚·‚©H

57:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/15 21:48:03
‚ ‚Ü‚è‚É•³‚ȃ‰ƒCƒuƒ‰ƒŠ‚È‚çŽÌ‚Ä‚ÄÄ\’z‚·‚é‚Ì‚à‚¢‚¢‚ñ‚¶‚á‚È‚¢‚©B
Œy—ʃXƒNƒŠƒvƒgŒ¾Œê‚È‚ñ‚¾‚µ


58:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/15 22:05:45
>>56
ƒOƒ[ƒoƒ‹•Ï”‚ðŽQƂ܂½‚Í‘ã“ü‚·‚éۂɌĂ΂ê‚郃^ƒƒ\ƒbƒh‚ðÝ’è‚Å‚«‚邿

59:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/16 19:09:48
>>58
“¯–¼ŠÖ”‚ª—L‚Á‚½ê‡‚Ì‹““®‚Ìݒ肪‚Å‚«‚éA
‚Æ‚¢‚¤ˆÓ–¡‚Å‚µ‚傤‚©B

“¯–¼ŠÖ”‚Ì‚ ‚éLuaƒtƒ@ƒCƒ‹2‚‚ð
C++‘¤‚ÅŠJ‚¢‚½ŽžA‚Ç‚¤‚µ‚Ä‚àŒÄ‚Ñ•ª‚¯‚ç‚ê‚È‚¢EEEE

60:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/16 20:21:26
>>59
‚Æ‚¢‚¤‚©ALua‚àSquirrel‚àŠÖ”‚̓tƒ@[ƒXƒgƒNƒ‰ƒXƒIƒuƒWƒFƒNƒg‚È‚ñ‚¾‚©‚çA
‚Q‰ñ’è‹`‚µ‚½‚çʼn‚̂₂ÍÁ‚¦‚¿‚Ⴄ‚Å‚µ‚åH

ƒI[ƒo[ƒ[ƒh‚Æ‚©‚Í‚»‚̂܂܂ł͂ł«‚ñ‚í‚È[

61:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/16 20:28:08
>>56
ƒe[ƒuƒ‹‚Å–¼‘O‹óŠÔ‚Á‚Û‚¢‚à‚Ì‚ªŽÀŒ»‚Å‚«‚éB
-- A.lua
A = {}
function A.hoge()
...
end
‚Ý‚½‚¢‚É‘‚¢‚ÄC‚©‚ç‚Í
lua_getglobal(L, "A");
lua_getfield(L, "hoge");
lua_call(L, 0, 0);
‚ŌĂÑo‚¹‚éB

62:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/16 23:17:00
>>60-61
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·I
¬Œ÷‚µ‚Ü‚µ‚½I

63:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/24 09:22:21
Lua‚Á‚ÄluaL_loadbuffer‚µ‚Ä
lua_pcall‚µ‚½‚ ‚ÆA

luaL_loadbuffer‚̃oƒbƒtƒ@‚Á‚Ď̂Ăç‚ê‚È‚¢‚ñ‚©‚ÈH

loadbuffer‚µ‚Äpcall‚·‚邯
ŽÀۂ̃oƒCƒiƒŠƒTƒCƒY‚Ì“ñ”{‚­‚ç‚¢ƒƒ‚ƒŠ‚ðH‚Á‚Ä‚¢‚邿‚¤‚È‚ñ‚Å

pcallŒã‚Ìloadbuffer‚̃`ƒƒƒ“ƒN‚Í
Š´Šo“I‚ɂ͂¢‚ç‚È‚¢‚悤‚ÉŠ´‚¶‚é‚ñ‚¾‚¯‚ÇccB


64:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/25 00:55:31
lua 5.1.4 ‚ð Mac OS X 10.5.7 ‚Å“®‚©‚µ‚Ä‚é‚̂ł·‚ªAƒoƒCƒiƒŠƒ‚[ƒh‚Ńtƒ@ƒCƒ‹‘‚«ž‚Ý‚ªo—ˆ‚Ü‚¹‚ñB

v = 1
fh = io.open("samplefile", "wb")
if fh ~= nil then
fh:write(v)
fh:close()
end

‚ðŽÀs‚·‚邯Asamplefile‚Ì’†g‚Í0x01‚ł͖³‚­0x31‚Å‚·B
ƒoƒCƒiƒŠƒ‚[ƒh‚Ì‘‚«ž‚݂͂ǂ¤‚·‚ê‚΂¢‚¢‚Ì‚©‚²‘¶’m‚Ì•û‹³‚¦‚ĉº‚³‚¢B


65:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/25 11:58:28
>>64
v = "\1"

66:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/25 12:01:56
C# ‚ÉIronPython‚ð‘g‚Ýž‚ñ‚ÅFX‚Æ‚¢‚¶‚Á‚Ä‚Ý‚Ä‚é‚Æ‚±‚ë‚È‚ñ‚¾‚ªA
C#‚̃Nƒ‰ƒX‚ðPython‘¤‚ÅŽg‚¤‚Æ‚«‚֗̕˜‚³‚ª_‚·‚¬‚é‚ÈB

‚È‚ñ‚¹AƒoƒCƒ“ƒ_—p‚̃R[ƒh‚È‚ñ‚Ĉês‚à‘‚­•K—v‚È‚­A
Python‘¤‚Å’Êí‚̃‚ƒWƒ…[ƒ‹‚̂悤‚Éimport‚·‚邾‚¯‚Å•’Ê‚Éì‚Á‚½‚èŽE‚µ‚½‚è‚Å‚«‚é‚ñ‚¾‚©‚çB
i“–‘R‚È‚ª‚çG‚ê‚é‚Ì‚ÍC#‘¤‚Åpublic‚ÉŽw’肵‚Ä‚¢‚é•”•ª‚Ì‚Ýj
‚¢‚â‚Í‚âB.NET Framework‚Í‚·‚΂炵‚¢B

”½–ÊAPython‘¤‚̃R[ƒh‚ðC#‘¤‚©‚çŒÄ‚Ño‚·‚̂͂¿‚å‚Á‚Æ‚µ‚½‚¨‚Ü‚¶‚È‚¢‚ª•K—v‚¾‚ªA
‚±‚ê‚͂܂ Œ^‚Ì‚ ‚錾Œê‚©‚çŒ^‚Ì–³‚¢Œ¾Œê‚Ì‹@”\‚ðŒÄ‚Ño‚·‚̂ɎèŠÔ‚ª‚©‚©‚é‚̂͂µ‚傤‚ª‚È‚¢‚©‚È‚ŸB

67:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/25 12:13:04
64‚Å‚·B

liolib.c‚ð‚Ý‚½‚çAg_write()‚Ì’†‚Å
if (lua_type(L, arg) == LUA_TNUMBER) {
/* optimization: could be done exactly as for strings */
status = status &&
fprintf(f, LUA_NUMBER_FMT, lua_tonumber(L, arg)) > 0;
}

‚ÈŽ–‚µ‚Ä‚é‚̂ŕ¶Žš‚É‚µ‚¿‚Ⴄ‚ñ‚Å‚·‚ËBƒoƒCƒiƒŠ‚Å‘‚«o‚·‚̂͂â‚߂Ƃ«‚Ü‚·B



68:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/25 12:15:48
>>65
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B‚È‚é‚Ù‚ÇA‚½‚µ‚©‚É‚»‚ꂾ‚Æ0x01‚ª‘‚«o‚³‚ê‚Ü‚µ‚½B

69:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/25 12:18:33
>>67
ƒtƒ@ƒCƒ‹IO‚­‚ç‚¢AŠÈ’P‚ÉŽ©ì‚µ‚Ä‚µ‚Ü‚¦‚΂ǂ¤H
Squirrel‚Ì•W€ƒ‰ƒCƒuƒ‰ƒŠ‚̓oƒCƒiƒŠƒtƒ@ƒCƒ‹‚µ‚©‚ë‚­‚ɓǂ߂Ȃ¢‘㕨‚Ȃ̂ÅA
’Êí‚̓ǂݑ‚«‚ÍŽ©ì‚̃Nƒ‰ƒX‚ðŽg‚Á‚Ă邿B
C/C++‚Å‘‚¢‚ăoƒCƒ“ƒh‚µ‚Ä‚µ‚Ü‚¦‚΂¢‚¢B

70:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/25 13:18:56
>>69
64‚Å‚·B
‚»‚¤‚Å‚·‚ËAŠæ’£‚Á‚Ă݂鎖‚É‚µ‚Ü‚·B
‚Ü‚¾luaŽn‚߂ĊԂà‚È‚¢‚Ì‚ÅA‚à‚¤­‚µŠµ‚ê‚Ä‚©‚ç‚Å‚·‚©‚ËB
ƒAƒhƒoƒCƒX‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·B

71:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/26 06:38:29
>>66
.net‚Ì‚¢‚¢‚Æ‚±‚ë‚ÍA“¯‚¶.net‚ÌŒ¾Œê‚Ì‘ŠŒÝ‰^—p‚ª]—ˆ‚Ì‘g‚Ýž‚ÝŒ¾Œê‚æ‚èŠi’i‚ÉŠy‚ȂƂ±‚낾‚æ‚È[B
‰´‚ª‰½‚ð‚¢‚¢‚½‚¢‚©‚Æ‚¢‚¤‚ÆAIronRubyŠæ’£‚Á‚Ä‚­‚ê‚Á‚Ä‚¢‚¤

72:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/26 09:28:58
Google V8‚ð‘g‚Ýž‚ÝŒ¾Œê‚Æ‚µ‚ÄŽg‚Á‚Ă݂½l‚¢‚éH
‘¬“x“I‚ɂ͂ǂñ‚È‚à‚ñH

73:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/26 14:25:35
‚¤‚ÍBIronPython‚̃XƒNƒŠƒvƒg‚ðƒAƒZƒ“ƒuƒŠ(DLL)‚ɃRƒ“ƒpƒCƒ‹‚µ‚ÄA•’ʂɎÀs‚Å‚«‚Ä‚µ‚Ü‚Á‚½B
‚·‚²‚·‚¬‚é‚—‚—‚—

‚Ü‚ ‹tƒRƒ“ƒpƒCƒ‹‚µ‚Ä’­‚߂Ă݂½‚ç–¾‚ç‚©‚ÉC#‚æ‚è–³‘ʂȃR[ƒh‚ª‘½‚¢‚©‚ç
‰½‚Å‚à‚©‚ñ‚Å‚à‚±‚ê‚Æ‚¢‚¤‚킯‚ɂ͂¢‚©‚È‚¢‚¯‚Ç‚ËB

74:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/26 15:59:41
.NET‚ª¦‚¢‚ñ‚¶‚á‚È‚­‚ÄAIronPython‚ðŽÀ‘•‚µ‚½l‚ª¦‚¢‚ÆŽv‚¤B
‚ ‚ÌlAŒ³X‚Í.NET‚ð”Û’è‚·‚é˜_•¶‘‚­‚½‚߂ɎÀ‘•‚µ‚Ä‚½‚Ì‚Éw

75:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/26 16:06:03
˜_•¶‘‚¢‚Ă邤‚¿‚ÉA‚±‚¤‚â‚Á‚½‚ç‚Å‚«‚é‚ñ‚¶‚á‚ËH‚ÆŽv‚Á‚Äì‚Á‚Ă݂½‚çƒiƒCƒX‚É‚¤‚²‚¢‚¿‚á‚Á‚½‚ñ‚¾‚Á‚¯‚©B‚½‚µ‚©w

76:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/06/28 18:20:03
‚à‚¤‚¿‚å‚Á‚Æ“¥‚Ýž‚ñ‚ÅASquirrel‚Ý‚½‚¢‚ɃXƒ^ƒbƒNƒŒƒXŽÀ‘•‚É‚µ‚½‚ç‚Å‚«‚邱‚Æ‚à
FX‘‚¦‚é‚ñ‚¾‚¯‚ǂ˂¥„IronPython

‚Ü‚ Squirrel‚̃pƒtƒH[ƒ}ƒ“ƒX‚ðl‚¦‚邯A
‚»‚Ì•ªˆ—”\—Í‚ª—Ž‚¿‚¿‚Ⴄ‚Ì‚©‚ÆŽv‚í‚È‚¢‚Å‚à‚È‚¢‚ªB

77:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/01 07:23:03
‹v‚µ‚Ô‚è‚ÌXV‚«‚½

Squirrel 2.2.3 stable
June 30, 2009

-added sq_getfunctioninfo
-added compile time flag SQUSEDOUBLE to use double precision floats
-added global slot _floatsize_ int the base lib to recognize single precision and double precision builds
-sq_wakeupvm can now resume the vm with an exception
-added sqstd_format
-generators can now be instantiated by calling sq_call() or closure.call()
-fixed a bug in sqstd_printcallstack(thx takayuki_h)
-fixed modulo by zero(thx jup)
-fixed negative enums and constants
-fixed generator crash bug if invoked as tail call (thx Mr.Accident)
-fixed some minor bug

78:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/01 10:46:11
‚·‚²‚¢‹vX‚¾‚Ë
ŠJ”­‘±‚¢‚Ä‚é‚Ì‚ª‚ ‚肪‚½‚¢

79:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/01 12:02:12
Squirrel‚ÌìŽÒ‚³‚ñ‚Í“š‚¦‚Ä‚­‚ê‚邯‚«‚͂ƂĂཎÀ‚É•Ô“š‚µ‚Ä‚­‚ê‚é‚ñ‚¾‚ªA
—v–]o‚µ‚Ä‚à–³Ž‹‚³‚ê‚Ä‚»‚̂܂ÜI‚í‚Á‚¿‚Ⴄ‚±‚Æ‚ª‘½‚¢‚ñ‚¾‚æ‚ÈBiƒtƒH[ƒ‰ƒ€‚É‚Äj

’¼Úƒ[ƒ‹‚ðo‚µ‚½‚Ù‚¤‚ª‚¢‚¢‚Ì‚©‚È‚ŸB

80:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/01 13:29:07
squirrel‚Á‚Ă܂¾ˆêl‚ÅŠJ”­‚µ‚Ä‚é‚ñH

81:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/01 19:46:32
‚»‚¤‚¢‚¦‚ÎRMS‚ªC#‚͊댯‚¾‚ÆŒ¾‚Á‚½‚炵‚¢‚ª
python‚Æsquirrel‚à2.x‚ÌŠJ”­‚ª‚¢‚‚܂ő±‚­‚©‹C‚ɂȂé‚È‚ 

82:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/01 22:39:03
RMS‚ÍGNU‚ɂƂÁ‚ÄC#‚¨‚æ‚ÑMono‚ª“Á‹–NŠQ‚𓥂܂Ȃ¢‚©‚Æ‚¢‚¤“_‚Ŋ뜜‚µ‚Ă邾‚¯‚ÅA
C#‚ÌŠJ”­ŽÒ‚ª‚¢‚È‚­‚È‚é‚Æ‚©‚»‚¤‚¢‚¤˜b‚ł͂Ȃ¢B

83:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/03 02:58:05
>>66‚Æ‚©>>73‚ªRhinoŽg‚Á‚½‚ç‚Ç‚ñ‚È”½‰ž‚·‚é‚Ì‚©‹C‚ɂȂ銂¾‚ª
‚»‚à‚»‚à‘g‚Ýž‚Ý‚Åjs‚ăGƒfƒBƒ^‚̃}ƒNƒŒ¾Œê‚Æ‚©‚µ‚©Œ©‚½‚±‚ƂȂ©‚Á‚½EEEB

84:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/07 21:29:11
Ž¿–âB¡sqratƒeƒXƒg‚µ‚Ä‚é‚̂ł·‚ªƒoƒCƒ“ƒh‚·‚éŠÖ”‚ª
int f(int a, int b=1) {return a+b;}
‚̂悤‚Ɉø”‚̃fƒtƒHƒ‹ƒg’lŽ‚Á‚Ä‚½Žž‚͂ǂ¤‚µ‚Ă܂·‚©B—‘z‚ðŒ¾‚¤‚È‚ç
RootTable(vm).Func<int (*)(int, Optional<int,1>)>(_SC("f"),&f);
‚̂悤‚ÈŠ´‚¶‚ÉãY—í‚É‘‚¯‚邯‚¢‚¢‚ñ‚¾‚¯‚ÇŽ©•ª‚ÌŽÀ—Í‚¶‚Ⴄ‚Ü‚­ŽÀ‘•‚Å‚«‚È‚¢w
‚¿‚Ȃ݂ɃtƒH[ƒ‰ƒ€‚É‚ ‚é5/31•t‚¯‚Ìsqrat‚ÌC³”ÅŽg‚Á‚Ă݂½‚çA
ƒGƒ‰[ƒƒbƒZ[ƒW‚ª_SC()‚ÅŠ‡‚Á‚ĂȂ¢‚̂ŃRƒ“ƒpƒCƒ‹ƒGƒ‰[‚ɂȂè‚Ü‚µ‚½B
‚¤‚ÕŽå‚ÍJIT‚Ìl‚Ý‚½‚¢‚¯‚ÇA‚ ‚ê‚ÍŽg‚í‚È‚¢‚Å—lŽqŒ©‚Ì•û‚ª‚¢‚¢‚Ì‚©‚ÈB

85:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/07 22:33:38
>>84
‚¢‚â[Asqrat‚ÌìŽÒ‚³‚ñ‚ÍJIT‚Ìl‚Ƃ͕Êl‚Å‚·‚æBƒŒƒX‚Í‘‚«‚Ü‚µ‚½‚ª[B

ˆê’U‚Qˆø”‚ÌŠÖ”‚Æ‚µ‚Ä“o˜^‚µ‚Ä—lŽq‚ðŒ©‚éA‚©‚ÈB
Squirrel‚̃fƒtƒHƒ‹ƒgˆø”‚̓Cƒ“ƒ^ƒvƒŠƒ^‚ªŽ©‘O‚Å‚â‚Á‚Ä‚é‚Ì‚Å
ƒoƒCƒ“ƒ_‘¤‚ÅŽ©“®“I‚Ɏ擾‚Á‚ÄŒ¾‚¤‚͖̂³—‚Á‚Û‚¢‚ñ‚¶‚á‚È‚¢‚©‚È‚ŸB
—‹üã‚̓fƒtƒHƒ‹ƒgˆø”‚ðƒeƒ“ƒvƒŒ[ƒgŒ^‚Ì
ƒIƒuƒWƒFƒNƒg‚Æ‚µ‚Ä“n‚µ‚Ä‚ ‚°‚ê‚΂¢‚¯‚»‚¤‚Å‚·‚ªB

‚Æ‚à‚ ‚êC/C++‚ÍŠÖ”Œ^Œ¾Œê‚ł͂Ȃ¢‚µA‚ ‚Ü‚è“Ë‚Áž‚ñ‚ÅŽÀ‘•‚·‚é‚قǂ̂±‚Ƃł͂Ȃ¢‹C‚ª‚µ‚Ü‚·B

86:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/08 00:36:42
>>85
‚»‚¤‚Å‚·‚ËB’ú‚ß‚ÄSquirrel‘¤‚ÅŠÖ”’è‹`‚µ‚悤‚©‚ÈB
DXƒ‰ƒCƒuƒ‰ƒŠ‚Æ‚¢‚¤‚Ì‚ðŠÛ‚²‚ƃoƒCƒ“ƒh‚µ‚悤‚Æ‚µ‚Ä‚¢‚é‚̂ł·‚ªAƒ‰ƒCƒuƒ‰ƒŠ‚ÌAPI‚ÌŽd—l‚Æ
Squirrelã‚ÌŠÖ”‚Ì’è‹`‚ªˆê’v‚µ‚Ä‚¢‚È‚¢‚ÆC++‚̃\[ƒX‚©‚çƒvƒƒOƒ‰ƒ€Ž‚Á‚Ä‚­‚é‚Ì‚ª
‚â‚₱‚µ‚­‚È‚é‚Ì‚ÅAƒfƒBƒtƒHƒ‹ƒgˆø”’è‹`‚µ‚È‚¢‚킯‚É‚à‚¢‚©‚È‚¢Ž–î‚Å‚µ‚ÄB

Squirrel JITAƒIƒŠƒWƒiƒ‹2.1.2‚Ìl‚Ɖü‘¢”Å2.2.2‚Ìl‚ª•ʂȂ̂ð–Y‚ê‚Ä‚¨‚è‚Ü‚µ‚½B‚·‚¢‚Ü‚¹‚ñB
URLØÝ¸(squirrel-lang.org) ‚Ì 05-31-2009, 1:04 PM ‚ÌZIP‚Å‚·B
ʼn‚Ì"I tried to bind with Sqrat-0.6."(ƒIƒŒ‚ÍSqrat-0.6‚Ōł܂낤‚Æ‚µ‚½)‚ ‚½‚è‚©‚ç•sˆÀ‚¾‚Á‚½‚è...

87:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/08 01:26:52
>>86
“Še‚µ‚Ä‚¢‚é‰ü•ϔłł̓tƒH[ƒ‰ƒ€‚̃ŒƒX‚Å‚ ‚°‚Ä‚¢‚é•s‹ï‡‚ÍC³‚³‚ê‚Ă邿B
‚½‚¾AŽ©•ª‚̃vƒƒWƒFƒNƒg‚ųí‚É“®‚©‚È‚©‚Á‚½‚͖̂{“–B
‚à[‚¿‚å‚Á‚ÆFX“®‚©‚µ‚Ăقµ‚¢‚Æ‚±‚낾‚ËB

88:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/08 23:11:57
•s‹ï‡‚Ì2ŒÂ–Ú‚Ì•û‚ÍA•¶–@“I‚É‚¨‚©‚µ‚ȉp•¶‚ňӖ¡•s–¾‚È‚ñ‚Å‚·‚ª
‚±‚̃XƒŒ‚ð“ǂނÆA‚Ç‚¤‚à>>41‚Ìl‚ªŒ¾‚Á‚Ä‚é˜b‚ÌŠÖ˜A‚̂悤‚Å‚·‚ËB
‚ ‚肪‚½‚­Žg‚킹‚Ä‚à‚炤‚±‚Ƃɂµ‚Ü‚·BƒŒƒX‰º‚³‚Á‚½•û‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B

89:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/09 00:41:06
>>88
„Cannot call method appended at Squirrel script as members of the class
„ to binded C++ Classes includes meta-methods[_add/_mul/...].
„ The hook getter [_get] should return false if the key is unknown.

’¼–óF
ŒÄ‚Ño‚·‚±‚Æ‚ª‚Å‚«‚È‚¢Aƒƒ\ƒbƒh‚ðA‚»‚ê‚ÍSquirrelƒXƒNƒŠƒvƒg‚ŒljÁ‚³‚ꂽA
ƒƒ“ƒo‚Æ‚µ‚ÄA‚»‚ê‚̓Nƒ‰ƒX‚ÌA‚»‚ê‚̓oƒCƒ“ƒh‚³‚ꂽC++ƒNƒ‰ƒX‚Å‚ ‚èA
ƒƒ^ƒƒ\ƒbƒhw_add/_mul/...x‚ðŠÜ‚ÞB
hook getter‚Å‚ ‚éw_getx‚Ífalse‚ð•Ô‚·‚ׂ«‚Å‚ ‚éA‚à‚µkey‚ª–¢’m‚È‚ç‚ÎB

ˆÓ–óF
SquirrelƒXƒNƒŠƒvƒg‚ÅiƒNƒ‰ƒX‚Éj’ljÁ‚µ‚½ƒƒ\ƒbƒh‚ðŒÄ‚Ño‚·‚±‚Æ‚ª‚Å‚«‚È‚¢B
‚±‚êiƒNƒ‰ƒXj‚ÍC++‚̃Nƒ‰ƒX‚ðƒoƒCƒ“ƒh‚µ‚½‚à‚̂Ńƒ^ƒƒ\ƒbƒhw_add/_mul/...x‚ðŠÜ‚ÞB
‚à‚µ‚à‚µkey‚ª–¢’m‚Ìê‡Ahook getter‚Å‚ ‚éw_getx‚Ífalse‚ð•Ô‚·‚ׂ«‚Å‚ ‚éB


90:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/09 00:52:42
bindedKansu
readedMojisu

91:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/09 01:30:25
’¼–ó:
ƒNƒ‰ƒX‚ç‚̃ƒ“ƒo[‚ç‚Æ‚µ‚Ä‚ÌSquirrelƒXƒNƒŠƒvƒg‚̈ê“_‚ɌĂÑo‚µƒƒ\ƒbƒh‚ð
ƒƒ^ƒƒ\ƒbƒh[_add/_mull/...]‚ðŠÜ‚Þbinded C++ƒNƒ‰ƒX‚֒ljÁ‚³‚ê‚ç‚ê‚È‚¢B
‚à‚µ—á‚̃L[‚ª–¢’m‚È‚ç‚Ηá‚̃tƒbƒN‚ðŽæ“¾‚·‚éŠÖ”[_get]‚Ífalse‚ð•Ô‚·‚ׂ«‚¾B

method‚Éthe‚ª‚È‚¢Abind‚Ì‰ß‹Ž•ªŽŒ‚ÍboundAhook‚ðƒQƒbƒg‚·‚éA‚»‚Ì‘¼‚à‚ë‚à‚ëc

92:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/09 03:08:02
‚à‚µ‚©‚µ‚Ä@‚à‚µ‚©‚µ‚Ä

lua ‚ɂ̓Cƒ“ƒNƒŠƒƒ“ƒg‰‰ŽZŽq‚ª‚È‚¢‚Ì‚©..!?


93:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/09 03:19:05
>>92
URLØÝ¸(www.23ch.info)

94:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/10 00:38:39
newEnv = {};
defaultEnv = getfenv(0);
for k, v in pairs(_G) do
newEnv[k] = v;
end
setfenv(0, newEnv);
hoge = 10;
setfenv(0, defaultEnv);
print(hoge);

‘‚«Š·‚¦‚½ƒOƒ[ƒoƒ‹ŠÂ‹«(newEnv)‚Éhoge=10‚ð‘‚«ž‚ñ‚Å‚é‚Í‚¸‚Ȃ̂É
Lua5.0/5.1‚Å‚±‚ê‚Åo—Í‚ªnil‚ɂȂç‚È‚¢‚̂Ȃñ‚Å‚æ
"ƒOƒ[ƒoƒ‹ŠÂ‹«ƒe[ƒuƒ‹"ƒOƒ[ƒoƒ‹•Ï”‚ª‘®‚µ‚Ä‚éƒe[ƒuƒ‹‚Á‚Ă̂ªŠÔˆá‚¢H

95:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/10 14:54:20
>>92
ƒVƒFƒ‹ƒXƒNƒŠƒvƒg‚É‚àLisp‚É‚àTcl‚É‚àRuby‚É‚àPython‚É‚àA
ƒCƒ“ƒNƒŠƒƒ“ƒg‰‰ŽZŽq‚È‚ñ‚Ä–³‚¢‚ñ‚¾‚æB

96:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/10 17:25:55
Lua‚̕ϔ‚ðC‘¤‚©‚çŽæ“¾‚·‚é‘O‚ÉA
ŽÀۂɕϔ‚ª‘¶Ý‚·‚é‚©‚ÌŠm”F‚Á‚Ăł«‚Ü‚¹‚ñ‚©H

97:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/10 21:46:15
>>94
setfenv(0,env)‚¾‚ÆŒ»Ý‚̃XƒŒƒbƒh‚̊‹«‚ª•Ï‚í‚éB
Œ»ÝŽÀs’†‚ÌŠÖ”‚̊‹«‚ð•Ï‚¦‚é‚É‚Ísetfenv(1,env)‚ÅB

“K“–‚ɂ܂Ƃ߂Ă݂½
EƒOƒ[ƒoƒ‹•Ï”‚ÌŽQÆE‘ã“ücŽÀs’†‚ÌŠÖ”‚̊‹«
Egetfenv(0)/setfenv(0,env)cƒXƒŒƒbƒh‚̊‹«
Egetfenv(1)/setfenv(1,env)cŽÀs’†‚ÌŠÖ”‚̊‹«
EŠÖ”‚Ì’†‚Åì‚ç‚ꂽŠÖ”‚Íe‚̊‹«‚ðŽó‚¯Œp‚®
—áF
function f()
@local g = function() end
@return g
end
-- f‚ÍŽÀs’†‚̃`ƒƒƒ“ƒN‚̊‹«‚ðŽó‚¯Œp‚¬Ag‚Íf‚̊‹«‚ðŽó‚¯Œp‚®B
Eload*Œn‚Åì‚Á‚½ŠÖ”‚̓XƒŒƒbƒh‚̊‹«‚ðŽó‚¯Œp‚®
—áF
local t = setmetatable({hoge="t"},{__index=_G})
hoge="main"
print(t,hoge)
setfenv(0,t) -- ƒXƒŒƒbƒh‚̊‹«‚ª•ÏX‚³‚ê‚é
print(getfenv(1),getfenv(0),hoge) -- ŽÀs’†‚ÌŠÖ”‚Í‚»‚̂܂Ü
loadstring[[
print(getfenv(1),getfenv(0),hoge)
]]()

98:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/11 07:26:02
>>97
Ú‚µ‚¢ƒTƒ“ƒvƒ‹ƒeƒ‰‚”‚ˆ‚˜
ƒXƒŒƒbƒh‚̊‹«‚ª–â‘è‚È‚é‚Ì‚Íload*Œn‚¾‚¯‚Ȃ̂Ëorz

99:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/12 13:04:59
Lua Performance Tips - Radium Software
URLØÝ¸(d.hatena.ne.jp)


> Lua Programming Gems ‚ÍC Lua ‚̃vƒƒOƒ‰ƒ~ƒ“ƒOƒeƒNƒjƒbƒN‚ɂ‚¢‚Ă܂Ƃ߂½C
> ‚¢‚í‚ä‚éuGems–{v‚¾BŒöŽ®ƒy[ƒW‚ł͑æ‚QÍ "Lua Performance Tips" ‚ð
> ƒTƒ“ƒvƒ‹‚Æ‚µ‚Ä–³—¿ŒöŠJ‚µ‚Ä‚¨‚èC PDF Œ`Ž®‚Ń_ƒEƒ“ƒ[ƒh‚µ‚ēǂނ±‚Æ‚ª‚Å‚«‚éB
> ‚±‚Ì“à—e‚ª‚È‚©‚È‚©–Ê”’‚¢B

> Å‚àŠî–{“I‚ȃ|ƒCƒ“ƒg‚Å‚ ‚éƒOƒ[ƒoƒ‹•Ï”‚ƃ[ƒJƒ‹•Ï”‚̈Ⴂ‚©‚çC
> table ‚É‚¨‚¯‚é”z—ñ‚ƃnƒbƒVƒ…‚̈µ‚¢‚ɂ‚¢‚ÄC•¶Žš—ñ‚Ì“à•”“I‚Ȉµ‚¢‚ɂ‚¢‚ÄC
> “™XC Lua ‚É‚¨‚¯‚éƒpƒtƒH[ƒ}ƒ“ƒX‚Ì—v“_‚ɂ‚¢‚ÄG‚ê‚Ä‚¢‚éB
> (—ª)

‘±‚«‚̓TƒCƒg‚Å

100:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/12 22:06:29
sqrat0.7

101:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/13 15:25:37
>>96
URLØÝ¸(sugarpot.sakura.ne.jp)

102:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/13 23:27:37
>>100
‚¤‚Ù‚ÁBXV“à—eŒ©‚Ä̲ÀB

IronPython‚ÍŽ–ŽÀã.NET‘¤‚̃I[ƒo[ƒ[ƒh‚ðƒTƒ|[ƒg‚Å‚«‚ĂȂ¢‚Ý‚½‚¢‚¾‚ÈB
–¾Ž¦“I‚É‘‚¯‚Γǂ߂Ȃ¢‚±‚Æ‚à–³‚¢‚悤‚¾‚ªA
‚±‚ê‚ÅŽÀ—p‚É‚È‚é‚Æ‚͂ƂĂàM‚¶‚ç‚ê‚È‚¢B
URLØÝ¸(blogs.msdn.com)

103:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/14 01:06:33
>>102
MessageBox‚ ‚½‚è‚ÅŽŽ‚¹‚΂·‚®‚í‚©‚邪•’ʂɌĂׂñ‚¼H
‚Ä‚ä[‚©‚È‚ñ‚Å‚¢‚«‚È‚èIronPythonH

104:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/14 09:26:14
>>95
Lisp ‚ɂ͉‰ŽZŽq‚Á‚Ä‚¢‚¤ŠT”O‚ª‚È‚¢‚©‚ç‚¿‚å‚Á‚ƈႤ‚¯‚ÇAinc ‚Ȃ炠‚邿B
Lua ‚Ì‘ã“ü•¶‚Ì = ‚à‰‰ŽZŽq‚¶‚á‚È‚¢‚ñ‚¾‚æ‚ÈB‘ã“ü•¶‚ÍŽ®‚¶‚á‚È‚¢‚©‚çB

>>96
Lua ‚͕ϔ‚Ì’l‚ª nil ‚È‚ç’è‹`‚³‚ê‚Ä‚¢‚È‚¢‚Á‚Ä‚¢‚¤ˆÓ–¡‚ɂȂé‚Ì‚ÅA
’l‚ðŽæ“¾‚µ‚Ä‚Ý‚Ä nil ‚©‚Ç‚¤‚©‚𒲂ׂê‚΂¢‚¢‚ñ‚¶‚á‚È‚¢‚©‚ÈB
Œµ–§‚É‚ÍAƒOƒ[ƒoƒ‹•Ï”‚̓e[ƒuƒ‹‚̃tƒB[ƒ‹ƒh‚Æ‚µ‚Ä’è‹`‚³‚ê‚Ä‚¢‚ÄA
’l‚ª nil ‚Ȃ炻‚̃L[‚Í‘¶Ý‚µ‚È‚¢‚±‚ƂƓ¯’l‚Ȃ̂ÅB

105:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/14 10:16:10
>>103
MessageBox‚ÍŽŽ‚µ‚ĂȂ©‚Á‚½‚¯‚ÇAŠm‚©‚É‚»‚¤‚¾‚æ‚È‚ŸB
IronPythonŒÄ‚Ño‚µ—p‚ÉÄ’è‹`‚µ‚Ä‚ ‚°‚È‚¢‚Æ‚¢‚¯‚È‚¢‚©‚àB

ƒIƒŒAˆÈ‘O‚ÍSquirrel“}‚¾‚Á‚½‚ñ‚¾‚¯‚Ç¡‚ÍIronPython•û–Ê‚ÉB
‘g‚Ýž‚݃XƒNƒŠƒvƒg‚Æ‚µ‚Ă̓AƒŠ‚¾‚ÆŽv‚¤‚ñ‚¾‚¯‚ÇA‚Ç‚¤‚¾‚낤B

106:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/14 15:38:04
Lua > Python:
Python‚ÍCŠÖ”‚ð“o˜^‚µ‚ăXƒNƒŠƒvƒg‚©‚çŒÄ‚Ño‚·‚Ì‚ªŒ‹\‚ß‚ñ‚Ç‚­‚³‚¢B
ƒRƒ‹[ƒ`ƒ“‚ɧŒÀ‚ª‚ ‚éB“¯‚¶ŠÖ”“à‚Å‚µ‚© yield‚Å‚«‚È‚¢‚µAyield ‚ňø”‚â–ß‚è’l‚ÌŽw’肪‚Å‚«‚È‚¢B
“ÆŽ©‚̃[ƒ_[‚ðŽg‚Á‚½ import ŽÀ‘•‚ª‚Ƃɂ©‚­–Ê“|B lua ‚È‚ç lua_load ‚ÉŽ©•ª’è‹`‚̃[ƒhŠÖ”‚킽‚·‚¾‚¯‚ÅOK

Pyhton > Lua:
ƒXƒ^ƒbƒN‚ł͂Ȃ­ACã‚ÅLua•Ï”‚Í‚·‚×‚Ä PyObject ‚Æ‚µ‚Ä•\Œ»‚³‚ê‚é‚Ì‚ÅCƒ\[ƒX‚̉“ǫ‚ª‚‚¢B
ŠÖ”‚à®”‚à‘S•” PyObject ‚Æ‚µ‚ÄC‘¤‚̕ϔ‚ɕۑ¶‚·‚鎖‚ª‚Å‚«‚éB
ŠÂ‹«‚ª[ŽÀB

ƒQ[ƒ€—p“r‚Å‘g‚Ýž‚ñ‚Å‚¢‚鎩•ª‚Æ‚µ‚Ä‚ÍAƒRƒ‹[ƒ`ƒ“‚ÌŽg‚¢‚â‚·‚³‚ÆA
Ž©ìƒ[ƒ_[‚ł̃[ƒh‚ªŠyiƒQ[ƒ€—p‚̈³kƒtƒ@ƒCƒ‹‚©‚ç’¼ÚƒXƒNƒŠƒvƒg‚ðŒÄ‚Ño‚·•K—v‚ª‚ ‚éj
‚È“_‚ÅLuaˆ³ŸB

‚à‚µƒc[ƒ‹‚É‘g‚Ýž‚Þ‚ñ‚¾‚Á‚½‚çƒ\[ƒX‚̓ǂ݂₷‚³{ƒ‰ƒCƒuƒ‰ƒŠ[ŽÀ‚³‚Å’f‘R Python
Eclipse + PyDev‚ªŽg‚¢‚â‚·‚¢‚Ì‚àŸ‚¿“_B

107:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/14 18:43:12
‚í‚´‚í‚´.NET‚âMono‚Ɉˑ¶‚µ‚½‚­‚È‚¢

108:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/14 21:40:20
>>100
2“ú‚Å0.71‚Éオ‚Á‚Ă邩‚çƒoƒO‚Å‚à‚ ‚Á‚½‚Ì‚©‚ÆŽv‚Á‚½‚çA
ƒoƒCƒ“ƒh‚µ‚½C++‚ÌŠÖ”‚̈ø”‚ÉSquirrelŠÖ”‚ð“n‚¹‚邿‚¤‚É‚µ‚Ăقµ‚¢‚Æ
—v–]‚à‚ç‚Á‚Ĉê“ú‚Åì‚Á‚Ä‚«‚Ä‚é‚ñ‚Å‚·‚ËB
Kanryu‚³‚ñ‚̃pƒbƒ`‚à“ü‚Á‚½‚µŽdŽ–‚͂₢‚¼B

109:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/15 00:50:51
AngelScript|„DMjƒ‰´‚ç‚̘b‘è‘S‘R‚È‚¢‚È
GameMonkey|„DMjƒ‘S‚­‚¾
CRIScript|„DMjƒ‘S‚­‚¾

110:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/15 01:41:13
URLØÝ¸(www.chaiscript.com)
> ChaiScript | Easy to use scripting for C++

111:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/15 02:24:00
ƒ`ƒƒƒC‚Á‚ă~ƒ‹ƒNƒeƒB[‚â‚ñ
‚ÆŽv‚Á‚½‚烃S‚ª‚Ù‚ñ‚ƂɃ~ƒ‹ƒNƒeƒB[‚¾w

112:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/15 02:28:39
Squirrel‚Á‚ÄƒŠƒX‚â‚ñ

113:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/15 06:59:47
Lua‚ð‘g‚Ýž‚ñ‚Å‚ ‚鎚–‹ì¬ƒ\ƒtƒgAegisub
URLØÝ¸(www.aegisub.net)
URLØÝ¸(g-mark.jpn.org)

Žš–‹ƒXƒNƒŠƒvƒg‚Ì®Œ`‚âƒGƒtƒFƒNƒg‚ÉLua‚ð—˜—p‚µ‚Ä‚é
ƒ‰ƒCƒZƒ“ƒX‚ÍBSDAƒ\[ƒX‚ÍA
URLØÝ¸(svn.aegisub.net)


114:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/15 19:21:30
>>106
Python ‚Ìyield ‚͈ø”‚â–ß‚è’l‚ÌŽw’è‚Å‚«‚邿
Stackless Python ‚Ȃ瓯‚¶ŠÖ”‚Å‚µ‚©yieldŽg‚¦‚È‚¢‚Æ‚¢‚¤§ŒÀ‚à‚È‚©‚Á‚½‹C‚ª‚·‚邯‚Ç‚¤‚ëŠo‚¦




115:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/16 10:35:29
>>114
ƒŒƒX‚ðŒ©‚ÄƒWƒFƒlƒŒ[ƒ^ŠÖŒW‚ðG‚Á‚Ă݂½‚çA
Python‚̃o[ƒWƒ‡ƒ“‚É‚æ‚é‹““®‚Ì·ˆÙ‚ª”@ŽÀ‚Éo‚Ăărƒrƒb‚½B

3.0Œn‚Íprint•¶‚ªŠÖ”‰»‚³‚ê‚đޮ‚Ɍ݊·«‚ª–³‚¢‚Æ‚©A
ƒWƒFƒlƒŒ[ƒ^‚Ìnext()ƒƒ\ƒbƒh‚ªŽg‚¦‚È‚­‚È‚Á‚Ă邯‚©B

IronPython‚ÌŒ»s”ł͂܂¾2.5Œn‚ÅA¡”N’†‚É2.6ŒnŒÝŠ·‚ɂȂé—\’è‚Ȃ̂©B
ƒIƒŒ‚É‚Í3.0‚͂܂¾V‚µ‚·‚¬‚½‚悤‚¾I

116:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/16 13:54:53
>Python ‚Ìyield ‚͈ø”‚â–ß‚è’l‚ÌŽw’è‚Å‚«‚邿

URLØÝ¸(www.python.jp)
–{“–‚¾A‹C‚©‚È‚©‚Á‚½.... orz

117:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/29 10:08:15
lua_newthread ‚¾‚ƃOƒ[ƒoƒ‹•Ï”‚ª‹¤—L‚³‚ê‚¿‚Ⴄ‚¯‚ÇA
ƒOƒ[ƒoƒ‹•Ï”‚ð“Æ—§‚³‚¹‚邿‚¤‚ɂł«‚È‚¢‚ÌH
ƒR[ƒh‚ð‹¤—L‚µ‚ĕϔ‚¾‚¯“Æ—§‚³‚¹‚½‚¢‚ñ‚¾‚¯‚ÇB

... ‚Á‚Ä‘‚¢‚ĂĎv‚Á‚½‚¯‚ÇAŒ‹‹ÇŠÖ”‚àƒOƒ[ƒoƒ‹•Ï”‚Æ“¯‚¶‚È‚ñ‚¾‚©‚ç
lua_newstate ‚Å‚¢‚¢‚Ì‚©B

118:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/30 02:48:48
LUA‚̃Rƒ‹[ƒ`ƒ“‚Ì’†‚©‚çAC++‘¤‚Å’è‹`‚³‚ꂽ\‘¢‘Ì‚ðŽæ“¾‚µA
‚»‚̃ƒ“ƒo‚Ì’l‚ð•ÏX‚µ‚½‚¢‚̂ł·‚ªA•ÏX‚·‚éƒR[ƒh‚ðƒXƒNƒŠƒvƒg‚É
‹Lq‚µ‚½ê‡A‚»‚̃Rƒ‹[ƒ`ƒ“‚ðresume‚·‚éLUA‚ÌŠÖ”‚ðC++‚©‚牽“x‚©ŒÄ‚Ô‚Æ
luabind::detail::unref‚Æ‚¢‚¤‚Æ‚±‚ë‚Å—áŠO‚ªo‚Ä‚µ‚Ü‚¢‚Ü‚·
struct Test { int a; Test(){} }; ‚Æ‚¢‚¤\‘¢‘Ì‚ª‚ ‚Á‚ÄAluabind‚Å
luabind::module(L) [
@luabind::class_<Test>("Test")
@@.def(luabind::constructor<>())
@@.def_readwrite("a", &Test::a)
‚Æ‚µ‚ÄAƒRƒ‹[ƒ`ƒ“‚Ì’†‚Å t=Test() t.a=0 ‚Ì2s‚ð‘‚­‚Æ—áŠO‚ɂȂè‚Ü‚·
‚±‚Ì2s‚ðƒRƒƒ“ƒgƒAƒEƒg‚·‚邯A‰½“xŒÄ‚ñ‚Å‚à—áŠO‚ªo‚Ü‚¹‚ñ
‚Ü‚½A‚±‚Ì2s‚ðƒRƒ‹[ƒ`ƒ“‚łȂ¢•’ʂ̊֔‚É‹Lq‚µ‚ÄC++‚©‚çŒÄ‚ñ‚Å‚à
—áŠO‚ªo‚Ü‚¹‚ñ
‚È‚ºƒRƒ‹[ƒ`ƒ““à‚©‚ç\‘¢‘Ì‚ðŽg—p‚·‚éƒR[ƒh‚ð‘‚­‚Æ—áŠO‚ªo‚é‚̂łµ‚傤‚©

119:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/30 06:10:29
luabind ‚ÍŽg‚Á‚½‚±‚Æ‚ª‚È‚¢‚̂őz‘œ‚Å‚·‚ªA
ƒRƒ‹[ƒ`ƒ“‚©‚ç C ‚ÌŠÖ”‚ªŒÄ‚΂ê‚邯‚«‚Í lua_StateiL ‚Ì’lj‚ªˆá‚¤‚©‚çA
‚»‚ꂪ–â‘è‚ɂȂÁ‚Ä‚½‚肵‚È‚¢‚©‚ÈH


120:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/30 07:27:21
>>119
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
‚·‚݂܂¹‚ñAŽ¿–₵‚Ä‚¨‚¢‚ĉ½‚Å‚·‚ªAˆÈ‰º‚̃tƒH[ƒ‰ƒ€‚Ì‹LŽ–‚É
‚æ‚邯‚Ç‚¤‚â‚çluabind‚ɃoƒO‚ª‚ ‚Á‚½‚Ý‚½‚¢‚ÅA‹Â‚邯‚¨‚èlua_State‚Ì
’l‚ªŠÖŒW‚µ‚Ă邿‚¤‚Å‚·i‰pŒê‚ª‚æ‚­•ª‚©‚ç‚È‚¢‚̂ŊԈá‚Á‚Ä‚¢‚é‚©‚à‚µ‚ê‚Ü‚¹‚ñj
‚»‚ê‚Åluabind/detail/ref.hpp‚ð‹LŽ–‚̉º‚É‚ ‚é‚à‚̂ɒu‚«Š·‚¦‚½‚Æ‚±‚ëA
¡‚̂Ƃ±‚ë—áŠO‚ªo‚¸‚É“®‚¢‚Ä‚¢‚Ü‚·BB
URLØÝ¸(www.nabble.com)

121:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/31 16:36:17
lua_resume(ls, ...) ‚Å’†’f‚µ‚Ä‚¢‚éƒXƒNƒŠƒvƒg‚ª‚ ‚é‚ñ‚¾‚¯‚ÇA
ÄŠJ‚·‚é‚̂ł͂Ȃ­AƒŠƒZƒbƒg‚µ‚Äʼn‚©‚çŽÀs‚µ‚È‚¨‚µ‚½‚¢ê‡‚ª‚ ‚éB
‚±‚̂Ƃ«A‚Ç‚¤‚·‚ê‚΂¢‚¢H

ƒ}ƒjƒ…ƒAƒ‹‚É‚Í lua_newthread ‚Åì‚Á‚½ƒXƒŒƒbƒh‚͉ð•ú‚µ‚È‚­‚Ä‚¢‚¢A
‚f‚b‚ªŠÇ—‚·‚邯‘‚¢‚Ä‚ ‚邯‚ÇA‚³‚·‚ª‚É‚¢‚«‚È‚è

ls = lua_newthread(..);

‚Á‚Äã‘‚«‚·‚é‚ñ‚¾‚ÆA‚¢‚‚܂ł½‚Á‚Ä‚àŒÃ‚¢ ls ‚Ì“à—e‚ªíœ‚³‚ê‚È‚¢‚æ‚ËH
‚¾‚Á‚ÄLua‘¤‚©‚炵‚Ă݂ê‚ÎAŒÃ‚¢ ls ‚Í‚ ‚­‚Ü‚Å‚à’†’f‚µ‚Ä‚é‚̂ł ‚Á‚ÄA
‚¢‚ÂÄŠJ‚³‚ê‚é‚©‚í‚©‚ç‚È‚¢‚©‚ç‚f‚b‚ʼnñŽû‚Å‚«‚È‚¢‚µA
ŒÃ‚¢ ls ‚Í‚à‚Í‚â•s—v‚ɂȂÁ‚½‚æ[@‚Á‚Ä‚±‚Æ‚ð‚Ü‚Á‚½‚­ Lua ‘¤‚É’m‚点‚ĂȂ¢‚µB

‚©‚Æ‚¢‚Á‚ÄA–¾Ž¦“I‚É ls ‚ª•s—v‚ɂȂÁ‚½‚±‚Æ‚ð“`‚¦‚邽‚ß‚É

lua_close(ls);
ls = lua_newthread(...);
lua_resume(ls, ...);

‚Æ‚â‚Á‚Ä‚Ý‚é‚ÆAlua_newthread ‚Å“à•”ƒGƒ‰[‚ª”­¶‚·‚éiƒƒ‚ƒŠˆá”½‚Û‚¢j
‚Ç‚¤‚·‚ê‚΂¢‚¢‚Å‚·‚©H



122:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/31 18:37:55
>>121
>‚¢‚ÂÄŠJ‚³‚ê‚é‚©‚í‚©‚ç‚È‚¢‚©‚ç‚f‚b‚ʼnñŽû‚Å‚«‚È‚¢
‚ñ‚ÈŽ–‚͂Ȃ¢B
ƒXƒŒƒbƒh‚Å‚à‘¼‚̃f[ƒ^‚Å‚àAŽQƂł«‚È‚­‚È‚Á‚½‚ç‚f‚b‚ʼnñŽû‚³‚ê‚é
‚Æ‚¢‚¤Ž–‚ɕςí‚è‚͂Ȃ¢B

123:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/31 18:56:50
>>122
‚Å‚à C ‚̃Œƒxƒ‹‚Å‚ÍAŽQÆ‚³‚ê‚Ä‚¢‚é‚©‚Ç‚¤‚©‚Á‚Ă킩‚ç‚È‚¢‚ñ‚¶‚á‚È‚¢H
‚‚܂èAlua_newthread() ‚µ‚½’¼Œã‚ÍA
Lua ‚̃IƒuƒWƒFƒNƒg‚©‚ç‚ÍŽQÆ‚³‚ê‚Ä‚¢‚È‚¢ thread ‚ª‚Å‚«‚é‚킯‚Å‚·‚æ‚ËB

‹t‚É‚¢‚¤‚ÆAlua_newthread() ‚µ‚½‚¾‚¯‚¾‚Ƃǂ±‚©‚ç‚àŽQÆ‚³‚ê‚Ä‚¢‚È‚¢Ž–‚ɂȂ邩‚çA
lua_setglobal ‚©‰½‚©‚ðŽg‚Á‚ÄA‚Ç‚±‚©‚©‚çŽQÆ‚µ‚Ä‚ ‚°‚È‚¢‚Æ‚¢‚¯‚È‚¢‚Æ‚©H


124:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/31 19:50:44
‚Ç‚±‚Ìlua_newthread‚̉ðà“Ç‚ñ‚Å‚é‚Ì‚©’m‚ç‚ñ‚ªA
uV‚µ‚¢ƒXƒŒƒbƒh‚ð"ƒXƒ^ƒbƒN‚ÉÏ‚Ý"ccv‚Á‚Ä‘‚¢‚ĂȂ¢‚©H

125:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/31 19:59:52
URLØÝ¸(www.lua.org)
‚±‚±‚݂Ă܂·‚¯‚ÇA‚Å‚à‚³‚·‚ª‚ÉAƒXƒ^ƒbƒN‚ÉÏ‚ñ‚¾‚܂܂¶‚á‚Ù‚©‚Ì‚±‚Ƃł«‚È‚¢‚Å‚µ‚åB
Œ³‚ÌŽ¿–₳‚ꂽ•û‚ª‚Ç‚¤‚¢‚¤•—‚ÉŽg‚Á‚Ä‚¢‚½‚©‚É‚æ‚邯‚ÇB


126:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/31 20:09:46
lua_newthread‚Ì’¼Œã‚ÍCŠÖ”‚̃Xƒ^ƒbƒN‚©‚çuŽQÆv‚³‚ê‚Ă邵
‚»‚Ì‚ ‚ÆLua‚ÅŽQÆ‚µ‚½‚¢‚È‚ç–ß‚è’l‚È‚èƒOƒ[ƒoƒ‹ŠÂ‹«‚È‚è‚ɉŸ‚µž‚߂΂¢‚¢‚µ
C‘¤‚¾‚¯‚ÅŠÇ—‚µ‚½‚¢‚Ȃ烌ƒWƒXƒgƒŠ+luaL_ref‚Æ‚©Žg‚¦‚΂¢‚¢‚¾‚ë

‰½‚ª‚µ‚½‚¢‚ñ‚¾‚©‚í‚©‚ñ‚Ë[‚æ

127:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/31 20:12:10
V‚µ‚¢ƒXƒŒƒbƒh‚ðςނ̂͂¢‚¢‚ñ‚¾‚¯‚ÇA
ŒÃ‚¢ƒXƒŒƒbƒh‚ª•s—v‚ɂȂÁ‚½‚Æ‚¢‚¤‚±‚Æ‚ð‚Ç‚¤‚â‚Á‚ÄLUA‚É’m‚点‚é‚ÌH

ʼn‚É
ls = lua_newthread(...);
lua_resume(ls, ...)
‚ðŽÀs‚µ‚½‚Æ‚µ‚ÄAls ‚Í’†’fó‘Ԃ̂܂܎c‚Á‚Ä‚¢‚邯B
‚ÅA’†’fó‘Ô‚ð‚â‚ß‚ÄAʼn‚©‚çŽÀs‚µ‚½‚¢‚Æ‚¢‚¤‚±‚Æ‚ÅA‚¢‚«‚È‚è
ls = lua_newthread(...);
lua_resume(ls, ...)
‚ð‚à‚¤ˆê“xŒÄ‚Ño‚·‚ÆAŒÃ‚¢ ls ‚ªã‘‚«‚³‚ê‚邯‚ÇAŒÃ‚¢ ls ‚Ö‚ÌŽQÆ‚àA
‚È‚É‚à‚©‚à‚Ü‚Á‚½‚­‚¢‚¶‚Á‚Ä‚¨‚炸A‚½‚¾’P‚ÉV‚µ‚¢ƒXƒŒƒbƒh‚ð’ljÁ‚µ‚½‚¾‚¯‚É‚·‚¬‚È‚¢‚킯‚ÅB

ŒÃ‚¢ ls ‚ÌŽQƃJƒEƒ“ƒ^‚ðƒfƒNƒŠƒƒ“ƒg‚·‚é‚È‚èAŒÃ‚¢ ls ‚Ö‚ÌŽQÆ‚ð
휂·‚é‚È‚è‚̈—‚ª‚Ü‚Á‚½‚­“ü‚Á‚Ä‚¢‚È‚¢‚ÆB


128:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/31 20:38:13
C++‚ÆLuaƒXƒNƒŠƒvƒg‚̘AŒg‚ð‚µ‚½‚¢‚¨”N ‚È‚ñ‚Å‚·‚ªA
tolua‚Æluabind‚¾‚Á‚½‚ç‚Ç‚¿‚炪ˆÀ’肵‚Ă銴‚¶‚Å‚·‚©H

129:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/31 21:20:37
>>127
‚¾‚©‚ç휂µ‚½‚¢‚È‚çƒXƒŒƒbƒh‚ÌŽQÆ‚ð’ׂ¹‚΂¢‚¢‚¾‚¯‚Å‚µ‚åH
Ž©•ª‚ÅÅŒã‚É“š‚¦‘‚¢‚Ă邶‚á‚ñI


’†’f’†‚̃Rƒ‹[ƒ`ƒ“‚ªŽQÆ‚³‚ê‚È‚­‚È‚Á‚½ê‡‚É GC ‘ÎۂɂȂ邩‚Ç‚¤‚©‚Í
ƒ}ƒjƒ…ƒAƒ‹‚É‚à–¾Œ¾‚³‚ê‚ĂȂ¢A‚Ç‚Á‚¿‚È‚ÌH@‚Á‚ÄŽ¿–â‚È‚çŠm‚©‚ɂ킩‚è‚É‚­‚¢‚Ƃ͎v‚¤‚ªB

int main(int argc, char* argv[])
{
@lua_State* L = lua_open();
@luaL_openlibs(L);
@lua_State* thread = lua_newthread(L);

@luaL_loadstring(thread, "print('co1'); coroutine.yield(); print('co2');");

@lua_resume(thread, 0);

@//lua_settop(L, 0);

@lua_gc(L, LUA_GCCOLLECT, 0);

@lua_resume(thread, 0);

@lua_close(L);
@return 0;
}

lua_newthread‚ÅÏ‚ñ‚¾ƒXƒŒƒbƒh‚ð’ׂ·ˆ—‚Å‚ ‚élua_settop‚Ìs‚̃Rƒƒ“ƒg‚ð휂·‚邯
“ñ‰ñ–Ú‚Ìlua_resume‚ÌŽž“_‚Å—Ž‚¿‚邯‚±‚ë‚©‚çuGC‘ÎۂɂȂév‚ª³‰ð‚Ý‚½‚¢‚â‚ËB

130:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ
09/07/31 21:27:07
>>127 ‚ͪ–{“I‚ȂƂ±‚ë‚ð—‰ð‚µ‚ĂȂ¢‚悤‚¾BƒXƒ^ƒbƒN‚É‚ ‚é‚ñ‚¾‚©‚çpop ‚·‚ê‚΂¢‚¢‚ñ‚¾‚æB

‚Ü‚¸

lua_State *base = lua_newstate();
lua_State *ls = lua_newthread(base);

‚ÍA

lua_State *base = lua_newstate();
lua_newthread(base);
lua_State *ls = lua_tothread(base, -1)

‚ƈӖ¡“I‚ɂ͓™‰¿‚ËB

‚±‚±‚Å ls ‚ÍA‚ ‚­‚܂ŃXƒ^ƒbƒNã‚É‚ ‚éƒXƒŒƒbƒh‚Ìî•ñ‚ðA
’¼Úƒ|ƒCƒ“ƒ^‚Æ‚µ‚ÄŽQÆ‚µ‚Ă邾‚¯‚ÅA•Ê‚ÉƒŠƒtƒ@ƒŒƒ“ƒX‚ðŽ‚Á‚Ä‚é‚킯‚ł͂Ȃ¢
lua_newthread ‚ª‚±‚ê‚ð•Ô‚µ‚Ä‚é‚Ì‚ÍA’P‚ɕ֗˜‚¾‚©‚ç‚É‚·‚¬‚È‚¢

‚±‚Ìó‘Ô‚ÅAlua_pop(base,1) ‚·‚邱‚Æ‚ÅAƒXƒ^ƒbƒN‚Ì––”ö‚É‚ ‚é‚à‚Ì‚³‚Á‚«ì‚Á‚½ƒXƒŒƒbƒh‚ª
”jŠü‚³‚ê‚ĉð•ú‚³‚ê‚邱‚ƂɂȂéB‚±‚ê‚ŃXƒŒƒbƒh‚ª”jŠü‚³‚ꂽŒã‚É ls ‚ɃAƒNƒZƒX‚·‚邯A
ŽÀ‘Ì‚ª‚È‚­‚È‚Á‚Ä‚éƒ|ƒCƒ“ƒ^‚ÌŽQƂɂȂ邩‚çŒë“®ì‚ðˆø‚«‹N‚±‚·

ˆê”Ê“I‚É‚ÍAƒXƒŒƒbƒh‚ðƒXƒ^ƒbƒN‚ɂ‚ñ‚¾‚܂܂ɂµ‚Æ‚­‚̂͂킯‚í‚©‚ɂȂé‚Ì‚ÅA
>>126‚ÌŒ¾‚Á‚Ä‚é’Ê‚è‚ÉŠÇ—‚·‚邱‚ƂɂȂé


ŽŸƒy[ƒW
ÅVƒŒƒX•\ަ
ƒXƒŒƒbƒh‚ÌŒŸõ
—ÞŽ—ƒXƒŒˆê——
˜b‘è‚̃jƒ…[ƒX
‚¨‚Ü‚©‚¹ƒŠƒXƒg
¥ƒIƒvƒVƒ‡ƒ“‚ð•\ަ
‰É‚‚Ԃµ2ch

4274“ú‘O‚ÉXV/247 KB
’S“–:undef