Nim (programlama dili)

Nim
Nim taç logosu
ParadigmasıÇok paradigmalı: derlenen, eş-zamanlı, prosedürel, zorunlu, fonksiyonel, nesne-yönelimli, meta
İlk çıkışı2008 (16 yıl önce) (2008)
TasarımcıAndreas Rumpf
GeliştiriciNim Lang Team[1]
Kararlı sürüm2.0.6[2] Bunu Vikiveri'de düzenleyin (17 Haziran 2024 (3 gün önce) (17 Haziran 2024))
Tip sistemiStatik,[3] güçlü,[4] çıkarsanmış, yapısal
Önemli uygulamalarıSözcüksel
EtkilendikleriAda, Modula-3, Lisp, C++, Object Pascal, Python, Oberon, Rust, ParaSail[5]
Uygulama diliNim (öz-barındırılan)
PlatformuIA-32, x86-64, ARM, AArch64, RISC-V, PowerPC ...[6]
LisansMIT Lisansı[7] Bunu Vikiveri'de düzenleyin
Olağan dosya uzantıları.nim, .nims, .nimble
Web sitesinim-lang.org
forum.nim-lang.org

Nim (eski adıyla Nimrod), Andreas Rumpf tarafından tasarlanan ve geliştirilen, genel amaçlı, çok paradigmalı, statik tipli, derlenen[8] bir programlama dilidir. Derleme zamanı kod sentezi, cebirsel veri türleri, mesaj iletme gibi çeşitli özellikler ile meta programlama, işlevsel, prosedürel ve nesne yönelimli programlama stillerini desteklemenin yanı sıra C / C++ dillerine yabancı fonksiyon arayüzü katmanı sunarak ve C, C++, Objective-C ve JavaScript dillerine derlenerek "verimli, etkileyici ve zarif",[9] olmayı hedefleyen bir tasarıma sahiptir.

Tarihçe

Nim projesi 2005 yılında Andreas Rumpf tarafından başlatılmış ve ilk olarak 2006 yılında GitHub üzerinden yayımlanmıştır. Nim derleyicisinin ilk sürümü Pascal'da Free Pascal derleyicisi kullanılarak yazılmış[10] 2008 yılında ise derleyicinin Nim'de yazılmış sürümü yayınlanmıştır.[11] Ücretsiz ve açık kaynaklı bir yazılım olan Nim derleyicisi Andreas Rumpf ile çalışan bir grup gönüllü (Nim Topluluğu) tarafından geliştirilmektedir.[12] Dilin ismi Aralık 2014 yılında 0.10.2 sürümü ile Nimrod'dan Nim'e değiştirilmiştir.[13]

Kaynakça

  1. ^ "Contributors to nim-lang/Nim". GitHub. 23 Mart 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 23 Mart 2022. 
  2. ^ Hata: Referans düzgün görüntülenemiyor. Bilgi için belgeleme sayfasına bakınız.
  3. ^ "Nim by example". GitHub. 29 Aralık 2014 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Temmuz 2014. 
  4. ^ Караджов, Захари; Станимиров, Борислав (2014). Метапрограмиране с Nimrod. VarnaConf (Bulgarca). 17 Şubat 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 27 Temmuz 2014.  Bilinmeyen parametre |konferansurl= görmezden gelindi (yardım)
  5. ^ Rumpf, Andreas (19 Ekim 2017). "Nim without GC". Araq's Musings. 15 Ekim 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 1 Eylül 2020. 
  6. ^ "Packaging Nim". 13 Ağustos 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 23 Mart 2022. 
  7. ^ "copying.txt". GitHub. Arşivlenmesi gereken bağlantıya sahip kaynak şablonu içeren maddeler (link)
  8. ^ Rumpf, Andreas (11 Şubat 2014). "Nimrod: A new systems programming language". Dr. Dobb's Journal. 27 Nisan 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Temmuz 2014. 
  9. ^ "The Nim Programming Language". Nim-lang.org. 8 Mayıs 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Temmuz 2014. 
  10. ^ "Nim Pascal Sources". GitHub. Erişim tarihi: 5 Nisan 2013. 
  11. ^ "News". Nim-lang.org. 22 Ocak 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Haziran 2016. 
  12. ^ "Contributors". GitHub. Erişim tarihi: 5 Nisan 2013. 
  13. ^ Picheta, Dominik (29 Aralık 2014). "Version 0.10.2 released". Nim-lang.org. 27 Nisan 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 17 Ekim 2018.