Jim,

On Jun 23, 2005, at 10:40 PM, Jim MacConnell wrote:

Dennis,

First.. thank you for your intelligent reply to my:

okay.. back into my hole...

Yes, Please stay there.

It is good to so easily learn so much of the people we correspond with. I'm not surprised that I touched a nerve but I am surprised at the scream ... sorry ;-{ )

My apologies, I was a bit over the top yesterday in my reply. Yes, I want to make intelligent discussion not hyperbole. We all have our bad days. I felt like I was being ambushed, and that you were going to retreat out of the conversation.

Second..

var := x
var == x
var = x  --this is a bit tougher
var isAssignedToTheValueOf x
var gets x

are all the same thing!

Well.. they are close. They all may have the same result at a machine code level... (although I believe var == x resolves to TRUE if var and x are the same (false otherwise).. and usually the same for (var = x) if it is parentheses? )

Oops, but at least you knew what I meant . APL left arrow was supposed to go into that spot.

but the discussion is not about values of variables or what the machine does... or at least my contribution wasn't. It seemed to me, the discussion was about consistency in a language and the inclusion of semantically different operators in addition to those that are inherently ones. Seems like you didn't understand rather than me.

I did understand you, and I can accept that a var gets x is not xTalk as long as var := x is also not xTalk. That was my point. The gets "term" was my suggestion as being more xTalk than := and could be related semantically to the get command which is also left assignment.

Third...

You say one is a good construct and another is an inconsistent construct! That makes your argument inconsistent.

Maybe reread my post? I don't see in my message where I said any of those was a good construct for an xTalk. I said "put x into var" was a good construct for an xTalk language because it is consistent with the concept of telling the object what "It" should do as opposed to a variable being assigned something... It may seem a trivial point but it is at the root of the discussion...

" I personally have nothing against ":=" and "=" for variable assignment" --I took to be your acceptance as good.

Or perhaps the point is that if all of the above are the same but are non-xTalk friendly conceptually, is it appropriate for us to worry about whether Transcript includes any of them.... Of course you left the "put x into var" out of the list even though I would assume that from your point of view it is also the same thing.... So why did you leave it off? it appears to be the only one that is 100% consistent with the xTalk construct..... Could it be you agree with me at some level?

Put x into var is a right assignment command. Not the same thing. The whole thread is about a left assignment operator and the desire to conceptually have a left assignment as an extension of the language. And, yes, I do agree with you at some level, just not the way you argued for your point. I tend to take an argument to the extreme opposite position in order to discover the core issue. It makes everyone (including myself) think more clearly. I also test my code with values of "-infinity", -1,0,1,"+infinity",empty. I find the flaws faster with the edge conditions.

Finally...

You just don't get it ;-)
I can't say I can get it into your head, though I can put it into your head.
Perhaps Jim gets it now.
... telling someone their argument is inconsistent or that they don't get it when it appears you maybe didn't actually listen to/ read what they were saying does little to build your credibility. Following the same with a condescending cute smiley does not help. This list is a great place for constructive discussion and it should stay that way. Keep your personal comments to yourself.. and I'll be lighter on the " ...some renegade variable is off filling itself with data..." comments.

I guess I was a bit too obscure. The ;-) was the clue that the statements were an example of get, put, gets syntax and a lighthearted jab not meant to be taken too literally:

You just don't "get it", because "get it" is a no op.
I can't say I can "get it into" your head, because "get...into" is bad syntax mixing left and right assignment, showing the difference between get and put. Perhaps Jim gets it now... new syntax of left assignment that is English like syntax.

However, from the various replies to my gets suggestion, I don't think gets is the best choice for a left assignment for Transcript because of the lack of imperative. In BASIC the LET was the imperative to LET var=x. The LET was redundant from a parsing point of view, so eventually fell away. So in Transcript left assignment might be better stated using the familiar syntax: set var to x
The get command becomes the shortcut equivelent of:  set it to

So you see Jim, now I get it!

I have always been bothered by the left right reversal between setting parameters (just another type of container), and putting into variables. I have mistyped setting the parameter many times using the form: put x into the parameter of y. The syntax is not ambiguous as far as I can tell. Perhaps both set and put syntaxes should be regularized to allow either, and relegate parameters to the ordinary family of containers. At least allow the setting of variables even if putting into parameters is kept exclusive.

Comments?

Dennis
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to