Rust의 never 타입 ! 을 모든 타입 표기에 허용하는 PR이 2026년 8월 25일 병합됐으며, Rust 1.100에 포함될 예정임 — 사용 범위가 넓어지는 !은 모든 타입의 하위 타입인 바닥 타입보다 빈 타입으로 이해하는 편이 정확함 빈 타입은 값이 없고 제거 연산으로 임의의 타입을 얻는 반면, 바닥 타입은 모든 타입의 하위 타입으로 정의됨 — Rust의 하위 타입 관계는 수명이 있는 타입 사이에만 적용되므로 !에서 bool로의 변환을 설명하지 못함 Rust는 타입이 직접 !인 표현식을 필요한 타입으로 암시적 강제 변환(coercion) 하지만, fn(i32) ->!처럼 다른 타입 안에 들어 있는 !까지 변환하지는 않음 함수 반환값이나 Result<!,!>를 다른 타입으로 바꾸려면 클로저나 패턴 매칭으로 직접 !인 표현식을 얻어야 함 — 다만 임의의 타입 A에서 !를 꺼낼 수 있다는 보장은 없음 Haskell의 지연 평가에서는 Void 자리를 평가하지 않고도 자료구조의 일부를 사용할 수 있음 — 빈 타입의 동작은 평가 방식과도 연결되며, 바닥 타입이 없다는 사실만으로 Rust의 표현력이 더 낮다고 할 수는 없음 !의 안정화와 빈 타입의 의미 Rust는 이전에도 함수 반환 타입으로 !를 허용했지만, 다른 타입 표기에는 사용할 수 없었음 모든 타입 표기에서 허용하는 PR은 2026년 8월 25일 병합됐으며, 작성 시점 기준 Rust 1.100에 포함될 예정임 관련 자료는 I stabilized never type.에서 확인할 수 있음 빈 타입(empty type) 은 값도 생성자도 없는 타입이며, 개념적으로 fn absurd<A>(x: !) -> A라는 함수와 함께 이해할 수 있음 ! 값을 인자로 받아 원하는 타입 A를 얻지만, 실제로는 ! 값을 만들 수 없으므로 이 함수를 호출해 반환값을 받는 상황 자체가 생기지 않음 바닥 타입(bottom type) 도 값과 생성자가 없지만, absurd 대신 모든 타입의 하위 타입이라는 관계를 사용함 A가 B의 하위 타입이면 B가 필요한 위치에 A를 사용할 수 있음 빈 타입은 하위 타입 관계 없이도 정의할 수 있지만, 바닥 타입은 그 관계가 필요함 Rust의 하위 타입 관계는 수명이 있는 타입 사이에만 적용됨 !에서 bool로의 변환에는 수명이 관여하지 않으므로, 이 의미에서 Rust의 !은 바닥 타입이 아님 Scala에서는 함수 타입...
Related
Strands Decider 2B - 소형 오픈소스 의사결정 모델
51 minutes ago
0
Tell HN: GitHub이 한 달이 지나도 제 소프트웨어의 크랙 복제본 삭제를 거부합니다
54 minutes ago
0
Penguin Mail - AI를 탑재한 Linux용 오픈소스 Rust 이메일 클라이언트
1 hour ago
3
Show GN: 이메일 피싱 모의훈련을 전화로 옮겼습니다. 예고 없는 전화
2 hours ago
3
토론토 기반 VPN 업체, 적법 접근 법안으로 캐나다 떠날 계획
2 hours ago
3
Claude Code의 메시지 제안 기능: 진짜 고객은 모델이라는 생각
3 hours ago
3
Show GN: 추천링크·UTM으로 오프라인 소개의 성과를 추적하는 구조
5 hours ago
3
Tips
click
Popular
프로들도 줄지어 샷 점검… KLPGA 스타 사랑방 된 더헤븐CC 연습장
2 weeks ago
73
iOS 27, iPadOS 27, macOS 27
3 weeks ago
69
손흥민 선제골 발판·골대 불운…LAFC, 7경기 만에 승리
3 weeks ago
65
영림원소프트랩, 나람 통합 ERP 구축…사료 제조·물류·회계 데이터 하나로
2 weeks ago
62
'이 악문' 김영범, 자유형 50m '대회 신기록' 금메달
2 weeks ago
55
© Clint IT 2026. All rights are reserved

3 weeks ago
15








English (US) ·