Is the rate of Bitcoin creation linear, or is it more of an exponential decay? I am not familiar with the technical details of the algorithm, but it seems to be me that the more Bitcoin that is mined, the longer it takes to find the next one. Is this a situation where it took a few minutes to mine the first one, but could take a century to get the last one?
There is a limit of 21m BTC. However due to rounding errors it will not be possible to reach that number. This article explains it but I don’t know how that hard limit is enforced. It is expected to reach the 21m mark in 2140.
There is also some detail here: FAQ - Bitcoin
The limit is enforced by collective agreement by the miners running code that respects it.
Will people 100+ years from now still be running Bitcoin code that respects that limit, and will anyone care? Hard to say, but it seems pretty unlikely to me.