KTUGFaq
KTUG FAQ
KTUG
´ë¹®
ã±â
¸ñ·Ï
¹Ù²ï±Û
Æ®·¢¹é ÇÎ º¸³»±â
·Î±×ÀÎ:
ºñ¹Ð¹øÈ£:
°¡ÀÔ
Your mode of life will be changed for the better because of new developments.
³»°¡¹Ù¶ó´ÂÆíÁý±â
Progress/2006-08
ShareWare
MathematicaFonts
Little Tree/Reading Te Xbook/2006-03
FrontPage
› LittleTree/ReadingTeXbook/2006-03
TrackBack Ping URL
:
Title
:
'''219ÂÊ''': ´ÙÀ½°ú °°Àº ¸ÅÅ©·Î Á¤ÀÇ°¡ ÀÖ´Ù°í ÇսôÙ. {{{ \def\foo{¾î¼±¸ Àú¼±¸ ... \bar ... Àú¼±¸ ¾î¼±¸} \}}} Áï ¸ÅÅ©·Î \fooÀÇ replacement text ¾È¿¡ ´Ù¸¥ ¸ÅÅ©·Î \bar°¡ ÀÖ´Â °æ¿ìÀÔ´Ï´Ù. ÀÌ °æ¿ì, ¾Æ¸¶µµ TeXÀº \foo ¸ÅÅ©·Î¸¦ Àü°³ÇÏ´Ù°¡ \bar ¸ÅÅ©·Î¸¦ ¸¸³ª´Â ¼ø°£ \bar ¸ÅÅ©·ÎÀÇ Àü°³¸¦ ¸¶Ä£ ´ÙÀ½, ³²¾Æ ÀÖ´Â \foo ¸ÅÅ©·Î¸¦ °è¼Ó Àü°³Çϱâ À§Çؼ \foo ¸ÅÅ©·ÎÀÇ replacement text ³»ÀÇ \bar ¸ÅÅ©·Î ´ÙÀ½ÀÇ ÅäÅ« À§Ä¡¸¦ ±â¾ïÇØ µÎ¾î¾ß ÇÒ °ÍÀÔ´Ï´Ù. ¸¸¾à¿¡ \bar ¸ÅÅ©·Î ¿ª½Ã ±×ÀÇ replacement text ¾È¿¡ ´Ù¸¥ ¸ÅÅ©·Î°¡ ÀÖ´Ù¸é, \foo ¿Í ¸¶Âù°¡Áö·Î ¸Þ¸ð¸®ÀÇ ¾îµò°¡¿¡ °è¼Ó Àü°³ÇÒ ÅäÅ«ÀÇ À§Ä¡¸¦ Àû¾îµÎ¾î¾ß ÇÒ °ÍÀÔ´Ï´Ù. ±×·±µ¥, ¹®Á¦´Â À§ÀÇ ¿¹¿¡¼ \bar°¡ \fooÀÎ °æ¿ìÀÔ´Ï´Ù. Áï, ¾Æ·¡¿Í °°Àº °æ¿ìÀε¥, {{{ \def\foo{¾î¼±¸ Àú¼±¸ ... \foo ... Àú¼±¸ ¾î¼±¸} \}}} ÀÌ·¯ÇÑ °æ¿ì¸¦ recursion À̶ó°í ÇÕ´Ï´Ù. ¿ì¸®¸»·Î 'Àç±Í'¶ó°í ÇÕ´Ï´Ù. °£´ÜÈ÷ ¸»Çؼ ¾î¶² °ÍÀ» Á¤ÀÇÇϴµ¥, ±× Á¤ÀÇ¿¡ ¾î¶² °Í Áï ÀÚ±â ÀÚ½ÅÀÌ ÀÌ¿ëµÈ´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î '''GNU''' ¸ðµÎ ¾Æ½ÃÁÒ? ÀÌ GNUÀÇ Á¤ÀÇ°¡ ''GNU is Not Unix''ÀÇ ¾àÀÚ¶ó°í ÇÕ´Ï´Ù. GNU¸¦ Á¤ÀÇÇϴµ¥ GNU°¡ »ç¿ëµÇ¾ú±â ¶§¹®¿¡ ÀÌ ¿ª½Ã recursion À̶ó°í ÇÒ ¼ö ÀÖ½À´Ï´Ù. (¿ÂÅë Àç±Í·Î ÀÌ·ç¾îÁø, Àç±Í°¡ »ý¸íÀÎ ÄÄÇ»ÅÍ ÇÁ·Î±×·¡¹Ö ¾ð¾î Lisp°ú ±× lispÀ¸·Î ¸ðµç °ÍÀ» ´Ù ÇÒ ¼ö ÀÖ´Â emacs, ±×¸®°í ÀÌ emacs¸¦ ¸¸µç ½ºÅ縸, ½ºÅ縸ÀÌ ±íÀÌ °ü¿©ÇÏ°í ÀÖ´Â GNU. ÀÌ ¸ðµÎ°¡ GNUÀÇ Àç±ÍÀû Á¤ÀǸ¦ °®°Ô µÈ °Í°ú ¹«°üÇÏÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù. :) Á¦ ÃßÃøÀÔ´Ï´Ù.) À§ÀÇ \foo¿Í °°Àº ¸ÅÅ©·Î¸¦ Àü°³ÇÒ¶§ ¸¶´Ù, TeXÀº replacement text ³»ÀÇ \foo ´ÙÀ½ÀÇ ÅäÅ« À§Ä¡¸¦ ±â¾ïÇϱ⠸޸𸮸¦ °è¼Ó »ç¿ëÇÒ °ÍÀÔ´Ï´Ù. ¾Æ¸¶µµ ÄÄÇ»ÅÍ ÇÁ·Î±×·¡¹Ö¿¡¼ ÀÚÁÖ »ç¿ëµÇ´Â ½ºÅÃÀ̶ó´Â °ÍÀ» ÀÌ¿ëÇÒ °Í°°Àºµ¥, \foo°¡ Àü°³µÉ¶§¸¶´Ù ½ºÅÿ¡´Â \fooÀÇ ´ÙÀ½ ÅäÅ« À§Ä¡¸¦ ±â¾ïÇϱâ À§Çؼ ±× ¸Þ¸ð¸® ¹øÁö°¡ ¸¹ÀÌ ½×ÀÏ °ÍÀÔ´Ï´Ù. ½ºÅÃÀÇ Àǹ̸¦ ¸ô¶óµµ ±×Àú ÄÄÇ»ÅÍÀÇ ¸Þ¸ð¸®¸¦ ¸¹ÀÌ »ç¿ëÇÑ´Ù°í ÀÌÇØÇÏ¸é µÉ °ÍÀÔ´Ï´Ù. ÄÄÇ»ÅÍÀÇ ¸Þ¸ð¸® ¶ÇÇÑ ÄÄÇ»ÅÍÀÇ ÀÚ¿øÀÌ°í, ÄÄÇ»ÅÍ°¡ ÀÚ¿øÀ» ¸¹ÀÌ »ç¿ëÇÑ´Ù´Â Àǹ̴ ½Ã°£°ú ÀÚ¿ø Ãø¸é¿¡¼ ±×¸® È¿À²ÀûÀÌÁö ¸øÇÕ´Ï´Ù. ÇÏÁö¸¸, °°Àº recursive ¸ÅÅ©·Î¶óµµ ´ÙÀ½°ú °°Àº °æ¿ì´Â ¾î¶³±î¿ä? {{{ \def\foo{¾î¼±¸ Àú¼±¸ ... \foo} \}}} À§ÀÇ Àç±Í¿Í ´Ù¸¥ Á¡Àº replacement text³»ÀÇ \foo ´ÙÀ½¿¡ ¾Æ¹«·± ÅäÅ«µµ ¾ø´Ù´Â Á¡ÀÔ´Ï´Ù. ÀÌ·¯ÇÑ Àç±ÍÀÇ ÀåÁ¡Àº TeXÀÌ \foo ´ÙÀ½ÀÇ À§Ä¡¸¦ ±â¾ïÇÒ ÇÊ¿ä°¡ ¾ø´Ù´Â Á¡ÀÔ´Ï´Ù. ¿Ö³ÄÇϸé \fooÀÇ Àü°³¸¦ ¸¶Ä¡°í ±× ´ÙÀ½À» °è¼Ó Àü°³Çϱâ À§Çؼ ±× À§Ä¡·Î ¿ÔÁö¸¸, Àü°³ÇÒ °ÍÀÌ ¾ø±â ¶§¹®ÀÔ´Ï´Ù. µû¶ó¼ ÀÌ°æ¿ì´Â ½ºÅÿ¡ ´ÙÀ½¿¡ Àü°³ÇÒ ÅäÅ«ÀÇ À§Ä¡¸¦ ±â¾ïÇÒ ÇÊ¿äµµ ¾ø½À´Ï´Ù.!!! ÀÌ·¯ÇÑ °æ¿ì ó·³ Àç±Í È£ÃâÀÌ ¸Ç ¸¶Áö¸·¿¡ ÀÖ´Ù°í Çؼ "tail recursion" À̶ó°í ÇÕ´Ï´Ù. ¿ì¸®¸»·Î '²¿¸®Àç±Í'¶ó°íµµ ÇÕ´Ï´Ù. ÀÌÁ¦ TeXbook¿¡ ÀÌ tail recursionÀ» ¼³¸íÇÏ¸é¼ ÇÏ´Â ¸», {{| ..., and the memory does not fill up during a long loop. ... |}} À» ÀÌÇØÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. ¶ÇÇÑ TeXbyTopic À̶ó´Â Ã¥ÀÇ 11.8.3 Tail recursion¿¡ ³ª¿ÍÀÖ´Â ´ÙÀ½°ú °°Àº ¸»µµ ½±°Ô ÀÌÇØÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. {{| In general this 'stack build-up' is a necessary evil, but it can be prevented if the nested macro call is the last token in the replacement text of the original macro. After the last token no further tokens need to be considered, so one might as well clear the top item from the input stack before a new one is put there. This is what TeX does. |}} ¾î·Æ°Ô¸¸ º¸ÀÌ´ø TeXbyTopic À̶ó´Â Ã¥ÀÌ ¸¸¸¸ÇØ º¸ÀÔ´Ï´Ù. ½Å³³´Ï´Ù. :) ÀÌÁ¦ ¾ÆÁÖ Àλó±íÀº ¸ÅÅ©·Î '''\loop ... \repeat'''¸¦ ÀÌÇØÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. {{{#!vim tex \def\loop#1\repeat{\def\body{#1}\iterate} \def\iterate{\body\let\next=\iterate\else\let\next=\relax\fi\next} \}}} TeXÀ» °øºÎÇÏ¸é¼ Àú ¸ÅÅ©·Î¸¦ º¸°í ÀÌÇØÇÏ´Â ¼ø°£Àº ¾ÆÁÖ °¨µ¿ÀûÀ̾ú½À´Ï´Ù. ¼öÇÐÀÚµéÀÌ ÈçÈ÷ ¸»ÇÏ´Â °Í ó·³ "¾Æ¸§´ä½À´Ï´Ù." ¸¶Áö¸·À¸·Î Àú~~~ ¾Æ·¡¿¡¼ ¾ð±ÞÇÑ KnuthÀÇ ¾î·ÏÀ» ¸¶Áö¸·À¸·Î À̹ø µ¶ÈÄ°¨À» ¸¶Ä¡°Ú½À´Ï´Ù. :) À§ÀÇ ¼³¸í¿¡¼ ó·³ recursionÀº ¸Å¿ì ¿¤·¹°½ºÇÏ°í °£´ÜÇÏÁö¸¸ ÄÄÇ»ÅÍ ÀÔÀå¿¡¼ º¸¸é ±×¸® È¿À²ÀûÀÌÁö ¸øÇÕ´Ï´Ù. ½ºÅÃÀ̶ó´Â ¸Þ¸ð¸®¸¦ »ç¿ëÇؾߵǰí, À§Ä¡¸¦ ÀúÀåÇؾߵǰí... ±×¸®°í ´ë°³ Àç±ÍÀûÀ¸·Î Á¤ÀÇµÈ ¹®Á¦´Â ¹Ýº¹Àû(iterate)À¸·Î ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÏÁö¸¸, ÇÁ·Î±×·¡¹ÖÀ» ÇÏ´Ùº¸¸é °¡²û recursionÀ» »ç¿ëÇÕ´Ï´Ù. ±× °£´Ü ¸í·áÇÔ¿¡ ¹ÝÇؼ ÀÌÁö¿ä. °°Àº ¸Æ¶ôÀ¸·Î Knuthµµ ¸»ÇßÁö¿ä? {{| "''... aesthetics are more important than efficiency''" |}}
mb encoded:
º¸±â
ã±â
ÂÊ Áö¿ì±â
ºñ½ÁÇÑ ÂÊ
À̸§¹Ù²Ù±â
Tour
Å°¿öµå ´õÇϱâ
¿Ã¸° ÆÄÀÏ
last modified 2006-06-06 22:54:57
Processing time 0.0262 sec