[Haskell-cafe] off-topic question: how well do you think linguistic relativity applies to PLs and programming?
keshav.kini at gmail.com
Wed Jan 22 23:35:47 UTC 2014
Lucas Paul <reilithion at gmail.com> writes:
> This is my take, as a CS undergraduate.
> I'm not sure if we can say that a programmer's language of choice
> determines the way they think about programming (the strong version of
> linguistic relativity for programming, as I see it). But I think it's
> fairly obvious that the language we choose to use to solve a problem
> affects how we think about the solution. That's basically the entire
> raison d'être for domain-specific languages (DSLs)!
> DSLs are popular (and becoming more so) precisely because the right
> choice of DSL can make expressing the solution to a particular kind of
> problem almost trivial. A poor choice can almost doom an endeavor.
> Imagine trying to query a database in assembly language. No SQL. It
> would at the very least require some mental gymnastics that a SELECT
> statement simply obviates.
I think this can be partially explained by noting that programming
languages, and in particular the way that programmers use them, afford a
capacity for essentially limitless amounts of abstraction, unlike human
language and human communication. For example, I might easily have a
magic library that does exactly what I want, with bindings for my
programming language of choice, in which case I don't need to think
about what to do, I just call the appropriate function. In human
communication, while someone might have perfectly formulated exactly the
idea I want to communicate, it is rarely sufficient for the purpose of
communication to say "insert pages 204 through 356 of _Foobar_ by John
Doe here" in the middle of a conversation :)
More information about the Haskell-Cafe