Now because BlitzMAX doesn't have a single point of truth
Hmm, I'm curious what that phrase means exactly? I've never heard it before.
Anyhow, I'll try to say what's already been said in a slightly different manner....
This isn't actual code, just an abstract explanation. Okay, so let's say you have the following list of items
(item-one, item-two, item-three, item-four)
Each one of the comma separated items above is an item in the list. Now, let's say you want to do something to each of the items in that list...let's say you want to add 1 to each item. This is where the "For...Eachin" loop comes into play. The For loop let's you designate an "item specifier" and then assigns each item to that item specifier in turn, allowing you to do something to the item.
So, if we name the list above "ItemList", and we name our item specifier "ItemFromList" we'd get the following code
For ItemFromList = EachIn Itemlist
ItemFromList:+ 1
Next
The first time that loop iterates, it grabs the first item from the list (in this case that item is "item-one") and assigns it to "ItemFromList." So "ItemFromList" is really "item-one." Then we add 1 to "ItemFromList" - so we are adding one to "item-one"
The second time through the list, the second item in ItemList is assigned to ItemFromList - so now ItemFromList is representing "item-two" from the list above. Again, +1 is added to it, and then the next item is pulled from the list. This process is repeated for each item in the list, and then when the loop reaches the end of the list, the loop terminates.