Home About Subscribe Search Member Area

Humanist Discussion Group


< Back to Volume 33

Humanist Archives: April 18, 2020, 8:39 a.m. Humanist 33.777 - the 'secret' of a programming language

                  Humanist Discussion Group, Vol. 33, No. 777.
            Department of Digital Humanities, King's College London
                   Hosted by King's Digital Lab
                       www.dhhumanist.org
                Submit to: humanist@dhhumanist.org


    [1]    From: C. M. Sperberg-McQueen 
           Subject: Re: [Humanist] 33.771: the 'secret' of a programming language? (68)

    [2]    From: Francois Lachance 
           Subject: kinetic approach to learning coding < Re: [Humanist] 33.773: the 'secret' of a programming language (99)

    [3]    From: Willard McCarty 
           Subject: the 'secret' (32)


--[1]------------------------------------------------------------------------
        Date: 2020-04-18 07:22:12+00:00
        From: C. M. Sperberg-McQueen 
        Subject: Re: [Humanist] 33.771: the 'secret' of a programming language?

> On 16,Apr2020, at 2:35 AM, Humanist  wrote:
> ...
>        Date: 2020-04-15 10:44:09+00:00
>        From: Willard McCarty 
>        Subject: the 'secret' of a programming language
>
> ...
> I would be most grateful for pointers to discussions relevant to
> programming languages and indeed for discussions here. It is easy to see
> in a vague sort of way that the 'secret' of Fortran would be very
> different from that of, say, Perl or R, and both of these from those of,
> say, ALGOL or LISP. But can we (or has anyone to your knowledge) gone
> further, assembled evidence, brought specific differences into focus
> and drawn widely applicable conclusions?

If it’s wide conclusions you want, you might want to look at
Dijkstra’s pronouncements on programming.  “On the cruelty
of really teaching computer science,” “GOTO considered
harmful”, and “How do we tell truths that might hurt?” may have the kind
of thing you’re looking for.  (Or may not; I have
not read any of them for a while and am not sure exactly what
you’re looking for.)

More generally, anyone who has designed a programming language
is likely to have talked about this topic in a concrete way, and
will often have brought specific differences into focus, but the
discussions will often entail rather than arguing for the kinds of
generalizations you’re likely to be interested in, and I doubt that
any of them assembled any evidence.  I wonder if discussions of
languages positioned outside what their designers felt as the
mainstream might be the best places to look:  so you might look
for Colmerauer (or Kowalski!) on Prolog, Griswold on Snobol
or Icon, Steele and Sussman on Scheme.  (Did Sussman and Steele
think of Lisp as outside the mainstream? at MIT?  Maybe not.) But I
wouldn’t hold my breath.  Some fairly explicit discussion of the issues
(based on introspection) can be found in Paul Graham’s essays on Lisp
and on the new language he is working on (Arc); see for example “The
hundred-year language."

People do sometimes wax philosophical at retrospective occasions; you
might do worse than looking at the collected papers of the History of
Programming Languages conferences; the papers will often have some
description of what the designers of the language were trying to
accomplish, and that will often involve the kind of ’secret’ you are
seeking. (And while we are on the subject of retrospectives, John
Backus’s Turing Award lecture “Can programming be liberated from the von
Neumann style?” should be a good source, if read carefully.)
But for the most part, I think there is likely to be more folklore
around this topic than coherent discussion, let alone evidence
empirical or otherwise.  (But then, that’s true of the Sapir/Whorf
hypothesis, too.  Very difficult to test empirically, and way too
interesting and important to let a little thing like absence of
empirical data stop us from speculating about it.)

You may also discover that some who have thought about the
issue are reluctant to talk about it aloud, much as Hesse’s Magister
Musicae says “I have never in my life said a word to my students
about the inner spirit of music; if such a thing exists, it has no
need of me to talk about it.  On the other hand, I have always
insisted they count their sixteenth notes with the utmost
care."

********************************************
C. M. Sperberg-McQueen
Black Mesa Technologies LLC
cmsmcq@blackmesatech.com
http://www.blackmesatech.com


--[2]------------------------------------------------------------------------
        Date: 2020-04-17 16:44:29+00:00
        From: Francois Lachance 
        Subject: kinetic approach to learning coding < Re: [Humanist] 33.773: the 'secret' of a programming language

Willard and Bill

A selective reading of the string so kindly moderated by Willard:

The link to the tree offered by Robert Amsler leads one to think in terms of
ecosystems and the emergences of species. And importantly the ways that the
human can make programs speak to each other and in essence stack them along
pipelines. (If I recall this is how Unix works - it's not a single program
but a number of them).

I want to challenge Bill to rethink this bit in light of the other contributors
to the thread:

