명령줄 interface는 Programmable Interface?
명령줄(Command Line)과 GUI에 대한 이야기는 그간 참 많았었습니다.
이곳은 아무래도 UNIX 호환을 다루는 곳이다보니 다들 명령줄 찬사를 많이 했었고요.
여러가지 책을 읽어봐도 비슷한 이야기는 참 많은데 대게 이렇습니다.
"명령줄의 자유로움을 맛보게 되면 그 자유로움을 포기하고 싶어지지 않는다."
저는 솔직히 낚시성이 좀 다분하다고 봅니다... -_-.
다양한 program을 조합적으로 pipe, redirection을 활용해서 사용할 수 있고,
UNIX의 간단한 program들은 이를 지원하며, 또한 직교적으로 제작되었다라고들 이야기합니다.
물론 이로인해 전문가에게는 좋지만 초보자들에게는 어렵다라는 말도 빼놓지 않고 나오곤 합니다.(이곳 분들 제외... ^_^)
그런데 명령줄의 장점이라는 그것을 하나의 단어로 표현한 경우는 제 기억으로는 못봤습니다.
늘 그렇듯 장황한 찬양이 많죠.(대게는 장황할 것 같이 미사여구로 시작하지만 의외로 짧았던 듯...)
그러다 한가지 단어가 떠올랐는데, 예. 그렇습니다. 제목에 붙인 Programmable Interface(이하 PI)입니다.
Programmable이라는 단어는 몇년 전 graphic card 제조사들이 shader를 hardware로 지원하면서
이름붙였던 Programmabe Shader 에서 영감을 얻었습니다. 저는 게임을 제작해 본 적은 없지만요.
최근 몇가지 글과 책을 읽으면서 결국 programming이라는 것은 새로운 언어를 만드는 것이다라는 글을 봤습니다.
이미 옛날부터 여기에 대해 다들 통찰을 하셨던 것 같은데...
뭐랄까, 언어라고 하면 명령줄을 헤어날 수 없을 것 같은 느낌이 들더군요.
앞으로 음성인식이 획기적으로 진보하지 않는 이상말이죠.
저는 명령줄이 PI를 강력하게 지원하지만 꼭 명령줄만이
PI를 지원하는 것은 아니라고 생각합니다.
이러모로 생각했는데 하여간 그래서 명령줄의 장점을 표현하는 적당한 한 단어는
역시 programmable이 아닐까 합니다.
이런 단어(PI)가 예전에도 있었나요?
흠... 하여간 제 생각에는 interface 이야기를 하면서 명령줄과 GUI를 대립해서 보지 않고
그 interface가 얼마나 PI를 지원하는가로 전문성과 개별화의 지원 정도를 이야기해보면 좋겠다는 생각이 들었습니다.
앞으로는 어떻게 될지 정말 궁금하군요.
한 두가지 혁신적이라고 불리는 연구동영상을 이곳에서 본 적이 있지만 별로 마음에 끌리는 것은 없었던 듯...
저는 상상력이 빈곤해서 음성인식 외에는 떠오르는 것이 없군요.
ps. 그런데 출력장치에서 무선 speaker는 없나요?... 못 찾겠네요. 정말 computer 뒤쪽 보면 마음이 어지러워집니다.