On Sat, 9 Feb 2002, Nadav Har'El wrote:
> [ Books stuff snipped ]
> > > feel that something is missing, I learn it by looking for info on the web.
> > > That's not the best way of mastering something, but I seem to like it.
> > > Besides, I'm almost sure nobody uses the whole of C++, Perl, Common Lisp,
> > > etc. Those languages have so much redundency over Turing Completeness,
> > > that using a subset will not hurt too much. ;-)
>
> The problem with your approach is your phrase "feel that something is missing".
> How can you tell that something is missing, if you don't know yet what
> features are missing? For example, consider knowing only C, and then wanting
> to learn Perl. How will you even begin to guess about regular-expressions?
> You'll never find them missing, because you don't even know what they are!
> And how will you learn about the difference between my/local, when 'local'
> *seems* to do the right thing, has a few weird side-effects, but who says
> this isn't how this new crazy language works?
>
I did not say my approach is a good one, but that's how I operate. If you
have a differnt approach - that's very good. I agree that a C programmer
can program in Perl for a long time without making use of regexps, and
other great features. I programmed in Perl a long time without making use
of modules and objects. Most of the perl programmers I know still don't.
I am usually experienced enough with enought technologies to know if
something is missing. For instance, when I hacked a Python script I found,
I was looking for a way to concatenate two arrays (i.e: the equivalent of
@a,@b in perl) because I knew I've seen it in Perl. I eventaully could not
find a Python primitive to do it, and I even found a web-page that said
Python did not have such. (a,b in python will give an array containing
the array "a" as its first element and "b" as its second. %-))
If I study Common Lisp for instance, I'll probably study it from a book
like "On Lisp" because it has so many features, that some of them may
prove useful, even if they are redundant.
> The reason I like to read whole books is because this way I can remember,
> in the back of my mind, which features this language has. I don't (and don't
> need to) remember all these features and how exactly to use them - when I'll
> need to use one I'll still have the book for reference. But I'll know that
> such a feature exists, and know where to look it up.
>
> This approach takes time, that's for sure, but I think it makes me a better
> programmer than I would have been if I read books on a "need-to-know" basis.
>
Well, I sometimes find it amusing that I discover useful features of a
language which I thorougly know by accident. It makes life a bit more
interesting.
In any case, good for you, Nadav. Maybe I'll adopt your way of doing
things, the next time I study a given technology. Actually, sometimes (as
was the case with WebMetaLanguage) I do.
Regards,
Shlomi Fish
> --
> Nadav Har'El | Saturday, Feb 9 2002, 28 Shevat 5762
> [EMAIL PROTECTED] |-----------------------------------------
> Phone: +972-53-245868, ICQ 13349191 |I want to be a human being, not a human
> http://nadav.harel.org.il |doing -- Scatman John
>
> =================================================================
> To unsubscribe, send mail to [EMAIL PROTECTED] with
> the word "unsubscribe" in the message body, e.g., run the command
> echo unsubscribe | mail [EMAIL PROTECTED]
>
----------------------------------------------------------------------
Shlomi Fish [EMAIL PROTECTED]
Home Page: http://t2.technion.ac.il/~shlomif/
Home E-mail: [EMAIL PROTECTED]
"Let's suppose you have a table with 2^n cups..."
"Wait a second - is n a natural number?"
=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]