모조(Mojo)는 미국의 소프트웨어 기업인 모듈러(Modular Inc)가 개발한 시스템 프로그래밍 언어이다. 모조는 파이썬(Python)의 사용 편의성과 C++, 러스트(Rust) 등 저수준 언어의 고성능을 결합하는 것을 목표로 설계되었다. 특히 인공지능(AI) 및 기계학습 분야의 고성능 컴퓨팅 요구를 염두에 두고 개발되었다.
개발 배경 및 역사
모조는 스위프트(Swift) 언어와 LLVM 컴파일러의 원래 설계자인 크리스 라트너(Chris Lattner)와 전 구글 직원인 팀 데이비스(Tim Davis)가 공동 설립한 모듈러 사에서 창안하였다. 개발은 2022년경부터 진행된 것으로 공개 변경 기록을 통해 확인된다. 2023년 5월 최초의 공개 테스트 버전이 호스팅된 플레이그라운드를 통해 온라인으로 제공되었고, 2023년 9월 리눅스용, 2023년 10월 macOS용 로컬 다운로드가 가능해졌다. 2026년 5월 모조 1.0.0 베타가 공개되었고, 2026년 8월 모조 1.0.0이 정식 출시되면서 컴파일러가 오픈소스로 전환되었다.
기술적 특징
모조는 컴파일 백엔드로 LLVM과 함께 MLIR(Multi-Level Intermediate Representation) 컴파일러 프레임워크를 사용한다. 이는 CPU뿐만 아니라 GPU, TPU, ASIC 등 다양한 가속기 하드웨어를 대상으로 한 코드 생성에 유리한 구조로 평가된다. 파이썬과 유사한 구문을 채택하면서도 추론된 정적 타이핑(inferred static typing)을 지원하며, CPython 런타임을 통해 파이썬 모듈을 임포트하여 사용하는 것이 가능하다.
러스트의 영향을 받은 대여 검사기(borrow checker) 개념을 도입하여 메모리 안전성을 확보하고자 하였으며, 함수 인자는 기본적으로 불변 참조로 전달된다. 파이썬의 클래스(class) 체계 대신 메모리 효율적인 구조체(struct) 타입을 제공하며, 메서드, 필드, 연산자 오버로딩, 데코레이터를 지원한다.
모조는 파이썬 3와 완전한 소스 호환이 되지는 않는다. 원래 파이썬의 상위 집합(superset)이 되는 것을 목표로 하였으나, 이 목표는 2026년 3월 시점에서 보류 또는 무기한 연기된 상태이다. 모조 파일의 확장자는 .mojo 또는 .🔥이다.
라이선스
모조 언어 컴파일러와 표준 라이브러리는 아파치 2.0(Apache 2.0) 라이선스 하에 오픈소스로 공개되어 있으며, LLVM 예외 조항이 적용된다.
평가 및 현황
2025년 미국 오크리지 국립연구소(Oak Ridge National Laboratory) 연구자들이 SC25 WACCPD 워크숍에서 발표한 연구에 따르면, 모조의 GPU 커널은 메모리 바운드 작업에서 Nvidia 및 AMD 가속기 환경의 CUDA 및 HIP와 전반적으로 경쟁력 있는 성능을 보여주었다고 보고되었다. 다만 원자 연산(atomic operations) 및 AMD GPU에서의 일부 연산 집약적 작업에서는 성능 격차가 있다는 점이 지적되었다.
모조는 여전히 발전 중인 언어로, 언어 사양 및 기능이 향후 변경될 가능성이 있다.