Gosling on "left shift"

R

Ryan

In an interview
(http://www.builderau.com.au/program/work/0,39024650,39176462,00.htm),
James Gosling is asked about regrets he has about the design of Java.
He says, among other things:

"There are so many people that I talk to that feel victimised by the
fact that “left shift†is not an IL operator. People get really
emotional about it, but for people doing scientific programming, it’s a
big deal."

What does this mean? I can only guess that IL means inline, but I
didn't think that term had any meaning in the Java world.

Ryan
 
C

Chris Uppal

IL = intermediate language ?

Probably not, since Java's "intermediate language" -- JVM bytecodes -- does
have a left shift operation.

My /guess/ is that it's something to do with the fact that >> is defined to do
sign-extension, which is just about never what you want, so you have to
remember to use >>> instead. But I can't think of any interpretation of "IL"
that connects with that.

The other thing about left and right shift that might get (some) people worked
up is that shift by counts greater than 31 don't do what you'd expect (or what
/I'd/ expect, anyway); but I can't think of any "IL" for that either...

-- chris
 
B

bugbear

Ryan said:
In an interview
(http://www.builderau.com.au/program/work/0,39024650,39176462,00.htm),
James Gosling is asked about regrets he has about the design of Java.
He says, among other things:

"There are so many people that I talk to that feel victimised by the
fact that “left shift†is not an IL operator. People get really
emotional about it, but for people doing scientific programming, it’s a
big deal."

What does this mean? I can only guess that IL means inline, but I
didn't think that term had any meaning in the Java world.

Perhaps this tells us:

http://groups.google.co.uk/group/comp.compilers/msg/6b3b288e6bb3262d?hl=en

BugBear
 
E

Eric Sosman

Ryan said:
In an interview
(http://www.builderau.com.au/program/work/0,39024650,39176462,00.htm),
James Gosling is asked about regrets he has about the design of Java.
He says, among other things:

"There are so many people that I talk to that feel victimised by the
fact that “left shift†is not an IL operator. People get really
emotional about it, but for people doing scientific programming, it’s a
big deal."

What does this mean? I can only guess that IL means inline, but I
didn't think that term had any meaning in the Java world.

A wild guess: The article is apparently transcribed from
a recording of the conversation -- and the recording (or the
transcription) may not have been very good. Consider gems like

"For the purpose of doing high-performance versions
of the VM, a better way to think about the JVM design
is that it’s a (inaudible) encoded (inaudible) of the
(inaudible)."

... which seems a little less informative than Gosling probably
intended. ;-)

So: There's evidence for a faulty transcription. I'll
conjecture that "IL" may have been a phonetic mis-transcription
of "I/O", and that Gosling may have been talking about the C++
use of `<<' with I/O streams. The reference to "the scientific
community" would then be understood as "people who just want to
get the data into the program, solve the problem, and get the
solution back out again without worrying about the Holy Grail
of Good Style."

(Seems plausible, anyhow -- but I have a hunch we may never
find out for sure what he was talking about.)
 
R

Ryan

A wild guess: The article is apparently transcribed from
a recording of the conversation -- and the recording (or the
transcription) may not have been very good. Consider gems like

"For the purpose of doing high-performance versions
of the VM, a better way to think about the JVM design
is that it’s a (inaudible) encoded (inaudible) of the
(inaudible)."

... which seems a little less informative than Gosling probably
intended. ;-)

So: There's evidence for a faulty transcription. I'll
conjecture that "IL" may have been a phonetic mis-transcription
of "I/O", and that Gosling may have been talking about the C++
use of `<<' with I/O streams. The reference to "the scientific
community" would then be understood as "people who just want to
get the data into the program, solve the problem, and get the
solution back out again without worrying about the Holy Grail
of Good Style."

(Seems plausible, anyhow -- but I have a hunch we may never
find out for sure what he was talking about.)

I think you're probably right. I hadn't considered that it might be a
transcription error. Your explanation makes a lot of sense. Thanks.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,008
Latest member
HaroldDark

Latest Threads

Top