Gentoo Archives: gentoo-dev

From: Marc Giger <gigerstyle@×××.ch>
To: Dennis Allison <allison@×××××××××××××××.edu>
Cc: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Programming advice wanted?
Date: Mon, 22 Mar 2004 21:58:36
Message-Id: 20040322225832.6660959b@vaio.gigerstyle.ch
In Reply to: Re: [gentoo-dev] Programming advice wanted? by Dennis Allison
1 On Mon, 22 Mar 2004 12:36:20 -0800 (PST)
2 Dennis Allison <allison@×××××××××××××××.edu> wrote:
3
4 >
5 > I don't want to start a flame war, but after an initial love affair I
6 > dont't much like Java. It's not a "better C++", it's a "different
7 > C++". I
8
9 More or less. Java = tidied up C++ what the syntax concerns.
10
11 > found the hype associated with the language irritatiing and the lack
12 > of stability as the language evolved unfortunate. But there are
13 > places where the language was useful and I put aside my personal
14 > prejudices and worked with the notation.
15 >
16 > But, I personally don't think Java's a good language for Andrew's
17 > purpose--which is to learn to program.
18
19 I should read his mail again. I have to clarify my statement:
20
21 If someone would like to learn OOP I would suggest Java because it's a
22 modern language with modern concepts.
23
24 >
25 > In a very real sense, I think assembly lanaguage (or even Hex machine
26 > code) may be a good place to start to learn programming. A good macro
27 > assembler is an awesome tool in the hands of a skilled programmer.
28 > Some beginning programming books--Yale Patt's in particular--adopt the
29 > view that everyone should learn about programming from the bits up.
30 >
31 > My point was/is that programming is language independent. I've always
32 > liked Michael Griffith's comment about programming: "I always use the
33 > same programming language no matter what the compiler" or something
34 > like that. Using a polymorphic, internally consistent,
35 > object-oriented language like Python is a good framework to learn
36 > programming. I think Python does a pretty good job of capturing the
37 > abstractions you need to write simple, conceptually clear programs.
38 > You don't have to worry about the nits, you can program interactively
39 > and see what happens, and there's not the huge overhead of type
40 > mechanisms to drag into every single little program. The language is
41 > introspective (aka introspective) so programs can learn about their
42 > own structure.
43 >
44 > But ultimately the only way to learn about programming is to read
45 > programs and work with masters in the field. It's still an art not a
46 > science.
47 >
48 > On Mon, 22 Mar 2004, Marc Giger wrote:
49 >
50 > > On Mon, 22 Mar 2004 13:13:42 -0600
51 > > Andrew Gaffney <agaffney@×××××××××××.com> wrote:
52 > >
53 > > > Dennis Allison wrote:
54 > > > > First, it is important to understand that programming is
55 > > > > independent of any particular programming language. Languages
56 > > > > are just the representation or notation for programs. Some are
57 > > > > large and complex and likely to get in the way of understanding
58 > > > > programming (C++); others are spare and simple and conceptually
59 > > > > clean (Python, Scheme).
60 > > > >
61 > > > > I'd begin with Python and then move on to other languages.
62 > > > > Starting with C++ is a bit like deciding you want to take up
63 > > > > mountain climbing and that the first mountain you want to climb
64 > > > > is Mount Everest.
65 > > >
66 > > > While I do completely agree with that analogy, C++ was the first
67 > > > (real) language I learned (after Apple BASIC, QBasic, VB, and Java
68 > > > (*I* do not consider Java a real language)) and
69 > >
70 > > I really don't understand what people have against Java?!? Is it
71 > > because of Sun and its license?
72 > > I have many years of experience in java programming and also learned
73 > > object oriented programming with it. In my opinion it's good and
74 > > clean. How many other languages do you know, which works on multiple
75 > > platforms without recompiling, run as a plugin in browsers, has deep
76 > > security concept built in (sandbox, bytecode verifier, etc),
77 > > multithreading as a basic language feature, exception handling,
78 > > RPC/RMI, etc etc etc ...
79 > >
80 > > If someone really is interested in understanding object oriented
81 > > programming then I would advise to begin with Java.
82 > >
83 > > > it gave me a broad understanding of the way that any language
84 > > > works. Because I know C/C++, I can easily pick up new languages
85 > > > because I don't have to learn new concepts.
86 > >
87 > > Agreed, but as you said, your first language was not C/C++ but
88 > > Basic, VB, Java etc. Correct me if I am wrong, but I think you
89 > > learned(hopefully) object oriented programming mostly with Java.
90 > >
91 > > In my case I learned OOP in Java and could utilize it to C++ without
92 > > big problems. The only strange thing was weird language constructs
93 > > and discrepancies in C/C++.
94 > >
95 > > Please don't get me wrong.
96 > >
97 > > Regards
98 > >
99 > > Marc
100 > >
101 > > --
102 > > gentoo-dev@g.o mailing list
103 > >
104 >
105 > --
106 > Dennis Allison * Computer Systems Laboratory * Gates 227
107 > * Stanford University * Stanford CA 94305
108 > * (650) 723-9213 * (650) 723-0033 fax
109 > * allison@×××××××××××××××.edu
110 > * allison@×××××××××××××××.edu
111 >
112 >
113
114 --
115 gentoo-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-dev] Programming advice wanted? "Olivier Crête" <tester@g.o>