Am Tuesday, 17. October 2006 11:52 schrieb Bert Freudenberg:
> Am 17.10.2006 um 03:45 schrieb Ken Dickey: > > Greetings, > > > > I'd like to raise the idea of changing the complex number code in > > 3.10/4.0. > > > > See change set at: > > http://bugs.impara.de/view.php?id=3311 > > > > > > Current (3.8/3.9): > > 2i isNumber. "false" > > -4 ln. "NaN" > > -4 sqrt. "exception" > > > > Alternate Code: > > 2i isNumber. "true" > > -4 ln. "(1.38629436111989 +3.141592653589793i)" > > -4 sqrt. "2.0i" > > > > > > I consider this a "community issue". > > > > Questions: > > - Are there users of complex numbers (does anyone care)? > > - Assuming yes, are there objective criteria for choosing between > > alternate > > implementations? > > + behavior/completeness/test-cases > > + performance (I suspect that "the wrong answer fast" is not the > > Smalltalk > > way as we can always augment the primOps) > > + complex number user community vote > > + other...? > > > > I am actually agnostic as to which code base gets chosen, but we > > really should > > get the answers right. > > Well, in best Smalltalk tradition I would vote for the alternate > code. It's similar to fractional arithmetic ( 3 / 4 ). Yes, fractions > bite some newbies, but they learn to use #// or #asFloat fast enough. > Same here - if you need an error when taking a negative's square > root, send #asFloat. > > It's also a bit similar to Smalltalk being one of the few systems > with correct integers, where a bug like this is not possible: > > http://googleresearch.blogspot.com/2006/06/extra-extra-read-all-about- > it-nearly.html > > I'd like to have no arbitrary limits, like forbidding to take the > logarithm of negative numbers. And if complex is a loadable module people not having it in their image will get the exceptions while others get the full power of complex numbers. I would like that. Martin |
In reply to this post by Bert Freudenberg
Bert,
=================================== Well, in best Smalltalk tradition I would vote for the alternate code. It's similar to fractional arithmetic ( 3 / 4 ). Yes, fractions bite some newbies, but they learn to use #// or #asFloat fast enough. Same here - if you need an error when taking a negative's square root, send #asFloat. It's also a bit similar to Smalltalk being one of the few systems with correct integers, where a bug like this is not possible: http://googleresearch.blogspot.com/2006/06/extra-extra-read-all-about- it-nearly.html I'd like to have no arbitrary limits, like forbidding to take the logarithm of negative numbers. =================================== Your point about fractions is well taken. In fact, I guess I must still be a newbie, at least at times =:0 Just as fractions are quite useful, complex numbers would be too. However, I submit that it is critical to resist silently taking the real part or modulus when an error would be appropriate. Bill Wilhelm K. Schwab, Ph.D. University of Florida Department of Anesthesiology PO Box 100254 Gainesville, FL 32610-0254 Email: [hidden email] Tel: (352) 846-1285 FAX: (352) 392-7029 |
In reply to this post by KenDickey
Ken Dickey a écrit :
> -4 sqrt. "2.0i" If I remember correctly what my math teacher taught me, this is incorrect. Rule of square roots: --------------------- a sqrt * b sqrt = (a*b) sqrt Applied to -4: -------------- (-4) sqrt * (-4) sqrt = 16 sqrt = 4 With your equality: ------------------- (-4) sqrt * (-4) sqrt = 2i * 2i = -4 We then have the same expression returning two different values. My teacher concluded saying "sqrt is a function only valid for positive numbers" Bye -- Damien Cassou |
Damien Cassou schrieb:
> Ken Dickey a écrit : >> -4 sqrt. "2.0i" > > If I remember correctly what my math teacher taught me, this is > incorrect. > > > Rule of square roots: > --------------------- > a sqrt * b sqrt = (a*b) sqrt > > Applied to -4: > -------------- > (-4) sqrt * (-4) sqrt = 16 sqrt = 4 > > With your equality: > ------------------- > (-4) sqrt * (-4) sqrt = 2i * 2i = -4 > > > We then have the same expression returning two different values. My > teacher concluded saying "sqrt is a function only valid for positive > numbers" > I would rather conclude "the Rule of square roots is only valid for positive numbers". Additionally, remember that with only positive numbers, the square root is defined as the positive solution to the equation x*x = a. There always is a negative solution as well. The equation x*x = 4 has two solutions, 2 and -2. Similarly, x*x = -4 also has two solutions, 2i and -2i. If you multiply these two, you get 4 (=16 sqrt). Where's the problem? :-) Cheers, Hans-Martin |
On Tue, 17 Oct 2006 11:31 pm, Hans-Martin Mosner wrote:
> Damien Cassou schrieb: > > Ken Dickey a Иcrit : > >> -4 sqrt. "2.0i" > > > > If I remember correctly what my math teacher taught me, this is > > incorrect. > > > > > > Rule of square roots: > > --------------------- > > a sqrt * b sqrt = (a*b) sqrt > > > > Applied to -4: > > -------------- > > (-4) sqrt * (-4) sqrt = 16 sqrt = 4 > > > > With your equality: > > ------------------- > > (-4) sqrt * (-4) sqrt = 2i * 2i = -4 > > > > > > We then have the same expression returning two different values. My > > teacher concluded saying "sqrt is a function only valid for positive > > numbers" > > Your math teacher had a limited horizon (or you remember incorrectly). > I would rather conclude "the Rule of square roots is only valid for > positive numbers". nonnegative numbers". Michael Nedzelsky |
In reply to this post by Lex Spoon
>
> For small changes, we still seem to be operating in a vacuum. I am > unmotivated to fix bugs in core Squeak and in the Unix port, because > in both cases the fixes are often ignored. SharedQueue, one of our > fundamental synchronization constructs, has been broken for over a > year now, despite a fix being available [4]. Should I ever again blow > away a Saturday like that? Nobody likes being a sucker who fights > harder for something than its own management. I added this improved SharedQueue as SharedQueue2 to 3.9 very early: | MarcusDenker 10-07-05 18:09 in 3.9 for further testing Sadly, nobody tested it. The next entry on mantis is yours from end of september (we where past gamma then, so we can't do this change): | lexspoon 09-28-06 10:47 | It has been a year, now, and no problems have come to light. We should start migrating to this. | All it requires is replacing SharedQueue by SharedQueue2. So I don't see how it is my fault to not have added this: It is a grave change, breaking the image on that level is far from fun, so this is not a fix to be added and then tested ("let's see if it works"). It needs at least some testing by someone before that. If somebody would have tested it, I would have added it to 3.9a. Even your note, if you would have posted that half a year earlier, this change would be in 3.9. Or you could have written a mail. *something*. *anything*. What I think as strange is that people critize so hard for the percived fact that there was a bottleneck in getting things accepted in 3.9. I don't think that there was a too big one, compared to earlier release cycles. There was a bottleneck in reviewing and testing. And with that, everybody could have helped. And some people did. In 3.9a, we managed to get mantis down to 275 entries, closing over 800. That's *a lot*. And two month ago, I would have bet that if people would evaluate the negative aspects of 3.9a, they would have said something like a) "this guy adds every crap", not "b) there is a bottleneck, nothing got accepted". And I am actually even now convenced that a) actually is kind of more true than b). Marcus |
In reply to this post by Bert Freudenberg
On 17.10.2006, at 11:52, Bert Freudenberg wrote: > > Well, in best Smalltalk tradition I would vote for the alternate > code. It's similar to fractional arithmetic ( 3 / 4 ). Yes, > fractions bite some newbies, but they learn to use #// or #asFloat > fast enough. Same here - if you need an error when taking a > negative's square root, send #asFloat. > > It's also a bit similar to Smalltalk being one of the few systems > with correct integers, where a bug like this is not possible: > > http://googleresearch.blogspot.com/2006/06/extra-extra-read-all- > about-it-nearly.html > > I'd like to have no arbitrary limits, like forbidding to take the > logarithm of negative numbers. I am 99% convinced that the languages we use in 50 years, whatever the paradigm will be, will have a complete "real math" subsystem, kind of like a little mathematica, but as part of the mainstream language. There is no law of nature that requires a programming language to only have crappy math... it's what we had in the past, but just for space and performance reasons for the small machines and small problems of today. With the machines and the memory we will have, this does not need to be the case anymore. This is a bit the same like with memory management: With tiny machines solving tiny problems, it's simpler (and faster) to control the memory yourself. But then, when the systems get huge, it's not only simpler but even faster to have the higher abstraction: Big C++ programms tend to spend more time with hand-crafted memory management that a good automatic incremental GC. Same with math: in the end, like with all advances we will see, having "real math" in the language will not only be more convinient, but even faster and more memory efficient for the problems and machines we will see. Marcus |
In reply to this post by Marcus Denker
On Tue, Oct 17, 2006 at 11:43:46PM +0200, Marcus Denker wrote:
> > What I think as strange is that people critize so hard for the percived > fact that there was a bottleneck in getting things accepted in 3.9. I > don't think that there was a too big one, compared to earlier release > cycles. Agreed. > There was a bottleneck in reviewing and testing. And with that, everybody > could have helped. And some people did. Agreed. I did a very small amount of helping here, so let me offer my feedback. For me, it was difficult to review changes and test things because this often required downloading a complete new version of an image. This is time consuming and not much fun, so I did not do it very often. The solution is simple. Use a release stream with change sets just like SqC did. That makes it easy and *enjoyable* to keep a testing image that is up to date with the release stream, and that contains a complete record of all the things that have been changed in the recent development process. I can see what changes occurred in what change sets, and when they were applied. I can read the preambles to get an explanation of why they are there. Last but not least, I can be reasonably confident that the author initials are those of the actual author. > In 3.9a, we managed to get mantis down to 275 entries, closing over 800. > That's *a lot*. Excellent. Well done indeed! Dave |
In reply to this post by Lex Spoon
Lex Spoon wrote:
> So here's a challenge for you, board: how do we get fixes processed? > All the really cool Squeak stuff happens at the periphery [3]. The > question for the board is thus: how do we handle the simple, prosaic > patches? From my point of view there is a really simple answer to that question: By delegating them to the maintainers. And if they aren't any, it won't get fixed. It's as simple as that. After all you can always volunteer for the maintainer position and if, and ONLY if, you get turned down you have something to complain about. In other words, I do accept your complaint about Unix code since we have a maintainer there and we should figure out what's going wrong. I do NOT accept the complaint about SharedQueue unless you are willing to sign up for the job of maintaining Collections or at least the part of it you were just working on. Cheers, - Andreas |
In reply to this post by Hans-Martin Mosner
Come on, folks,
This mail is not only about Damien, but many others too. This is a request to anybody who considers himself a beginner or newcomer, and sends lots of mail to the list. In this community we have lots of wise and knowledgeable people. Many have PhDs or are active researchers. Many have been involved in the development of Smalltalk systems for very long time. Many spent many years using Smalltalk, reading and writing about it, and helping it evolve. This list is very friendly, and there is no censorship. So, please, have some respect for others and before sending a request, ask yourself: - Do I have a clear idea of what we are talking about? - Do I understand how Squeak is dealing with that and why? - Do I know if most people here think differently and why? - Have I thought a bit about what I'm going to say? - Do I know how to do what I'm asking for? - Can I do it, as a collaboration to the project? - Can I, at least, offer some help? If the answer to some of this questions is NO, please consider reading silently and learn. Or at least ask politely, instead of barking. Please keep in mind: The probability of we all being plain wrong for many years, waiting specifically for you to finally enlighten us, is pretty small. Cheers, Juan Vuletich Hans-Martin Mosner wrote: ... a response that was too polite in my opinion > Damien Cassou schrieb: > ... some naive ideas about complex numbers |
Juan Vuletich schrieb:
> ... > > If the answer to some of this questions is NO, please consider reading > silently and learn. > Or at least ask politely, instead of barking. > > > Hans-Martin Mosner wrote: > ... a response that was too polite in my opinion >> Damien Cassou schrieb: >> > ... some naive ideas about complex numbers > > Never mind, Juan - I am in no way a math expert myself, so my explanation might be as bogus as well, and I was just trying to make a little fun of Damien. You know, he has been an intern in our company for the summer, and due to my current project I have never even met him once during that time in person, so I needed to get into touch with him here :-) Cheers, Hans-Martin |
In reply to this post by Juan Vuletich (dc)
Hello Juan,
Juan Vuletich a écrit : > Come on, folks, > > This mail is not only about Damien, but many others too. > > This is a request to anybody who considers himself a beginner or > newcomer, and sends lots of mail to the list. > > In this community we have lots of wise and knowledgeable people. Many > have PhDs or are active researchers. Many have been involved in the > development of Smalltalk systems for very long time. Many spent many > years using Smalltalk, reading and writing about it, and helping it evolve. > > This list is very friendly, and there is no censorship. So, please, have > some respect for others and before sending a request, ask yourself: > - Do I have a clear idea of what we are talking about? > - Do I understand how Squeak is dealing with that and why? > - Do I know if most people here think differently and why? > - Have I thought a bit about what I'm going to say? > - Do I know how to do what I'm asking for? > - Can I do it, as a collaboration to the project? > - Can I, at least, offer some help? > > If the answer to some of this questions is NO, please consider reading > silently and learn. > Or at least ask politely, instead of barking. > > Please keep in mind: > The probability of we all being plain wrong for many years, waiting > specifically for you to finally enlighten us, is pretty small. > > Cheers, > Juan Vuletich > > Hans-Martin Mosner wrote: > ... a response that was too polite in my opinion >> Damien Cassou schrieb: >> > ... some naive ideas about complex numbers I don't really understand why you are reacting like this. I never criticize other work, only give my opinion. In my mail, I was just trying to remember my math lessons and share them. Hans-Martin answered me and I perfectly understood his position and agreed. In your opinion, people should only write a mail if they are 100% sure about what they want to write. I disagree. I think people learn better when they made mistakes and those mistakes get corrected by more experienced people. Hans-Martin taught me something and it would not have been the case if I had stayed away from my keyboard. Hope you will allow me to continue writing mails here. -- Damien Cassou |
Hello Damien
Your message was completely polite. My answer was for you but also for many recent senders, some of them not as polite as you. Many requesting the community to fulfill their wishes, without showing any intention of helping in the process. Many without knowing or understanding what Squeak is about. I guess I should have started a new thread instead of answering your's. I apologize for that. As I said, there is no censorship here. I have no power or intentions to censor you or anybody. It is just that there is really a lot of people here. And many of them really brilliant. To me, this is more a place to learn that a place to teach. I'm usually quiet. Before I send mail to this list, I think of the large number of people who will read it, and ask myself "do I have something useful to say?". Sometimes I miss this kind of consideration on others. I just wanted to share my opinion and attitude on this. Cheers, Juan Vuletich > > I don't really understand why you are reacting like this. I never > criticize other work, only give my opinion. In my mail, I was just > trying to remember my math lessons and share them. Hans-Martin answered > me and I perfectly understood his position and agreed. > > In your opinion, people should only write a mail if they are 100% sure > about what they want to write. I disagree. I think people learn better > when they made mistakes and those mistakes get corrected by more > experienced people. > > Hans-Martin taught me something and it would not have been the case if I > had stayed away from my keyboard. > > Hope you will allow me to continue writing mails here. > > -- > Damien Cassou > > > |
In reply to this post by Hans-Martin Mosner
Hans-Martin Mosner a écrit :
> Never mind, Juan - I am in no way a math expert myself, so my > explanation might be as bogus as well, and I was just trying to make a > little fun of Damien. You know, he has been an intern in our company for > the summer, and due to my current project I have never even met him once > during that time in person, so I needed to get into touch with him here :-) Hello Hans-Martin :-) -- Damien Cassou |
In reply to this post by Marcus Denker
Marcus Denker <[hidden email]> writes:
> I added this improved SharedQueue as SharedQueue2 to 3.9 very early: > > | MarcusDenker 10-07-05 18:09 in 3.9 for further testing > > Sadly, nobody tested it. Right. As a result of this process, Squeak ends up using the known-broken code instead of the tested, believed-fixed code. Strange, no? Everyone involved does good work, and we end up in a situation like this. -Lex |
In reply to this post by Andreas.Raab
Andreas Raab <[hidden email]> writes:
> Lex Spoon wrote: > > So here's a challenge for you, board: how do we get fixes processed? > > All the really cool Squeak stuff happens at the periphery [3]. The > > question for the board is thus: how do we handle the simple, prosaic > > patches? > > From my point of view there is a really simple answer to that > question: By delegating them to the maintainers. And if they aren't > any, it won't get fixed. It's as simple as that. After all you can > always volunteer for the maintainer position and if, and ONLY if, you > get turned down you have something to complain about. In other words, > I do accept your complaint about Unix code since we have a maintainer > there and we should figure out what's going wrong. I do NOT accept the > complaint about SharedQueue unless you are willing to sign up for the > job of maintaining Collections or at least the part of it you were > just working on. I like your approach. Let the individual maintainers, or stewards as called in some proposals, make these decisions. As is, I do not think there is an official list of maintainers/stewards that is actually paid attention to. Am I wrong? The idea seems to circulate, but never become official in any way. -Lex |
Lex Spoon skrev:
> Andreas Raab <[hidden email]> writes: > >> Lex Spoon wrote: >> >>> So here's a challenge for you, board: how do we get fixes processed? >>> All the really cool Squeak stuff happens at the periphery [3]. The >>> question for the board is thus: how do we handle the simple, prosaic >>> patches? >>> >> From my point of view there is a really simple answer to that >> question: By delegating them to the maintainers. And if they aren't >> any, it won't get fixed. It's as simple as that. After all you can >> always volunteer for the maintainer position and if, and ONLY if, you >> get turned down you have something to complain about. In other words, >> I do accept your complaint about Unix code since we have a maintainer >> there and we should figure out what's going wrong. I do NOT accept the >> complaint about SharedQueue unless you are willing to sign up for the >> job of maintaining Collections or at least the part of it you were >> just working on. >> > > I like your approach. Let the individual maintainers, or stewards as > called in some proposals, make these decisions. > > As is, I do not think there is an official list of > maintainers/stewards that is actually paid attention to. Am I wrong? > The idea seems to circulate, but never become official in any way. > > -Lex > > > > http://www.squeak.org/Community/Teams/ Whether it's paid attention to is another issue ;-) Karl |
On Tue, 2006-10-24 at 22:48 +0200, karl wrote:
> Lex Spoon skrev: > > As is, I do not think there is an official list of > > maintainers/stewards that is actually paid attention to. Am I wrong? > > The idea seems to circulate, but never become official in any way. > > > > -Lex > > > > > > > > > This is the most official list > http://www.squeak.org/Community/Teams/ > Whether it's paid attention to is another issue ;-) > Karl list and has been now for at least a year. Ken signature.asc (196 bytes) Download Attachment |
Ken Causey <[hidden email]> writes:
> On Tue, 2006-10-24 at 22:48 +0200, karl wrote: > > Lex Spoon skrev: > > > As is, I do not think there is an official list of > > > maintainers/stewards that is actually paid attention to. Am I wrong? > > > The idea seems to circulate, but never become official in any way. > > > > > > -Lex > > This is the most official list > > http://www.squeak.org/Community/Teams/ > > Whether it's paid attention to is another issue ;-) > > Karl > > And as the previous Team Leader I will say this is THE official team > list and has been now for at least a year. Hmm, this lists teams. What about portions of the image? Or is it sort of the same thing, and you mean that we should have, for example, a Collections Team and a Concurrency Team and a Morphic Team ? -Lex |
On Tue, 2006-10-24 at 14:48 -0700, Lex Spoon wrote:
> > http://www.squeak.org/Community/Teams/ > Hmm, this lists teams. What about portions of the image? Or is it > sort of the same thing, and you mean that we should have, for example, > a Collections Team and a Concurrency Team and a Morphic Team ? > > > -Lex Well it should be noted that this is a complete list of all 'official' teams which is a mixture of Steward Teams (those who have accepted responsibility for some part of the Basic Squeak Image) and other teams like the Website team and future/speculative teams. Any team that is responsible for some part of the image should have 'Stewards' as part of the name and the description should list the Class Categories in the image for which that team is responsible. For example: Morphic Stewards - Maintaining the Morphic- category of classes in the Basic Squeak Image There is currently no Collections or Concurrency Team. But then there is also no Concurrency class category so it's unlikely a team would be named that (although the I/O Stewards team is an example that shows that the name is not necessarily exactly that of a class category in every example). Ken signature.asc (196 bytes) Download Attachment |
Free forum by Nabble | Edit this page |