이 글은 Pharo와 Smalltalk 환경의 순수 객체 지향적 특성과 즉각적인 피드백의 장점을 강조합니다. 특히 AI 프로그래밍 시대에 맞춰, 에이전트가 실행 중인 프로그램을 직접 조작하는 개발 방식의 가능성을 탐색하고 있습니다. 이를 위해 Glamorous Toolkit이나 bb 같은 최신 도구들을 활용한 에이전트 보조 맞춤 UI 개발 경험을 공유했습니다.
핵심 포인트
Pharo/Smalltalk는 순수 OOP와 이미지 기반 작업 흐름으로 배포가 용이하다.
AI 발전 덕분에 특정 프로그래밍 언어에 대한 의존도가 낮아지고 있다.
에이전트가 실행 중인 프로그램을 직접 조작하는 것이 핵심 개발 트렌드이다.
Glamorous Toolkit과 bb는 에이전트 통합을 위한 유용한 도구로 언급되었다.
AI 자동 생성 콘텐츠
본 콘텐츠는 RSS: GeekNews (한국어)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
Pharo 사용자를 적어도 5명 알고 있고, 그중 한 명은 관련 책도 썼음. 나머지 4명을 위한 책인 셈임.
대학 연구 그룹 소속이었는데 학생들에게도 Pharo를 쓰게 했음. 장점은 이해하지만 솔직히 CrossFit이나 Vim처럼 느껴짐. 소수의 열성 사용자가 다른 모든 사람에게 얼마나 멋진지 설득하려 애쓰는 모습임. Oscar와 동료들에게는 미안함.
이 댓글이 무슨 가치를 더하는지 모르겠음. 상대를 얼마나 싫어하든 다른 사람의 작업을 깎아내리는 태도는 좋아하지 않음. 최대한 호의적으로 해석하면 비꼬는 농담이었던 걸까?
늘 프로그래밍 언어를 좋아해서 어셈블리, C/C++, Java, 여러 Lisp, Prolog, OCaml/F#/Haskell 등을 써왔고 Smalltalk도 좋아함. Tektronix ST와 Smalltalk-V는 써봤지만 Pharo는 써보지 않았음. AI 프로그래밍 덕분에 어떤 언어를 쓰는지 훨씬 덜 신경 쓰게 됨. 조금 아쉽기도 하지만 대체로 해방감을 줌. 특정 문제를 풀 때 사람이 쓰기 쉬운 언어가 무엇인지 고민하거나, 실용적으로 더 적합한 언어 대신 개인적으로 아끼는 언어를 고집할 필요가 줄어듦.
언젠가 프로그래밍의 즐거움을 다시 찾길 바람! 컴퓨터가 더 잘한다고 인간이 체스를 그만둔 것은 아니니, 취미로 하는 프로그래밍에도 여전히 의미가 있음.
작은 웹 프로젝트에서 Smalltalk를 실제 서비스에 썼던 때가 좋은 추억으로 남아 있음. Squeak에 Seaside 프레임워크를 썼던 것 같은데, 이미지 기반 작업 흐름 덕분에 배포가 놀라울 만큼 쉬웠음.
나도 Python이라는 언어로 프로그래밍하는 것을 정말 좋아함. 하지만 이제 직접 코드를 거의 쓰지 않으니 빌드와 배포의 불편함이 더 두드러짐. 인터넷에 연결되지 않은 장비도 있어서 uvx run조차 골칫거리가 됨.
Pharo를 조금 만져본 적은 있지만, HN 첫 화면에서 프로젝트나 새 버전을 보고도 정체를 전혀 알 수 없는 일이 꽤 잦음. 네트워크 라이브러리인지, LLM 래퍼인지, 밴드인지, 프로그래밍 언어인지조차 구분하기 어려움.
이 페이지에는 “Pharo는 단순함과 즉각적인 피드백에 초점을 맞춘 순수 객체 지향 프로그래밍 언어이자 강력한 환경”이라는 소개가 있음. 어떤 프로젝트든 이런 한 줄 소개가 있으면 정말 반가움.
Pharo를 비롯한 Smalltalk의 에이전트 보조 개발은 현재 어느 정도까지 왔는지 궁금함. 에이전트가 실행 중인 프로그램을 직접 조작할 수 있으니 직관적으로는 환상적인 조합 같지만, Smalltalk 학습 데이터는 아주 적을 것 같기도 함.
Emacs처럼 작업 중인 인터페이스를 즉석에서 바꾸는 에이전트 보조 맞춤 UI 개발을 위해 Glamorous Toolkit을 탐색해봤음. 꽤 좋은 경험이었고, 내장 데이터 탐색 기능은 최고 수준임.
그러다 YouTube에서 Glamorous Toolkit 영상을 본 뒤 Geoffrey Litt의 동적 문서 강연을 추천받았고, 강연 마지막에 bb를 알게 됨. bb는 GT보다 에이전트 통합이 훨씬 뛰어남. 앞서 말했듯 에이전트를 쓰면 프로그래밍 언어의 중요성이 줄어듦.
Glamorous Toolkit: https://gtoolkit.com/.
강연:
실행 중인 프로그램을 직접 조작하는 기능은 에이전트 주도 개발에 엄청난 장점일 텐데, 아쉽게도 이를 활용하는 사람이 드문 듯함.
잘 작동함. 주로 Pi와 MCP를 함께 사용함.
온통 AI 이야기뿐인 와중에 이런 기술이 계속 발전하고 새 버전도 나오는 걸 보면 비현실적인 느낌이 듦.
그런데 그 발전이 실질적인 의미가 있을까? Alan Kay는 개인적인 영웅이고 Smalltalk의 미학도 좋아함. 한때 이런 시스템이 품었던 꿈을 실현하지 못한 것은 프로그래밍 환경의 진화에서 정말 아까운 기회 상실임. 하지만 지금 시점에서는 멋진 취미 이상의 의미가 있을까?
웹사이트에서 Pharo가 Smalltalk라는 사실을 거의 언급하지 않는 것이 흥미로움. 소개 페이지에서 잠깐 한 번 언급하는 정도임.
브라우저용 DOM/SVG 프런트엔드를 만들지 않는 이유가 뭘까? Canvas 말고 DOM/SVG를 뜻함. 새롭고 재미있는 대화형 웹사이트의 엔진으로 쓸 수 있을 것 같음!