Currently we use the term "ID" a lot, with a lot of different contexts, probably a legacy thing as PureBasic evolved.
Would it be possible to have some new PureBasic keywords that help to differentiate between things? (Note: The parser/tokeniser could remap to existing commands, which remain - this means no change to final exe size, the preprocessing does the work). So, for eg:
Code: Select all
result = getOsHandle(#number)
result = getPBNumber(#number)
- Handle = OS Handle.
#Number = Gadget,File,etc, IDs
PBnumber = internal value
ID = nonspecific, as it now is, and deprecated.

BTW, I am not suggesting those actual keywords or terms, just using them as examples. Cleverer minds than mine can come up with some good terms.
Thanks.
PS:
Extended, via remapping, we could even do things like:
WriteString([#number,]text$)
which would remap to:
UseFile(#number)
WriteString(text$)
Purebasic being smart enough to recognise the extra parameter as a #number. ( Which Fred could implement in a spare few hours. lol
