İota std :: iota ne anlama geliyor?


146

"İ" 'nin arttığını ve "a" nın atandığını varsayıyorum, ancak cevabı bulamadım veya bulamadım. Ayrıca, itoakafa karıştırıcı olduğunu düşünüyorum standart dışı çok benzer görünüyor .


10
Muhtemelen APL'den mi? Yunanca Iota harfi, ardışık tamsayıların bir vektörünü oluşturmak için kullanıldı.
cmbuckley

3
Bunun kafa karıştırıcı olduğunu düşünüyorsanız, Google iotadeğeri <tanım> anahtar kelimesi </s> özel olarak bildirilen bir tanımlayıcı yapar; bu değer değeri tanım başına bir kez artırılır, ancak yalnızca sabitleri tanımlarken.
Potatoswatter

3
itoaKarışıklık hakkında anlaştılar; Aynı düşüncedeydim.
NHDaly


1
Komik, bir şekilde adın "atoi" yi geri almak olduğunu düşündüm - tersi. Gerçi gerçekten mantıklı değil.
Petter

Yanıtlar:


184

Gönderen orijinal SGI STL belgelerinde :

İota ismi APL programlama dilinden alınmıştır.

Turing Award konferansında Ken Iverson (APL mucidi) şunları söyledi:

Örneğin, tarafından belirtilen tamsayı işlevi , bağımsız değişkene uygulandığında ιilk ntamsayıların bir vektörünü üretir n,…

Yani ιbir küçük harf Yunan harfi iota .

Ben daktilo yukarıda alıntı olarak ι, U + 03B9, “YUNAN KÜÇÜK MEKTUP IOTA” ama Unicode aslında APL iota için özel bir kod noktası vardır: olan U + 2373, “APL FONKSİYONEL SYMBOL IOTA” .


Yorum yapanların taleplerine yanıt olarak, bu bağlamda “iota” nın etimolojisine değineceğim.

En olası cevap Ken Iverson'ın kullanıcıya “integer” kelimesini ve “i” harfinin tipik bir tamsayı değişkeni olarak, özellikle dizi aboneliği için kullanımını hatırlatan bir sembol istemesidir.

Ama diyelim ki daha derin bir anlam var.

Oxford İngilizce Sözlüğü'ne göre, “iota”, “Roma I, i'ye karşılık gelen Yunanca Ι, ι harfinin adı; Yunan alfabesinin en küçük harfi ”(fiziksel olarak en küçük, alfabetik olarak değil, sanırım) ve aynı zamanda“ En az veya çok küçük bir parçacık veya miktar ”anlamına gelir. OED'in bu anlamdaki bilinen ilk kullanımı Clavis mystica'dan 1636'da Daniel Featley tarafından alınmıştır:

Tanrı'nın Booke'unun herhangi bir iota ya da ufaklığını kaybedecek miyiz veya çabucak geçelim mi?

Clavis mystica , Mukaddes Kitabın bazı bölümleri için bir rehberdir ve bu cümle özellikle Matta 5: 18'e atıfta bulunmaktadır. Kral James Versiyonu'nun 1611 baskısında Matta 5:18 için şu metin var :

matthew 5:18

Transkripsiyon:

Gerçekten size diyorum ki, bir avcı ya da bir unvan olan Till heauen ve toprak pasajı, hepsi yerine getirilene kadar yasadan akıllıca bir şekilde geçmeyecek.

OED, "iota" yı başka bir "jot" biçimi olarak verir ("iota" gibi), söz konusu harfin Yunanca adı olan Yunanca "ἰῶτα" kelimesinden türemiştir. Featley neden “iote” yi “iota” olarak değiştirdi? Ne yazık ki, kişisel kütüphanemde Clavis mystica'nın bir kopyası yok , bu yüzden daha fazla araştıramam.

