LabHub

블로그

니치 & 신생 프로그래밍 언어 2026 — Crystal / Nim / V / Carbon / Mojo / Pony / Hare / Roc / Hylo / Vale / Koka / Tcl 9 / Fortran 2023 심층 가이드

한국어English日本語

1. 2026년 니치 & 신생 언어 지도 — 시스템 / FP / 안전 / 도메인 4 분류

2026년 5월 현재, 주류(Python, JavaScript/TypeScript, Java, C#, Go, Rust, C/C++, Swift, Kotlin) 바깥에는 여전히 풍부한 언어 생태계가 살아 있다. 이 글에서 다루는 "니치 & 신생" 언어들은 GitHub 사용자 점유율로는 1% 미만, TIOBE 30위권 바깥, RedMonk 그래프의 한가운데(중간 지대)에 모여 있지만, 특정 워크로드/철학에서는 메이저 언어보다 더 좋은 답이 되는 경우가 있다.

네 가지 축으로 분류하면 한눈에 잡힌다.

분류대표 언어핵심 가치
시스템/네이티브Crystal, Nim, V, Carbon, HareC/C++ 또는 Ruby/Python 친화 문법 + 네이티브 컴파일
안전성/소유권Pony, Hylo, Vale, Inko, Kokaborrow/region/capability/effect 등 새로운 안전 모델
함수형Roc, Racket, Common Lisp(SBCL)강한 타입 또는 강한 매크로/연구 지향
도메인/역사Mojo, Fortran 2023, Tcl 9, OpenSCAD, J, Forth, Modula-3AI 가속, 과학 계산, 임베디드, 3D, 어레이

이 네 분류는 서로 배타적이지 않다. Mojo는 시스템 + 도메인(AI), Roc은 함수형 + 안전성, Hylo는 시스템 + 안전성에 걸쳐 있다. 그래도 시작점으로는 충분하다.

먼저 흔히 헷갈리는 사실 몇 가지를 정리하고 본론으로 들어간다.

2. Crystal — Ruby-like compiled (1.14)

Crystal은 "Ruby의 문법, C의 속도"를 슬로건으로 2014년 처음 공개됐고, 2021년 1.0이 나왔으며, 2024년 11월 1.14가 릴리스됐다. 2026년 5월 현재 1.14 라인이 안정 버전이고, 1.15가 RC 단계에 있다.

핵심 특징:

간단한 예시:

# fibers + channels — Go에 매우 가깝다
ch = Channel(Int32).new

spawn do
  ch.send 42
end

puts ch.receive  # => 42

Crystal이 잘 맞는 곳:

한계 — 솔직히 짚을 부분:

  1. 멀티 스레드 실행은 아직 실험적(-Dpreview_mt 플래그). 2026년 1.14는 단일 스레드 fiber 모델이 기본이다.
  2. 라이브러리 생태계가 Ruby/Go에 비해 얇다. ORM은 Granite, Jennifer, Avram 정도.
  3. 윈도우 지원이 늦었고 여전히 1급 시민은 아니다.

3. Nim — Python-like compiled (2.x)

Nim은 "Python스러운 문법, C/C++ 백엔드로 컴파일"을 목표로 2008년 시작됐다. 2023년 8월 Nim 2.0이 나왔고, 2026년 5월 현재 안정 라인은 2.0.x, 개발 라인은 2.2.x이다.

특징:

Nim 2.0의 핵심 변화:

코드 한 토막:

import std/[asyncdispatch, httpclient]

proc fetch(url: string): Future[string] {.async.} =
  let client = newAsyncHttpClient()
  defer: client.close()
  result = await client.getContent(url)

echo waitFor fetch("https://example.com")

Nim의 진짜 강점은 컴파일타임 매크로다. Status가 만든 Ethereum 2.0 컨센서스 클라이언트 Nimbus가 대표 예시로, Nim의 매크로로 SSZ 직렬화 코드를 컴파일타임에 생성한다.

약점:

  1. 한국/일본의 채용 시장에선 거의 보이지 않는다 — 학습 후 다음 일자리에 어떻게 연결할지 고민이 필요.
  2. 표준 라이브러리가 약간 두서 없다(역사적 이유).
  3. 커뮤니티 규모가 Crystal보다 조금 더 작다.

4. V (Vlang) — 베타 상태의 controversial

V언어(Vlang)는 2019년 공개돼 "Go보다 빠르게 컴파일, Rust만큼 안전, 메모리 GC 없음, 인터랙티브 GUI까지"라는 매우 광범위한 약속을 내걸었다. 2026년 5월 현재 공식 버전은 0.4.x — 7년째 베타다.

논쟁의 이유:

그럼에도 V는 살아 있다:

코드 예:

struct User {
  name string
  age  int
}

fn main() {
  users := [User{'Anna', 30}, User{'Bob', 25}]
  for u in users {
    println('${u.name} is ${u.age}')
  }
}

언제 V를 쓸 만한가? 솔직한 답: 2026년 기준 실서비스에는 권하기 어렵다. 학습/실험/소규모 CLI 정도라면 빠른 컴파일과 짧은 문법은 즐거운 경험이다. 하지만 V만의 차별점(자동 free, ORM 내장)에 의존하는 시스템을 만들기 전에는 같은 영역의 Crystal, Nim, Go, Rust 중 하나가 더 안전한 선택일 가능성이 높다.

5. Carbon (Google) — C++ 후속, 느린 진행

Carbon은 2022년 Cppcon에서 구글의 Chandler Carruth가 발표한 "C++의 successor" 프로젝트다. 2026년 5월 현재 carbon-language/carbon-lang 리포지토리는 활발하지만, 공식 단계는 여전히 "experimental"이다 — 0.1 알파에도 아직 도달하지 못했다.

설계 의도:

문법 한 조각:

package Geometry api;

class Circle {
  var r: f64;
  fn Area[me: Self]() -> f64 { return 3.14159 * me.r * me.r; }
}

fn Main() -> i32 {
  var c: Circle = {.r = 2.0};
  Core.Print(c.Area());
  return 0;
}

진행 상황(2026년 5월 기준):

현실적인 평가: Carbon은 "오늘 쓰는 언어"가 아니라 "C++ 진영이 어디로 가는지 보는 망원경"이다. Rust가 더 안전하고, Mojo가 더 빠르게 GA에 도달했지만, C++ ABI 호환이 필수인 거대 코드베이스(예: 크롬, 안드로이드, 일부 게임 엔진)에 한해선 Carbon이 의미를 가질 수 있다.

6. Mojo (Modular) — Python superset (2024.8 GA)

Mojo는 LLVM/Swift의 아버지 Chris Lattner가 세운 Modular에서 만든 언어다. 2023년 5월 첫 공개, 2024년 8월 stable GA(1.0)에 도달했다. 2026년 5월 현재 안정 버전 라인은 24.x — 분기별 릴리스.

Mojo의 약속은 크다:

코드 한 토막(simplified):

from sys.info import simdwidthof
from algorithm import vectorize

fn dot[type: DType, size: Int](a: SIMD[type, size], b: SIMD[type, size]) -> Scalar[type]:
  return (a * b).reduce_add()

fn main():
  var a = SIMD[DType.float32, 4](1.0, 2.0, 3.0, 4.0)
  var b = SIMD[DType.float32, 4](5.0, 6.0, 7.0, 8.0)
  print(dot(a, b))  # 70.0

Modular의 핵심 무기는 MAX(Modular Accelerated eXecution) 플랫폼 — Mojo + MLIR + 추론 엔진을 묶은 패키지다. 2026년 현재 OpenAI 호환 추론 서버를 Mojo로 직접 작성해 배포 가능하고, PyTorch 모델을 MAX로 그래프 컴파일해 동일 GPU에서 1.5~3배 throughput을 보이는 벤치마크가 공개돼 있다.

장점:

위험 요인:

7. Pony — capabilities-secure

Pony는 케임브리지 출신의 Sylvan Clebsch가 시작한, "데이터 레이스가 컴파일 시점에 불가능한" 액터 언어다. 2026년 5월 현재 ponylang/ponyc는 활발히 유지되고 있고, 0.58.x가 최신 안정 릴리스다.

핵심 아이디어 — Reference Capabilities:

actor Counter
  var _n: U32 = 0

  be inc() => _n = _n + 1
  be get(promise: Promise[U32]) => promise(_n)

actor Main
  new create(env: Env) =>
    let c = Counter
    c.inc()
    c.inc()

Pony가 빛나는 곳:

한계:

그래도 "데이터 레이스가 없는 액터 모델이 어떻게 가능한가"를 코드로 보고 싶다면 Pony는 여전히 일독 가치가 있다.

8. Hare (Drew DeVault) — suckless C 대안

Hare는 sr.ht 창업자 Drew DeVault가 시작한 "C99 호환의 미니멀 시스템 언어"다. 2022년 4월 첫 공개, 2026년 5월 현재 0.25.x가 최신 안정. 의도적으로 1.0은 멀리 두고 있다.

Hare의 철학(suckless 영향):

use fmt;

export fn main() void = {
  for (let i: int = 0; i < 5; i += 1) {
    fmt::printfln("hello {}", i)!;
  }
};

수많은 시스템 언어가 "C 대체"를 외쳤지만 Hare의 특이성은:

현실적인 자리:

9. Roc (Richard Feldman) — 함수형, no built-in errors

Roc은 Elm 커뮤니티에서 유명한 Richard Feldman이 만든 함수형 언어다. 2026년 5월 현재 0.x 단계(공식 1.0 미발표)이지만, 0.0.x 릴리스가 활발하고 일부 회사가 내부 도구에 도입.

Roc의 차별점:

app "hello"
  packages { pf: "https://example.com/basic-cli/platform" }
  imports [pf.Stdout]
  provides [main] to pf

main =
  Stdout.line "Hello, Roc!"

쓰임새:

한계 — 솔직히:

10. Hylo (구 Val) — Carbon-adjacent, value-oriented

Hylo는 원래 "Val"이라는 이름으로 2020년부터 개발됐고, Carbon과 비슷한 "C++ 후속" 자리를 노리는 언어다. 2023년 Val에서 Hylo로 개명(Vale와 이름 충돌 회피). 2026년 5월 현재 hylo-lang/hylo 0.x 단계.

핵심 디자인:

// Hylo 문법은 시각적으로 Carbon과 비슷하다(둘 다 C++ 후속 진영).
fun main() {
  var nums = [1, 2, 3]
  inout last = nums[2]
  &last = 42
  print(nums)  // [1, 2, 42]
}

(주: 위 코드는 흐름을 보여주는 의사 코드에 가깝다. 실제 Hylo 문법은 활발히 진화 중)

평가:

11. Vale (Evan Ovadia) — region-based borrow

Vale은 Evan Ovadia가 단독으로 이끄는 1인 프로젝트지만, 디자인 면에서 학계의 주목을 받는다. 2026년 5월 현재 0.x 단계.

차별점 — Region borrow checking:

추가로 Vale은 "Higher RAII" 같은 흥미로운 아이디어도 시도한다 — 단순 RAII가 아니라, 컴파일러가 destructor 호출 순서까지 추적.

코드는 아직 빠르게 바뀌므로 여기 옮기지 않는다. 흥미가 있다면 vale.dev 블로그의 "Single Ownership and Memory Safety without Borrow Checking, RC, or GC" 글을 추천.

산업 채택: 거의 0. 그러나 borrow 모델을 공부하는 사람에겐 좋은 참고 자료.

12. Inko — concurrent + safe

Inko는 네덜란드의 Yorick Peterse가 만든 동시성 언어다. 2026년 5월 현재 0.x 단계, 활발히 개발 중.

특징:

// Inko 문법은 Rust와 매우 비슷한 인상을 준다.
import std.stdio.STDOUT

class async Main {
  fn async main {
    STDOUT.write("Hello, Inko!\n")
  }
}

Inko의 자리:

13. Koka (MS) — effect handlers

Koka는 마이크로소프트 리서치의 Daan Leijen이 이끄는 연구 언어다. 2026년 5월 현재 3.x 라인.

Koka의 진짜 혁신: Algebraic effects + effect handlers.

// Koka 문법은 ML/Haskell 계열에 가깝다.
fun greet(name : string) : console ()
  println("Hello, " ++ name)

(이 코드 펜스는 시각적 참고용이며, Koka 공식 문법은 활발히 변한다.)

쓰임새:

14. Common Lisp (SBCL) / Racket — 학술 + 연구

니치라기엔 너무 오래 살아 있는 두 언어를 함께 본다.

Common Lisp + SBCL

대표 사용처:

코드:

(defun factorial (n)
  (if (<= n 1)
      1
      (* n (factorial (- n 1)))))

(print (factorial 10))  ; 3628800

Racket

용도:

#lang racket

(define (factorial n)
  (if (<= n 1) 1 (* n (factorial (- n 1)))))

(displayln (factorial 10))

15. Tcl 9 (2023.9) — 26년만의 메이저

Tcl(Tool Command Language)은 1988년 John Ousterhout가 만든 스크립트 언어로, Tcl 8.0이 1997년 나온 이후 26년만에 2023년 9월 Tcl 9.0이 정식 릴리스됐다. 2026년 5월 현재 9.0.1이 최신 stable.

Tcl 9의 핵심 변화:

puts "Hello, Tcl 9.0!"

set users {alice bob carol}
foreach u $users {
  puts "User: $u"
}

Tcl이 살아 있는 곳:

16. Fortran 2023 — 과학 컴퓨팅 in production

Fortran은 1957년 IBM의 John Backus가 발표한, 인류 최초의 고수준 컴파일 언어다. 그리고 2026년 5월 현재도 슈퍼컴퓨터의 핵심 언어 중 하나다.

Fortran 2023(ISO/IEC 1539:2023):

program hello
  implicit none
  integer :: i
  do concurrent (i = 1:5)
    print *, "Hello, Fortran 2023, iteration =", i
  end do
end program hello

실제 사용처:

Fortran이 사라지지 않는 이유는 단순하다 — 수치 배열 처리에서 Fortran보다 빠르고 안정적인 컴파일러는 거의 없고, 60년치 검증된 코드를 다시 쓰는 비용이 그 어떤 마이그레이션 이익보다 크다.

17. Modula-3 / J language / OpenSCAD / Forth — 역사 + 호기심

세 묶음으로 나눠 짧게 본다.

Modula-3

J language

OpenSCAD

// OpenSCAD 한 줄 예시
// 가로 20, 세로 10, 높이 5의 박스
cube([20, 10, 5]);

Forth

Factor, Joy는 Forth 계열의 스택 언어다. 학술적 의미가 크다.

Plan-9 from Bell Labs

18. 한국 / 일본 — niche 커뮤니티

한국

일본

19. 어떤 언어가 살아남을까 — 2026 예측

솔직한 5년 전망:

언어5년 후 살아남을 확률이유
Mojo매우 높음AI 가속 워크로드 + Modular의 자본 + Lattner의 평판
Crystal보통Ruby 커뮤니티의 안정적 부분집합, 그러나 폭발적 성장은 어렵다
Nim보통Nimbus 같은 큰 사용처가 있다
Carbon보통-낮음구글 외 채택이 거의 없다. 5년 뒤에도 알파일 수 있다
V낮음7년째 베타, 신뢰 회복 필요
Pony낮음산업 후원자 부재
Hare매우 낮음의도적으로 작게 유지, 1인 프로젝트
Roc보통Richard Feldman의 평판 + Elm 커뮤니티
Hylo/Vale학술적으로는 살아남음산업 채택은 어려움
Inko낮음-보통1인 프로젝트 리스크
Koka학술적으로 살아남음영향력은 큼, 직접 채택은 거의 없음
Common Lisp살아남음40년 살았으니 5년 더 산다
Racket살아남음학계 도구
Tcl 9살아남음EDA가 살아 있는 한
Fortran 2023살아남음HPC가 살아 있는 한
Modula-3/J/Forth박물관에 살아남음산업 채택 0

가장 좋은 학습 경로:

  1. 메이저 언어(Python, TypeScript, Go, Rust 중 2~3개)를 먼저 잘한다.
  2. 그 다음 "철학을 보러" 하나를 본다 — Mojo(시스템+AI), Roc(함수형), Common Lisp(매크로), Fortran(어레이).
  3. "회사에서 쓸까"를 마지막에 고민한다. 대부분의 니치 언어는 채용 시장이 거의 없다.

20. 참고 / References

댓글

아직 댓글이 없습니다.

로그인하면 댓글을 쓸 수 있습니다