Sorry, but I am filled up with all this. I'll do what I do, what I intended to do, in Pike or whatever, but I lost my motivation to share anything that I might do... It wouldn't be accepted anyway, so who cares?
Could you at least present a workable suggestion before you whine about that nobody likes what you are doing.
x == x.0 is a good idea in theory, but once x gets to big you'll lose precision and you'll end up with buggy code. Since neither of us likes code features that hides errors or downright promotes buggy code we can't stop here. One suggestion of yours is to introduce loss-of-precision exception. Exceptions are generally a bad thing and should be kept to a minimum and reserved for truely exceptional circumstances. Compatibility issues aside it would be bad if inspection operation started to throw exceptions from a language usability point of view.
Now, in my opinion (which appears to be the same, but independently developed, idea that others share) it is better to acknoledge the fact that floats are inprecise and thus never "equal" to an integer.
IMPORTANT NOTE: If you would like to help develop Pike, please do. Write code and show to us how useful it is. If you on the other hand prefer to do backseat programming you'll have to be saticefied with being (at best) ignored when we disagree. You have stated your idea. We have taken disproportional amount of time to respond. Stop promot it, please.
/ Martin Nilsson (saturator)
Previous text:
2003-09-19 01:39: Subject: Re: float type weirdness
On Fri, Sep 19, 2003 at 01:15:01AM +0200, Per Hedbor () @ Pike (-) developers forum wrote:
Consider "float q = 123456789;" or "float q=1234567898765432123456789;"
Compiler must issue warning in such cases. It must _warn_, but not _enforce_, or _at least_ it must give the developer a choice.
And if you do not want to use pike, feel free not to.
This is different. I want, because it is nice, but there are some _inconsistences_, obvious but denied by the team.
Concering float, again:
2 == 2.0;
(1) Result: 0
2 < 4.0;
(2) Result: 1
2.0 < 4;
(3) Result: 1
There is _no logic_ behind this behavior (unless one care to read all our discussions concerning this topic, and learn that there are several zeros in Pike, etc).
That's why I dislike what is going on. Not the language by itself. May be I was too hard in my wording, but I am just tired after several years trying to do _anything_. Nothing changed - Pike team is _always_ right. At least my bug reports were accepted, that's good reason to stay alive, still... :)
It would be much better if Pike would give _a freedom_ to developers. But there is no freedom. There are rules, which are non-negotiable by definition.
Because legacy of Roxen in Pike modules is more important than something new, because there is no good regexp module, because Nettle is far better than openssl, because... you know what...
Sorry, but I am filled up with all this. I'll do what I do, what I intended to do, in Pike or whatever, but I lost my motivation to share anything that I might do... It wouldn't be accepted anyway, so who cares?
Regards, /Al
/ Brevbäraren