Matta 5:18'in orijinal Yunanca'sında “iote” “ἰῶτα” ve “başlık” (ya da daha modern olarak “tittle”) “κεραία” dır. “Κεραία” kelimesi kabaca “serif” veya “kesme işareti” anlamına geliyordu. Bu İncil ayeti, en küçük ayrıntı fikrine atıfta bulunuyor. bulunuyor ve Yunan alfabesinin fiziksel olarak en küçük harfi olarak rolündeki iota harfini ifade etmek için “ἰῶτα” kullanıyor.

Bu nedenle, STL işlevinin iotave APL öncülünün , İncil yoluyla, Yunan alfabesi “ι” nın fiziksel olarak en küçük harfinden sonra adlandırıldığını söyleyebiliriz , çünkü bu işlevler, tamsayıların girebileceği en küçük miktarla ayrılmış tamsayılar üretir. ayrılmak.

Wikipedia'ya göre , Yunan iota harfi Fenike harflerinden elde edildi.

Bu, şu anda bu soru için gitmek istediğim kadar programlama alanı.


6
Peki neden yazım hatası yaptınız? ;-)
subub

5
Ama bu sadece soruyu biraz geri itiyor: APL neden bu işlevi çağırdı ?
Daniel H

1
APL'nin iota kullandığını düşündüm, çünkü en azından İngilizce olarak, kabaca ölçülebilir en küçük miktar anlamına gelir (örneğin, "Bir iota umrumda değil .").
Adrian McCarthy

Güzel söylem! Burada "iota" Vs "iote" Vs "jot" hakkındaki tartışmanız hakkında yorum yapmama izin verin. Eski dilde I ve J harfleri arasında bir ayrım yoktu. J Yunan alfabesinde değil ve Roma dilinde değildi, bu yüzden temel olarak 3 transkripsiyonun hepsi aynı harfe atıfta bulundu. WP makalesinde şunlar belirtilmektedir: "⟨i⟩ ve ⟨j⟩ arasında net bir ayrım yapan ilk İngilizce dil kitabı 1633'te yayınlandı";
Peter K

29

Sayı kümelerini veya birim vektörleri belirtmek için bazen matematikte kullanılan Yunan harfidir. C ++ durumunda, oluşturulmuş bir vektör kümesi alırsınız. Itoa ile ilgisi yok.


23

std::iota yineleyici aralığını art arda artan değerlerle dolduracaktır.

Özel sorunuza cevap vermek için aslında hiçbir şey ifade etmiyor. Iota (İngilizce'de "eye-oh-duh" veya "eye-oh-tuh" olarak telaffuz edilir) matematiksel çağrışımları olan bir Yunan harfidir.

C ++ 11'de standarttır, ancak önceki standartlarda değildir.


3
İngilizce olmayan çoğu konuşmacı ve ben bunu "eye-oh-duh" olarak telaffuz etmiyorum
phuclv

Göz yat-ah? Ben :) (Gerçekten biliyorum) bir zerre umurumda değil
Will

5
@ LưuVĩnhPhúc En az bir yerli İngilizce konuşmacının bunu "eye-oh-duh" olarak telaffuz etmediğini onaylayabilirim - "eye-oh-tuh" diyorum ("uh" ortada farklılaşmamış sesli harf 'ə' math-ə-matical ")
Martin Bonner Monica

4

Oh, her zaman std::iota(start,end,0)temelde

for(size_t i = 0; i < std::distance(start, end) ; i++) { start[i] = i; }

o zaman aslında her dizi öğesine "atama" yaparsınız ve iota i için yunanca, yani orada.

(Yani @ robmayoff en belirtilen APL seçim için gerekçe, olsaydı ben sürpriz olmaz cevap Ben durumun olsun hiçbir fikrim yok ancak.)


1

Bu sayfadan alıntı yapıyorum : konu hakkında daha fazla bilgi bulabileceğiniz iotashaming .

STL, Ken Iverson'ın APL üzerindeki çalışmalarından büyük ölçüde etkilendi. 1979 Ken's Turing ödül dersinde şu ifadeyi bulacaksınız:

"Örneğin, ι ile gösterilen tamsayı işlevi, ilk N tamsayılarının bir vektörünü üretir."

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.