RepositoryNim
SciNim

SciNim/Unchained

A fully type safe, compile time only units library.

122stars
1forks
4issues
0views

Thành tựu nổi bật

Những danh hiệu mới nhất của dự án

3
TINIX TRENDING·Nim

#3 Repository Của Tuần

🧪 Unchained: Đơn vị đo an toàn kiểu — chỉ ở thời gian biên dịch

Unchained là một thư viện đơn vị đo (units) hoàn toàn an toàn về kiểu, chỉ hoạt động ở thời gian biên dịch — không có bất kỳ chi phí nào khi chương trình thực thi.

Unchained là một thư viện đơn vị đo được viết bằng ngôn ngữ lập trình Nim, nơi mọi kiển tra kiểu (type safety) và chuyển đổi đơn vị đều được thực hiện hoàn toàn ở thời gian biên dịch. Không có bất kỳ thông tin nào về đơn vị đo nào tồn tại trong thời gian chạy, giúp chương trình nhẹ nhàng và nhanh chóng.

✨ Điểm nổi bật

  • Type-safe units: Tất cả các phép toán với đơn vị đo đều được kiển tra an toàn ở thời gian biên dịch.
  • Compile-time only: Không có chi phí thời gian chạy — mọi xử lý đều hoặn thành trước khi chương trình khởi động.
  • Meta-programming: Sử dụng tính năng lập trình tạo thời gian biên dịch của Nim để xây dựng hệ thống đơn vị đo mạnh mẽ.
  • Hỗ trợ chuẩn SI: Hỗ trợ đầy đủ các đơn vị đo hệ quy chuẩn quốc tế (SI) cùng với khả năng mở rộng tùy biến.
  • Zero-runtime cost: Không có bất kỳ con trỏ, bảng tra cứu nào được tạo ra trong bộ nhớ khi chạy chương trình.

💡 Vì sao đáng chú ý

Unchained khác biệt từ các thư viện đơn vị đo truyền thống bằng cách dời toàn bộ logic kiển tra và chuyển đổi về thời gian biên dịch, nhờ vào khả năng lập trình tạo thời gian biên dịch (compile-time meta-programming) mạnh mẽ của Nim. Điều này giúp các nhà phát triển có thể sử dụng các đơn vị đo một cách an toàn mà không lo ngại về hiệu năng.

Dự án phù hợp với các hệ thống nhúng, tính toán khoa học hoặc bất kỳ ứng dụng nào yêu cầu độ chính xác cao về đơn vị đo nhưng không muốn chấp nhận chi phí thời gian chạy.


#NimLang #CompileTime #TypeSafety #Units #MetaProgramming #TiniX

Similar Projects

Discover other similar projects and AI models.

RepositoryNim
fox0430/moe

A command line based editor inspired by Vim. Written in Nim.

729
Oct 18, 2026
RepositoryNim
status-im/nimbus-eth1

Nimbus: an Ethereum Execution Client for Resource-Restricted Devices

634
Oct 24, 2026
RepositoryNim
johnnovak/illwill

A curses inspired simple cross-platform console library for Nim

470
May 15, 2026
RepositoryNim
moigagoo/norm

A Nim ORM for SQLite and Postgres

417
Aug 5, 2026
RepositoryNim
nitely/nim-regex

Pure Nim regex engine. Guarantees linear time matching

246
Oct 12, 2026
RepositoryNim
juancarlospaco/nodejs

Alternative StdLib for Nim for NodeJS/JavaScript targets, hijacks NodeJS StdLib for Nim

226
Sep 7, 2026
RepositoryC
planetis-m/naylib

Yet another raylib Nim wrapper

364
Aug 7, 2026
RepositoryScala
erikerlandson/coulomb

coulomb: unit analysis for Scala

153
Aug 7, 2026
RepositoryPython
EbookFoundation/free-programming-books

:books: Freely available programming books

400.2k
Oct 25, 2026