IronRuby는 .NET Framework와 .NET Core 환경에서 Ruby 프로그래밍 언어를 실행할 수 있도록 구현한 오픈 소스 프로젝트이다. 마이크로소프트가 개발한 Dynamic Language Runtime(DLR) 위에 구축되었으며, Ruby 코드와 .NET 객체 간의 상호 운용성을 제공한다.
주요 특징
- DLR 기반: IronRuby는 DLR의 동적 메서드 호출, 동적 타입 시스템 등을 활용하여 Ruby 언어 사양을 구현한다.
- .NET 연동: Ruby 스크립트 내에서 .NET 클래스와 메서드를 직접 호출할 수 있어, Ruby와 .NET 라이브러리를 혼합하여 사용할 수 있다.
- 플랫폼 지원: Windows 환경의 .NET Framework를 비롯해, Mono 및 이후 .NET Core(특히 .NET 5/6 이후)에서도 동작하도록 노력하였다.
개발 및 배포 이력
- 초기 발표: 2009년 마이크로소프트가 DLR 프로젝트와 함께 IronRuby를 공개하였다.
- 버전: 공식적인 안정 버전은 1.0.0(2010년)과 1.1.0(2012년)이며, NuGet 패키지 형태로 배포되었다.
- 오픈 소스: 프로젝트 소스 코드는 GitHub(https://github.com/IronLanguages/ironruby)에서 확인할 수 있으며, MIT 라이선스로 제공된다.
현재 상태
IronRuby는 2010년대 중반 이후 활발한 개발이 중단된 상태이며, 최신 .NET 환경에 대한 공식적인 지원은 제한적이다. 일부 커뮤니티 주도 포크가 존재하지만, 활발한 유지보수 및 업데이트가 이루어지고 있지는 않다.
의의
IronRuby는 .NET 생태계에서 동적 언어 지원을 확대한 초기 시도 중 하나로, DLR의 활용 사례를 제공함으로써 이후 언어 구현(예: IronPython)에 영향을 미쳤다.
본 항목의 내용은 공개된 공식 문서와 오픈 소스 저장소를 기반으로 작성되었으며, 최신 개발 상황은 해당 저장소를 참고한다.