4

C++11 introduced a function called iota. Which "Assigns to every element in the range [first,last) successive values of val, as if incremented with ++val after each element is written."

Can someone explain what "iota" means here though?

I looked up "iota" and it seems to have nothing to do with generating a range.

Jonathan Mee
  • 37,899
  • 23
  • 129
  • 288

3 Answers3

9

Quoting this non-authoritative, but nonetheless correct, wiki:

The function is named after the integer function from the programming language APL.

In APL, the function (represented with the ninth letter of the Greek alphabet, iota) is used to create a zero-based array of consecutive, ascending integers of a specified length.

ildjarn
  • 62,044
  • 9
  • 127
  • 211
5

It's a Greek letter used in mathematics to denote a set of consecutive numbers. Iota use in APL.

Tyler Jandreau
  • 4,245
  • 1
  • 22
  • 47
2

This page has a very plausible-seeming explanation:

The Greek letter iota is used in the programming language APL to generate a sequence of consecutive integers.

unwind
  • 391,730
  • 64
  • 469
  • 606