Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister

Re: Re: don't { use Perl }

by hsmyers (Canon)
on Jun 10, 2002 at 13:44 UTC ( #173120=note: print w/replies, xml ) Need Help??

in reply to Re: don't { use Perl }
in thread don't { use Perl }

Well since I can't lay my hands on the context (and must admit to the possibility that it was Noam Chomsky and not Levi-Strauss) I'll have to make do with yet another quote:"Language shapes the way we think, and determines what we can think about." by Benjamin Lee Whorf. Which I've always applied to computer languages even though both (I think) were intended to describe what linguists would call 'real' language. To hack the words of my betters, while language may express the solution, it limits the solution set as well. This leads me to suggest some value in knowing more than one language. Hence my curiosity over your view(s).


"Never try to teach a pig to sing…it wastes your time and it annoys the pig."

Replies are listed 'Best First'.
Re: don't { use Perl }
by Abigail-II (Bishop) on Jun 10, 2002 at 13:56 UTC
    Oh, I certainly didn't say there is no value in knowing more languages. But the added value of knowing more goes down quickly. That is, you get more value out of knowing your first language than out of knowing your second, which has more value than knowing your third, etc.

    I also made the exception for "small domain" languages. Languages that are suited to do a specific task very well. Examples of "small domain" languages are TeX, sed, sed, gnuplot, but also "languages inside languages", like printf formats, pack formats.

    Maybe it's just the way I work, but generally when I need to solve a problem, I first think up an algorithm, and a general outline of the program. Only then I write a program. It will mostly be in Perl (because that's the language I like), but it will lead to a similar program as the one I would have written in, for instance, C. Details will certainly differ, but not the approach.


      This depends on how "similar" the languages are. Learning Pascal after you've learned C gives you nothing. Learning Prolog or ML/Haskel/Miranda/... can open a whole new world to you. (Though you'll not necessarily like it ;-)


Re: Re: Re: don't { use Perl }
by Anonymous Monk on Jun 10, 2002 at 15:05 UTC
    The Sapir-Whorf hypothesis (on linguistic determism) has been either refuted outright (in its strong version), or shown to be essentially devoid of content (weak version). In terms of programming languages, you do not have to use (or to have ever even learned) a functional programming language to apply the concepts of functional programming (and s/functional/OO/). The programming language you choose (meaning general purpose, not specialized niche languages here) doesn't limit the solution set so much as it limits the solution set that can be expressed naturally in that language. Think about it: C is not an OO language, nor does it have hashes as a primary type; but with it you can write new languages that do.

    If anything, the Sapir-Whorf hyposthesis is simply backwards: What and how we think shapes our language. The Innuit may have more words for snow (but nowhere near the 40 or so claimed by some reports, more like 7 to 10), but not more concepts or recognitions of different kinds of snow. We just require more descriptive phrases where their language uses simple or compound words. When differences in snow types are a more important part of daily life, one might expect such huffman-like encodings to be reflected in the language.

      It seems to me that theories of the spoken word have little value in the arena of programming languages. Language theory assumes that the speaker and the listener are on the same level: they both speak the same language. Programming languages are advanced constructs translated into the language of a very fast, restricted yet capable idiot.
        Not at all. Just because my program is translated into a machine language to run does not mean the machine is the only listener, nor even the primary listener, nor even a listener at all in any reasonable application of the word. The listeners of programming languages are humans. To think otherwise is to fail to understand why we would bother to create higher languages above the machine level in the first place.
      You're wrong about the Sapir-Whorf hypothesis, at least inasmuch as you imply that it is so generally considered disproved. This is still an active area of debate and experimental research in some lingustic circles (specifically, those focusing on "embodied" cognitive linguistics, a.k.a. "West coast" cog. ling.), cf. Language and Thought (D. Slobin).
        Perhaps I was a little broad with my pen. The SW hypothesis is generally considered refuted in its strong form. Its weak form continues to be investigated and does raise interesting questions in the cognitive sciences. But the weak form is really nothing at all like the strong form of the hypothesis, the weak form merely posits an interaction between language and thought, the strong form asserts that language is a limiting factor in the interaction.
Re: Re: Re: don't { use Perl }
by Sweeper (Pilgrim) on Jun 11, 2002 at 05:42 UTC
    If "Language shapes the way we think, and determines what we can think about.", how can it happen that from time to time a new concept emerges out of the blue?

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://173120]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (5)
As of 2021-05-10 07:18 GMT
Find Nodes?
    Voting Booth?
    Perl 7 will be out ...

    Results (104 votes). Check out past polls.