클로드 코드로 프로그래밍 언어 만들기: 커틀릿 실험

AI 생성 코드로 컷릿 구축하기
안쿠르 세티는 1월과 2월에 걸쳐 4주 동안 클로드 코드를 사용해 '컷릿'이라는 새로운 프로그래밍 언어를 만들었습니다. AI가 보일러플레이트나 특정 변경을 돕는 일반적인 LLM 지원 프로그래밍과 달리, 세티는 클로드가 모든 코드 라인을 생성하게 했으며 자신은 직접 코드를 읽지 않았습니다. 대신 그는 정확성을 보장하기 위한 가드레일 구축과 테스트에 집중했습니다.
결과적으로 탄생한 언어는 현재 존재하며, macOS와 Linux 모두에서 빌드 및 실행되며 실제 프로그램을 실행할 수 있습니다. 버그가 있을 수 있지만, 세티는 아마도 다른 4주 된 프로그래밍 언어보다 나쁘지 않을 것이라고 언급합니다.
컷릿 언어 기능
컷릿은 다음과 같은 주요 기능을 가진 동적 언어입니다:
my키워드로 변수 선언:my cities = ["Tokyo", "Paris", "New York", "London", "Sydney"]- 변수 이름에 대시 포함 가능 (Raku와 동일한 구문 규칙)
- 단일 숫자 타입: double
- 배열과 문자열은 동적 언어에서 예상대로 작동
- 벡터화 연산을 위한
@메타 연산자:temps-c @* 1.8은 각 배열 요소를 곱함 - 배열을 맵으로 압축하는
@:연산자:cities @: temps-f는{Tokyo: 82.4, Paris: 71.6, ...}생성 - 출력을 위한
say()함수,nothing반환 (컷릿의 null) - 필터링을 위한 부울 배열 인덱싱:
cities[temps-f @> 75]는[Tokyo, New York]반환 ++연산자는 문자열과 배열을 연결str()내장 함수는 문자열로 변환- 축소 연산을 위한 접두사
@:@+ temps-c는 모든 온도 합산 len()내장 함수는 배열 길이 찾기fn으로 함수 선언:fn max(a, b) is ... if a > b then a else b ... end- 함수와 조건문을 포함한 모든 것이 표현식
- 사용자 정의 함수는
@연산자와 함께 작동:@max temps-c는 사용자 정의 max 함수로 축소
추가 기능으로는 루프, 객체, 프로토타입 상속, 믹스인, 표시-청소 가비지 컬렉터, 친근한 REPL이 포함됩니다. 파일 I/O와 오류 처리는 아직 구현되지 않았습니다.
개발 접근 방식
세티는 인터프리터를 소스에서 빌드했으며 /path/to/cutlet repl을 사용해 REPL에 진입했습니다. 소스 코드는 GitHub에서 빌드 지침과 예제 프로그램과 함께 이용 가능합니다. 그는 2021년 GitHub Copilot 출시 이후로 LLM 지원 프로그래밍을 사용해 왔지만, 이전에는 AI를 보일러플레이트와 특정 변경에만 제한했습니다.
이 실험은 개발자가 상위 수준 구조, 테스트, 가드레일에 집중하는 동안 AI가 모든 코드를 생성하도록 전환하는 것을 의미합니다. 이 접근 방식은 기능적인 프로그래밍 언어를 만드는 데 놀랍도록 효과적임이 입증되었습니다.
📖 Read the full source: HN AI Agents
👀 See Also

테라리움: 타임머신 되감기가 가능한 에이전트 환경을 위한 오픈소스 샌드박스
모든 VPS나 클라우드에서 여러 AI 에이전트를 안전하게 실행할 수 있는 다목적 샌드박스 솔루션입니다. 격리된 월드, 리버스 프록시 라우팅, GUI, 그리고 컨테이너 상태를 되감을 수 있는 타임머신 기능을 제공합니다.

CostHawk, Claude Code, Codex 및 Cursor 토큰 소비에 대한 공개 리더보드 출시
CostHawk의 리더보드는 프롬프트나 코드를 저장하지 않고 총 토큰 소비량을 기준으로 Claude Code, OpenAI Codex, Cursor의 공개 사용자를 순위화하며, 사용 횟수, 모델 및 동기화 타임스탬프를 추적합니다.

프롬프트포레스트: 불확실성을 활용한 로컬 퍼스트 프롬프트 인젝션 탐지
PromptForest는 프롬프트 인젝션과 탈옥을 감지하고, 평균 요청 지연 시간을 증가시키지 않으면서 확실성을 평가하여 분류하는 경량의 로컬-퍼스트 라이브러리입니다.

소울 MCP 서버, 로컬 LLM에 지속적 메모리와 안전성 추가
Soul은 로컬 LLM을 위한 오픈소스 MCP 서버로, n2_boot(시작 시)와 n2_work_end(종료 시) 두 가지 명령어를 통해 세션 간 지속적인 메모리를 제공합니다. Ark 안전 기능을 포함하여 rm -rf나 DROP DATABASE 같은 위험한 명령어를 토큰 비용 없이 차단하며, 클라우드 저장소 설정도 지원합니다.