Re: Java compiler courses

Chris Dollin <chris.dollin@hp.com>
Fri, 11 May 2007 09:01:32 +0100

          From comp.compilers

Related articles
[15 earlier articles]
Re: Java compiler courses DrDiettrich1@aol.com (Hans-Peter Diettrich) (2007-04-27)
Re: Java compiler courses gneuner2@comcast.net (George Neuner) (2007-04-28)
Re: Java compiler courses DrDiettrich1@aol.com (Hans-Peter Diettrich) (2007-04-29)
Re: Java compiler courses gah@ugcs.caltech.edu (glen herrmannsfeldt) (2007-04-29)
Re: Java compiler courses marcov@stack.nl (Marco van de Voort) (2007-05-10)
Re: Java compiler courses torbenm@app-2.diku.dk (2007-05-11)
Re: Java compiler courses chris.dollin@hp.com (Chris Dollin) (2007-05-11)
Re: Java compiler courses gah@ugcs.caltech.edu (glen herrmannsfeldt) (2007-05-11)
Re: Java compiler courses englere_geo@yahoo.com (Eric) (2007-05-15)
| List of all articles for this month |

From: Chris Dollin <chris.dollin@hp.com>
Newsgroups: comp.compilers
Date: Fri, 11 May 2007 09:01:32 +0100
Organization: HP labs, Bristol
References: 07-04-074 07-04-118 07-05-037
Keywords: Java, courses

Marco van de Voort wrote:


> On 2007-04-26, Michael Klemm <usenet@gmx.info> wrote:
>> From my experience (tutor for compiler construction both in C and
>> later in Java), the students are able to produce a more stable
>> compiler in Java more quickly than in C. For Java, all gory details
>> that make programming tough (esp. memory management) comes almost for
>> free.
>
> I somewhat wonder why people think that Java is easier to learn than
> C.


I don't know if Java is easier to /learn/ than C. It depends a bit what
you count, since Java has a /much/ larger set of libraries and suffers
less from portability issues. I think Java is easier to /use/ than C,
because it suffers rather less from one-wrong-step-and-cut-your-throat.


> In ome of my classes I found the opposite (which surprised me too),
> specially if the students had no prior IT knowledge (they were classes
> for graduated non IT bachelors).
>
> They consistently found C easier to handle. The reason was pretty
> simple, more transparant, less knowledge required for an initial
> program (of any kind).


That depends, I think, on how one gets taught. The initial C program


        #include <stdio.h>


        int main(void)
                {
                printf( "Hello, world!\n" );
                return 0;
                }


and the parallel Java program


        public class HelloWorld
                {
                public static int main( String [] args )
                        {
                        System.out.println( "Hello, world!" );
                        }
                }


aren't /that/ different to a beginner.


> We had them doing walking pointer trees in 5 weeks, while in the
> paralel Java class they were still struggling with inheritance, and
> explaining what was needed to make a minimal program.


Then IMAO someone misfabricated the Java course.


I can't decide whether I'd start people off with an IDE or stick with
the command-line. Pros and cons, cons and pros ...


--
"It is seldom good news." ~Crystal Ball~, /The Tough Guide to Fantasyland/


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.