> It's not clear just what you're looking for, Willard, but it's well-known
> that programming languages have their strengths and weaknesses more or less
> baked in and that it's important to choose the a language suited to your
> current purpose. New languages are created so they are better at this or that
> than existing languages.

I would argue that Willard is clearly looking to exploit an ecosystems approach
(whether he knows it or not). Strength and weakness are coder-dependent. Nothing
is baked in - amazing what patience and creativity can extract - especially if
coding is done in the open in community.

I choose languages at hand and love bending them to other purposes. I'm a
pervert at heart.

A new language is also fun to explore alone and in groups.

Any of this work comes down to splitting the 'doing something with a
programming language' into two aspects from the learners perspective. And
those who know me well will not be surprised by my move to return to first
principles in an abstract fashion: doing requires reading (orientation) and
writing (action). Writing code is a way of reading code. For the kinetic learner
we all are at some point:

It needs to dwell in the body in the world (read, observe) before moving on to
report (describe) and then to tips & techniques (action)

https://berneval.hcommons.org/2014/07/01/touching-the-dyslexic-core/

All the best to all on your coding travels

F

François Lachance
Scholar-at-large
Wannabe Professor of Theoretical and Applied Rhetoric
http://www.chass.utoronto.ca/~lachance
https://berneval.hcommons.org

to think is often to sort, to store and to shuffle: humble, embodied tasks


> On Apr 17, 2020, at 2:25 AM, Humanist  wrote:
>
>                  Humanist Discussion Group, Vol. 33, No. 773.
>            Department of Digital Humanities, King's College London
>                   Hosted by King's Digital Lab
>                       www.dhhumanist.org
>                Submit to: humanist@dhhumanist.org
>
>    [3]    From: Robert Amsler 
>           Subject: Re: [Humanist] 33.771: the 'secret' of a programming
language? (71)
>
>    [4]    From: Bill Benzon 
>           Subject: Re: [Humanist] 33.771: the 'secret' of a programming
language? (30)
>
>
>
> --[3]------------------------------------------------------------------------
>        Date: 2020-04-16 15:02:56+00:00
>        From: Robert Amsler 
>        Subject: Re: [Humanist] 33.771: the 'secret' of a programming language?
>
>
> There are fascinating diagrams of Programming Language Family Trees on the
> web.
>
> https://www.bing.com/images/search?q=Programming+Language+Family+Tree&FORM=IDI
NTS
>
>
> --[4]------------------------------------------------------------------------
>        Date: 2020-04-16 12:26:35+00:00
>        From: Bill Benzon 
>        Subject: Re: [Humanist] 33.771: the 'secret' of a programming language?
>
> It's not clear just what you're looking for, Willard, but it's well-known
> that programming languages have their strengths and weaknesses more or less
> baked in and that it's important to choose the a language suited to your
> current purpose. New languages are created so they are better at this or that
> than existing languages.
>
>
> Bill B


--[3]------------------------------------------------------------------------
        Date: 2020-04-17 07:13:02+00:00
        From: Willard McCarty 
        Subject: the 'secret'

Bill Benzon has asked what it is that I am looking for when I ask about
the differing 'secrets' of different programming languages. In a
parallel thread on Humanist, Michael Sperberg-McQueen has commented that
my list of adjectives, in my 'game of adjectives', says more about me
than about digital humanities. (And, it seems to me, his list says more
about him &c. :-). But there you have it -- an 'it' which shifts its
shape depending on the observer -- and on the programming language then
in use?  

Less playfully: I proceed from Michael's insightful remark to face
Bill's question. What I am looking for is the software-theoretical
analogue to Sapir's and Whorf's observation of linguistic relativity:
that how the speaker of a language conceives the world is shaped by that
language. Is it the case that as we abstract away from the hardware
toward higher and higher-level languages, more and more the reality of
the hardware that is our common ground becomes less and less influential, 
less and less visible, and so we come to understand whatever problem 
we're encoding and the world for which it is important within the range 
of possibilities and with the necessarily limited conceptual equipment 
the particular higher-level language provides? 

Yours,
WM


--
Willard McCarty (www.mccarty.org.uk/),
Professor emeritus, Department of Digital Humanities, King's College
London; Editor, Interdisciplinary Science Reviews
(www.tandfonline.com/loi/yisr20) and Humanist (www.dhhumanist.org)




_______________________________________________
Unsubscribe at: http://dhhumanist.org/Restricted
List posts to: humanist@dhhumanist.org
List info and archives at at: http://dhhumanist.org
Listmember interface at: http://dhhumanist.org/Restricted/
Subscribe at: http://dhhumanist.org/membership_form.php


Editor: Willard McCarty (King's College London, U.K.; Western Sydney University, Australia)
Software designer: Malgosia Askanas (Mind-Crafts)

This site is maintained under a service level agreement by King's Digital Lab.