¸ÅÅ©·Î¸¦ È®Àå½ÃÄÑ ÁÖ´Â ¿ÜºÎÇÊÅ͸¦ »ç¿ëÇÏ´Â ´ë½Å »ç¿ëÇÒ ¼ö ÀÖ´Â ¶Ç´Ù¸¥ ¹æ¹ýÀÌ Àִµ¥, ±×°ÍÀº ¿©·¯ºÐÀÇ ÇÁ·Î±×·¥ÀÇ ÀϺΠȤÀº Àüü¸¦ ¸¸µé¾îÁÖ´Â ÇÁ·Î±×·¥À» Â¥´Â °ÍÀÌ´Ù.
¹«½¼ ¸»Àΰí ÇÏ´Ï, ¿¹¸¦ µé¾î ¼³¸íÇØ º¸¸é, ¿©·¯ºÐÀº ¼Ò½º Äڵ带 Ãâ·ÂÇØÁÖ´Â ÇÁ·Î±×·¥À» »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. ±×·¯ÇÑ ÇÁ·Î±×·¥ÀÇ ¿¹¸¦ µéÀÚ¸é,
»çÀÎ(sine)À̳ª ÄÚ»çÀÎ(cosine) µîÀÇ ÇÔ¼ö°ªÀÇ Å×À̺íÀ» ã¾Æ¼ ÀûÀýÇÑ °ªÀ» »ý¼º½ÃÄÑ ÁÖ´Â ÇÁ·Î±×·¥
ÀÌÁøÆÄÀÏ¿¡¼ ¼Ò½º-Æû(source-form) À» ÃßÃâÇÏ´Â ÇÁ·Î±×·¥
¿©·¯ºÐÀÇ ºñÆ®¸ÊÀ» ÄÄÆÄÀÏÇØ¼ °í¼Ó Ãâ·Â ·çƾÀ» ¸¸µé¾îÁÖ´Â ÇÁ·Î±×·¥
ÃʱâÈ¿Í Á¾·á Äڵ带 ¸¸µé¾îÁְųª, ¹®¼¸¦ ÃßÃâÇϰųª, ÇÏ´Â ÇÁ·Î±×·¥
to extract documentation, initialization/finalization code, description tables, as well as normal code from the same source files,
¾î¶² ÀÏÀ» ÇÏ´Â ½©À̳ª ÆÞ Äڵ带 ¾î¼Àºí¸® ÄÚµå·Î ¹Ù²Ù¾î ÁÖ´Â ÇÁ·Î±×·¥
ÇѰ÷¿¡¼ Á¤ÀÇµÈ µ¥ÀÌÅ͸¦ ¿©·¯°¡ÁöÀÇ »óÈ£ ÂüÁ¶ÇÏ´Â Å×À̺í°ú ÄÚµå ûũµé·Î »ý¼º½ÃÄÑ ÁÖ´Â ÇÁ·Î±×·¥
µîÀÌ ÀÖÀ» ¼ö ÀÖ´Ù. (¿ªÀÚÀÇ »ý°¢À¸·Î´Â yacc ³ª lex µî°ú °°Àº ÇÁ·Î±×·¥À» À̾߱âÇÏ´Â °Í °°´Ù : ¿ªÀÚÁÖ : yacc ³ª lex ¸¦ ÀÌ¿ëÇØ¼ °£´ÜÇÑ ÄÄÆÄÀÏ·¯³ª ¾î¼Àºí·¯¸¦ ¸¸µé ¼ö ÀÖ´Ù. »ç¿ëÇÒ ·©±ÍÁöÀÇ ¹®¹ýÀ» ÀÔ·ÂÇϸé, ÇØ´çÇÏ´Â ÄÄÆÄÀÏ·¯°¡ »ý¼ºµÈ´Ù.)
±×·¯ÇÑ ÇÁ·Î±×·¥µéÀ» Çѹø °í·ÁÇØ º¸¶ó!
GCC, SML/NJ, Objective CALM, MIT-Scheme, CMUCL µî°ú °°Àº ÄÄÆÄÀÏ·¯µéÀº °íÀ¯ÀÇ ¾î¼Àºí·¯ ¹é¿£µå¸¦ °®Ãß°í ÀÖ´Ù. ¿©·¯ºÐÀº ÀÌ·¯ÇÑ ¹é¿£µå¸¦ ÀÌ¿ëÇØ¼ ¾î¼Àºí¸® Äڵ带 ¾òÀ» ¼ö ÀÖ´Ù. ¿©·¯ºÐÀÌ »ç¿ëÇÏ´Â ¾ð¾î¸¦ ÀÌ¿ëÇØ¼ ¸¸µç ÇÁ·Î±×·¥À» ¾Õ¼ ¾ð±ÞÇÑ ÄÄÆÄÀÏ·¯·Î ÄÄÆÄÀÏÇØ¼ ÈǸ¢ÇÑ ¾î¼Àºí¸® Äڵ带 ¾òÀ» ¼ö ÀÖ°í, ±× Äڵ带 ¿©·¯ºÐÀÌ ´õ ³´°Ô ¼öÁ¤Çؼ ¸¶À½¿¡ µå´Â ¾î¼Àºí¸® Äڵ带 ¾òÀ» ¼ö ÀÖ´Ù.
ÇÁ·Î±×·¡¹Ö ¾ð¾î¶ó´Â ¾ÆÀÌÄÜÀ» »ç¿ëÇØ¼ ±â°è¾î¸¦ ´Ù·ç´Â ŸŶÀÇ °³¹ß°ú °ü·ÃµÈ ÇÁ·ÎÁ§Æ®°¡ ÀÖ´Ù(½ÇÇèÀûÀÎ ML ¹öÁ¯µµ Á¦°øÇÑ´Ù) http://www.eecs.harvard.edu/~nr/toolkit/À» Çѹø µÑ·¯º¸¶ó
Free Reflective Computing System À» À§ÇÑ TUNES Project(http://www.tunes.org) ¿¡¼µµ ÀÚüÀûÀÎ ¾î¼Àºí·¯¸¦ Scheme ¾ð¾îÀÇ È®ÀåÀ¸·Î °³¹ßÇϰí ÀÖ´Ù. ¾ÆÁ÷ Á¦´ë·Î ½ÇÇàµÇ´Â °ÍÀº ¾Æ´ÏÁö¸¸ ¸»ÀÌ´Ù.
tunes ÇÁ·ÎÁ§Æ®¿¡¼ °³¹ßÁßÀÎ ¾î¼Àºí·¯´Â abstract syntax Æ®¸®¸¦ ´Ù·ç´Âµ¥, ±×·¸°Ô ÇÏ¿©, µð½º¾î¼Àºí·¯·Îµµ, ¾î¼Àºí·¯ ¹®¹ý ¹ø¿ª±â·Îµµ, ÄÄÆÄÀÏ·¯³ª ¾î¼Àºí·¯µéÀÇ °øÅëÀûÀÎ ¹é¿£µå·Îµµ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï Çϰí ÀÖ´Ù. ¶ÇÇÑ, Scheme À̶ó´Â ¾ð¾îÀÇ °·ÂÇÔÀº ¸ÅÅ©·Î ÇÁ·Î¼¼½ÌÀ̳ª ¸ÞŸ ÇÁ·Î±×·¡¹Öó·³ µµÀüÇÒ ¸¸ÇÑ ºÐ¾ßÀÌ´Ù.(?)
The assembler manipulates abstract syntax trees, so it could equally serve as the basis for a assembly syntax translator, a disassembler, a common assembler/compiler back-end, etc. Also, the full power of a real language, Scheme, make it unchallenged as for macroprocessing/metaprogramming.