G#: Go/Kotlin/Swift風の新.NET言語

원제: G# – A modern .NET language with Go, Kotlin, and Swift ergonomics

왜 중요한가

.NET 생태계에 Go/Kotlin/Swift 스타일의 인체공학적 문법을 도입하려는 시도로, CLR 플랫폼의 언어 다양성 확장 가능성을 보여준다.

개발자 David Obando가 .NET 런타임 위에서 동작하는 새로운 프로그래밍 언어 「G#」을 공개했다. Go, Kotlin, Swift의 문법 설계를 참고하며, 버전 0.3이 GitHub에서 공개되어 있다. 소스 코드는 관리형 어셈블리로 직접 컴파일되며, VS Code 확장 및 언어 서버도 제공된다.

G#은 .NET 런타임을 기반으로 동작하는 현대적인 프로그래밍 언어로, Go, Kotlin, Swift, TypeScript에서 영감을 받은 문법을 채택하고 있다. 현재 버전은 0.3이며 GitHub에서 오픈소스로 공개되어 있다.

주요 특징으로는 패키지 및 임포트 시스템, `func` 선언, `data class`, `nullable` 처리를 위한 `if let` 구문, `scope`를 이용한 구조적 동시성(structured concurrency)이 포함된다. `async/await`는 `Task[T]` 위에서 동작하며, `async sequence[T]`를 통한 비동기 스트림도 지원한다. 채널 및 고루틴(goroutine)은 옵트인 확장으로 제공된다.

타입 시스템에서는 `int32`, `uint64`, `float64` 등 비트 폭을 명시하는 숫자 기본형을 지원해 값의 크기를 명확히 표현할 수 있다.

툴링 면에서는 커맨드라인 컴파일러(`gsc`), MSBuild SDK, VS Code 확장, 언어 서버(LSP), Portable PDB 디버깅이 갖춰져 있다. CLR의 모든 타입을 임포트하고 메서드를 호출하는 상호운용성도 지원한다. 언어 사양서, 튜토리얼, 관용구 가이드 「Effective G#」도 함께 제공된다.

출처

davidobando.github.io — 원문 읽기 →