Cherri: 애플 단축어(Shortcuts)로 컴파일되는 새로운 프로그래밍 언어

Cherri는 대규모 애플 단축어(Shortcuts) 프로젝트의 효율적인 개발과 유지보수를 위해 설계된 새로운 프로그래밍 언어로, 작성된 코드를 실행 가능한 단축어 파일로 직접 컴파일합니다. CLI, VSCode 확장 프로그램, macOS 전용 IDE를 지원하며 Homebrew(electrikmilk/cherri)나 Nix를 통해 설치하여 복잡한 자동화 워크플로우를 텍스트 기반으로 구축할 수 있습니다.

AI 요약

Cherri는 애플의 단축어 시스템이 가진 GUI 기반 개발의 한계를 극복하고, 텍스트 코딩을 통해 대규모 프로젝트를 관리하기 위해 탄생한 언어입니다. 기존 단축어 앱에서 복잡해지기 쉬운 논리 구조를 프로그래밍 언어의 문법으로 작성하면, 이를 유효한 단축어 액션으로 1:1 변환하여 컴파일합니다. 특히 '매직 변수' 대신 상수를 사용하고 함수(Function) 정의를 지원하여 코드의 재사용성을 높였으며, 대규모 프로젝트를 위해 여러 파일을 포함(Include)하는 기능을 갖추고 있습니다. 또한, Git 저장소를 기반으로 한 원격 패키지 매니저를 내장하여 외부 라이브러리 업데이트를 자동화하는 등 현대적인 개발 환경을 단축어 제작에 도입했습니다.

핵심 인사이트

  • 멀티 플랫폼 개발 도구: CLI 도구뿐만 아니라 VSCode 확장 프로그램 및 전용 macOS IDE를 제공하여 데스크탑 기반의 전문적인 개발 환경 구축 가능.
  • 강력한 설치 및 배포 모델: Homebrew(brew install electrikmilk/cherri/cherri)와 Nix 패키지 매니저를 통해 설치를 지원하며, 원격 Git 레포지토리 기반의 패키지 관리 시스템을 내장함.
  • 서명 시스템 지원: macOS 환경에서의 자체 서명을 기본으로 하며, 필요 시 HubSign이나 scaxyz/shortcut-signing-server를 이용한 외부 서버 서명 방식 제공.

주요 디테일

  • 타입 시스템 및 추론: 타입 체크, Enums, Optional 값, 기본값 설정 등을 지원하여 런타임 오류를 사전에 방지하는 엄격한 타입 시스템 채택.
  • 코드 최적화: 실행 시 메모리 사용량을 줄이고 단축어 파일 크기를 최소화하도록 최적화된 컴파일러 엔진 탑재.
  • 편의 기능 확장: --import= 옵션을 통해 기존 iCloud 단축어 링크를 Cherri 코드로 역변환할 수 있으며, Base64 파일 임베딩과 메뉴 구성을 위한 VCard 자동 생성 기능 포함.
  • 디버깅 최적화: 단축어 액션과 1:1 매칭되는 구조를 유지하며, --debug(-d) 옵션을 통해 스택 추적(Stack traces) 및 상세 디버그 정보 확인 가능.
  • Raw Action 지원: 언어에서 기본 제공하지 않는 액션의 경우 식별자와 파라미터를 직접 입력하여 제어할 수 있는 유연성 확보.

향후 전망

  • 복잡한 자동화 가속화: GUI의 한계로 구현이 어려웠던 고차원적 애플 단축어 워크플로우가 오픈소스 커뮤니티를 중심으로 활발히 공유될 것으로 예상됩니다.
  • 개발자 생태계 확장: VSCode 및 전용 IDE의 확산으로 기존의 일반 사용자 중심 단축어 시장에 전문 개발자들이 대거 유입될 가능성이 높습니다.
Share

이것도 읽어보세요

댓글

이 소식에 대한 의견을 자유롭게 남겨주세요.

댓글 (0)

불러오는 중...