์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ


Lisp? Common lisp? Clojure?

  • Lisp๋Š” ์กด ๋งค์นด์‹œ๊ฐ€ ๊ฐœ๋ฐœํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ด๋ฉฐ, ์‹ฌ๋ณผ๊ณผ ๊ด„ํ˜ธ๋ฅผ ์ด์šฉํ•œ ์ „์œ„ํ‘œ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋Š” ํŠน์ง•์„ ๊ฐ–๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ดˆ๊ธฐ Lisp๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํŒŒ์ƒ ์–ธ์–ด๋“ค์ด ๋‚˜์™”์œผ๋ฉฐ, Common Lisp, Clojure, Racket๋„ ๊ทธ ํŒŒ์ƒ ์–ธ์–ด ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

Common Lisp, Racket, Clojure... ๋ญ˜ ๋ฐฐ์›Œ์•ผ ํ•  ์ง€ ๋ชจ๋ฅด๊ฒ ์–ด์š”.

Common LispC์™€ ๊ทผ์ ‘ํ•œ ์‹คํ–‰์†๋„๋ฅผ ์›ํ•˜์‹œ๋Š” ๋ถ„๋“ค๊ป˜ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.
Racket๋ช…์ € SICP์™€ ํ•จ๊ป˜ ์ˆœ์ˆ˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ๋ฐฐ์šฐ๊ณ  ์‹ถ์œผ์‹  ๋ถ„๊ป˜ ์ถ”์ฒœ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
Clojure์ข€ ๋” ํ˜„๋Œ€์ ์ธ api๋””์ž์ธ, Java/Scala์™€ ๊ฐ™์ด JVM์œ„์— ๋Œ์•„๊ฐ€๋Š” ์–ธ์–ด๋ฅผ ๋ฐฐ์› ๋˜ ๋ถ„๋“ค์—๊ฒŒ ์ถ”์ฒœ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

Lisp-1, Lisp-2 ?

  • ํ•จ์ˆ˜์™€ ๋ฐ์ดํ„ฐ ๋ณ€์ˆ˜์˜ ์ด๋ฆ„ ๊ณต๊ฐ„์„ ๋ถ„๋ฆฌํ–ˆ๋Š”์ง€ ์•ˆํ–ˆ๋Š”์ง€๋ฅผ ํŠน์ง•์œผ๋กœ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
์ด๋ฆ„ ๊ณต๊ฐ„ ๋ถ„๋ฆฌex
Lisp-1๋ถ„๋ฆฌ๋ฅผ ์•ˆํ•จ.Clojure
Lisp-2๋ถ„๋ฆฌ๋ฅผ ํ•จ.Common Lisp

Lisp์™€ AI๊ด€๊ณ„?

  • ์˜›๋‚  AI์— ๋Œ€ํ•œ ์—ฐ๊ตฌ๊ฐ€ ํ™œ๋ฐœํ• ๋•Œ, ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ๋ณด๋‹ค ์œ ์—ฐํ•œ Lisp๊ฐ€ ๋ณดํŽธ์ ์œผ๋กœ ์“ฐ์˜€์Šต๋‹ˆ๋‹ค.
  • AI์—ฐ๊ตฌ๊ฐ€ ํ™œ๋ฐœํ•  ๋•Œ์—๋Š”, lisp๋งŒ์„ ์œ„ํ•œ ์ปดํ“จํ„ฐ๋ฅผ ๋งŒ๋“ค ์ •๋„๋กœ Lisp์—ญ์‹œ ํ™œ๋ฐœํžˆ ๋ฐœ์ „ํ•˜์˜€์œผ๋‚˜,
    • AI ๋ฌธ์ œ ์ž์ฒด๊ฐ€ ์–ด๋ ค์šด ๊ฒƒ์ด๋ฏ€๋กœ ๋งŽ์€ AI ๊ด€๋ จ ํšŒ์‚ฌ๋“ค์ด ์‹คํŒจํ•˜์˜€์œผ๋ฉฐ, Lisp์—ญ์‹œ ๋ชฐ๋ฝํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.