jan Kipo o, toki!
ona li pona tawa mi e ni: sina toki tawa mi.
It has occurred to me that 'lon ala' might be better for imaginary numbers - except that then you have ambiguity between 'lon (ala ...)' and '(lon ala) ... '. Perhaps 'en (nanpa) lon ala pi ...' ?
As I said, I'm new to toki pona, so the only proposals I've seen really are the ones in this thread. Is there a repository of other ideas somewhere? I by no means think my proposal is unique or perfect. I'd be surprised if something similar hadn't been proposed before. I do think it's better than the others in this thread though (with all due respect to their creators).
I'm curious as to why you think any of these constructions are too long? I deliberately gave English equivalents to demonstrate that, while they are shorter in most cases due to the unitary digit names, they are similarly structured and none-the-less long when written out in words. The aim, as I see it, is not to get to numeral-like efficiency. For that it makes more sense for toki pona to adopt the Arabic numeral system like the rest of the world. My aim is to get to a similar level of efficiency as English (or other natlang) numbers written or spoken out in words. Perhaps we're shooting at different targets?
Your comment that it 'mixes the tp system with a real number system' makes no sense to me. It is a real number system. Fundamentally there is only one. Perhaps you meant counting system? But then, I still don't understand the sense in which 'the tp system' would be in any sense 'not real' or opposed to real? Reading between the lines, I don't think this approach is any more mixed with any other language's way of thinking than the English system is with the German, or French or most other natlangs. The aim of toki pona, as I understand it, is not to be deliberately contrary. Where a problem has been solved in other languages and the solution works in toki pona, why not adopt it to the extent that it makes sense in toki pona?
One might argue for using a base other than ten, I suppose, but as I said, I think we're (almost?) universally culturally attuned to base ten, so to me it makes sense to take that as a constraint. Even if we accept base 5 for example as culturally more toki pona, we still need magnitude tags and the rest; we just drop 'mute' and use 'luka' as the base. Binary and ternary could get away with fewer tags perhaps, but they blow up too fast to be realistically viable, I think. Ternary does have some appeal given that 'ala', 'wan' and 'tu' are the only pure number words we are given to work with. It would be quite a mind-shift to start thinking in threes, nines and twenty-sevens rather than tens, hundreds and thousands, but as a native system it could work.
Can you explain what you find "muddling"? I may have missed something (it's very possible) but I thought I had considered all the possible internal ambiguities and got the word orders right. We might need a more explicit counting system tag than simply 'nanpa' (e.g. 'nanpa pona' cf. 'sitelen pona') to distinguish from ordinals and less precise scalars (e.g. 'nanpa mute' for 'many numbers' or 'the many-th'), but if there are other issues please point them out.
I don't think the syllable approach is viable, as it effectively adds extra words to the toki pona lexicon. It seems to me that that would be cheating. jan Sonja has defined the tool-set and quite deliberately not included unique names for each decimal digit. I take that as a hard constraint (although I do have some sympathy for the 'si, po' proposal so that we would only have two-word compound digits instead of threes). Given (and perhaps it's not the case) that the multi-word names for digits are already widely accepted, toki pona will inevitably have number expressions that are longer than languages with unique unitary names for each digit if we aim to express numbers in base ten (or indeed in base two, three or five which will naturally blow up faster anyway).
Given that we're aiming for a base ten system, a way of expressing tens seems necessary. We can't use prefixes or suffixes (-teen, -ty) as that too would be breaking the rules of toki pona. Adding a word might be valid in this case, but it's not necessary if we simply overload (or perhaps contextually define a precise limit to) 'mute', which already has that meaning, inter alia. 'kulupu' is also a candidate, but it's longer, and thus better suited to a higher-order grouping.
Simply stringing together 'luka', 'wan', 'tu' and 'ala' doesn't work due to ambiguity of place value. The 'en' solution I've adopted is more-or-less the same as that suggested by jan U and is, I think, as efficient as we can expect for strings of digits. Using 'mute', 'ali' and 'kulupu' as magnitude markers, allows us to skip places if they're empty, rather than uttering a string of 'ala's to indicate place. 'One million and one' is undoubtedly easier to parse than 'one zero zero zero zero zero one'. Other groupings (e.g. hundreds, which would obviate the need for 'kulupu') and other markers ('sewi'?) could be used, but thousands is (again almost?) universally conventional, so why buck the norm? Using 'kulupu wan', 'kulupu tu' etc. is cleaner than English with its unique terms for each of the first several thousand groups (thousand, million, billion, trillion...).
I don't think using scientific notation for what I've described as accounting numbers makes sense. We don't describe salaries in terms of ten to the power five or six for example in English - accounting numbers are large, but still in a sense 'human-scale' or 'everyday'. Scientific notation li pona ala for that use case. Also jan U's approach to this is, I think, problematic. If I read the post correctly, 'luka wan ali' the example for one million, is also the suggested term for 'sixty'. An unambiguous term for the exponent is therefore needed, just as we use 'power' in English. Then to distinguish scientific notation from a simple exponent we need to be explicit about the base, hence 'pi mute wawa pi'.
Similarly the proposals for fractions, negatives and imaginary numbers are really no more complex than English. Alternative tags could be used of course, but I don't think they can be made much more efficient.
Again, I'm not so arrogant as to think my approach is entirely novel, or perfect, or that it can't be improved upon, especially after learning the language for just a week! I'm also aware that there's possibly a level of ambiguity around joining this pattern of numbers into sentences. Compared to the other options in this thread though, I do think it's better, and I don't think it suffers badly when compared to English or any other natlang, to the extent that I know their spoken number systems (which, to be fair, is limited even for the limited cases I am somewhat familiar with).
I regret that this post probably comes off as a bit prickly and defensive. I guess there is probably an element of defensiveness to it, but my aim is to be analytical about the problem at hand, which I find interesting. I am genuinely interested to see any systems (or elements of systems) that you think are better and to understand why.