Re: English versus German



DKleinecke wrote:
On Jul 1, 11:12 am, Tak To <ta...@xxxxxxxxxxxx> wrote:
Joachim Pense wrote:
Christian Weisgerber (in sci.lang):
Tak To <ta...@xxxxxxxxxxxx> wrote:
DKleinecke wrote:
I found the following comment in a computer program
/* setup handler list binary searchable array hash table (in
german, that'd be one word ;) */
>>>>>
This does not make much sense to a programmer.
[...] they are too generic to be a cascade of
subparts. (E.g "hotel kitchen cabinet door lock"
sounds plausible but not "hotel kitchen container
box bottle".)

It _is_ an actual comment from actual code. It's in glib's
gobject/gsignal.c, g_signal_init(); line 773 in version 2.18.4.
>>>
And what is the contradictory "binary searchable array hash
>>> table" in the program?
>>
I take a look at the source and implausible as it
seems, this is an actual cascade of superparts: i.e.,
a hash table (by object instance) of sorted arrays
(by signal id) of lists (by user specified order)
of signal handlers.

If I were the programmer I would probably adopt
an abstraction at the mid-level and call it the
Signal Vector Hash Table.

Remember it wasn't MY comment (or code). I was startled when it
appeared.

I know. I did not say it was yours.

I usually make a mid-level abstraction when the compound
gets to be three words along. That is, I really only like
two word compounds at most.

Very reasonable.

I only mentioned Knuth to give some creditability to the
idea that code SHOULD be literate and readable. I think
the implementation he tried took a wrong turn very early
> in the game.

I did not follow the history of LP that closely, but
I never bought into the belief that natural language
offers a good model of information organization. In
other words, readability is not the same as understand-
ability. The foremost factor in understandability
is the clarity of organization and that's what programmers
should strife for. "Readability" is useful only within
one level of abstraction, when ideas can be presented
sequentially.

Thus, the aim of a literate program that is like a
natural language document is fundamentally flawed.
Instead, the goal should be to popularize a set of
universal information organization primitives or
templates and get people to understand them by
using them.

I have been investigating other ways of writing literate programs with
I think is some success. I have been using the Glib/Gtk family of code
as a test base for whether my ideas can be applied to real code (as
opposed to something I made up). I have reconstructed a lot of code so
far with only trivial difficulties.

The catch is that the result isn't very literate - even in terms of a
very restricted English. The reason it isn't literate is clearly the
fact that I do not understand the code properly. This leads me to
think I am on the right track because it suggests that the code is not
really comprehensible, as it stands, to anyone outside the tiny
community (a half dozen people I would suspect) who created it. The
techniques I am testing force the writer to explicate better.

Well, a program, even a literate one, is never a
substitution for background reading.

And the VERB setup exists. It is used constantly in the corpus I am
working on. It cannot be written with a hyphen in C and that
restriction obviously impacts on the spelling the programmers use.
Equally a separable like "set ... up" (the best equivalent in standard
English) is alien to C. Sort of a Whorfian effect is going on and the
programmers use of C has an impact on their comments. Once they raise
their heads into the real world I imagine the C effect disappears.

I have always used the two word form for verb in
English. Combining an English verb and a preposition
to form a C-verb is nothing new of course.

Tak
--
----------------------------------------------------------------+-----
Tak To takto@xxxxxxxxxxxxxx
--------------------------------------------------------------------^^
[taode takto ~{LU5B~}] NB: trim the xx to get my real email addr



.



Relevant Pages

  • Re: How to find reliable offshore (India) programming shop? (this is not a spam)
    ... > were somehow inferior to programmers here. ... > became evident that this person did not speak English as their native ... > own country out of work and being put out of work ... >> looking to outsource work, it can definitely get frustrating and I see ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: How to find reliable offshore (India) programming shop? (this is not a spam)
    ... > were somehow inferior to programmers here. ... > became evident that this person did not speak English as their native ... > own country out of work and being put out of work ... >> looking to outsource work, it can definitely get frustrating and I see ...
    (microsoft.public.dotnet.languages.vc)
  • Re: Hash order bug?
    ... I think this is just a common mistake among newbie-ish programmers. ... did I realize that the underlying data structure is a hash, ... to retrieve the key array and sort it first, ...
    (comp.lang.ruby)
  • Re: Post / Zip Code
    ... leaving programmers wondering why a lot of their Procs were going wrong ... the fact that it may be mathematically correct but it is not natural ENGLISH ... programmers are pedantic idiots. ... Common sense isn't actually all that common. ...
    (comp.databases.pick)
  • Re: Hash tables
    ... a common requirement for a dictionary. ... programmers to be able to choose when to make the trade-offs themselves ... tag, to tag and branch tag in a SIP call are all variable length ... That's the purpose of inserting the hash first but that's a best case ...
    (comp.lang.functional)