[29736] in Perl-Users-Digest

home help back first fref pref prev next nref lref last post

Perl-Users Digest, Issue: 980 Volume: 11

daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Fri Oct 26 14:14:19 2007

Date: Fri, 26 Oct 2007 11:14:06 -0700 (PDT)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)

Perl-Users Digest           Fri, 26 Oct 2007     Volume: 11 Number: 980

Today's topics:
    Re: TeX pestilence <dak@gnu.org>
    Re: TeX pestilence <gernot@nict.go.jp>
    Re: TeX pestilence <dak@gnu.org>
    Re: TeX pestilence <a.grahn@fz-rossendorf.de>
    Re: TeX pestilence <borisv@lk.net>
    Re: TeX pestilence <blb8@po.cwru.edu>
        Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)

----------------------------------------------------------------------

Date: Fri, 26 Oct 2007 12:09:22 +0200
From: David Kastrup <dak@gnu.org>
Subject: Re: TeX pestilence
Message-Id: <867ila2nn1.fsf@lola.quinscape.zz>

CJ <nospam@nospam.com> writes:

> On 26 Oct 2007 at  9:04, David Kastrup wrote:
>> Brian Blackmore <blb8@po.cwru.edu> writes:
>>
>>> I would be happy to disagree with him on several points, in
>>> particular as regards to the programming language TeX.  As I quickly
>>> glance at his original rant on his web page, I see many other things
>>> that seem to be misunderstood.  Perhaps if I were to look at his
>>> background and qualifications, some of it would become clear.
>>>
>>> In any case, since this is the TeX channel, I will mention that I
>>> think TeX is an excellent programming language
>>
>> Uh no, it isn't.  It is reasonably flexible for macro/input
>> transformation.  It is also quite good for typesetting using its fixed
>> algorithms programmed in Pascal.
>
> You completely underestimate what can be done in TeX. It's actually
> Turing complete.

Is there a particular reason you elided all the detailed explanation I
give?  First: I am one of the most renowned TeX hackers in the field,
so don't try telling me that I don't know what I am talking about.  In
particular after cutting away everything where I _am_ talking about
it.

Secondly: only a complete idiot or somebody without any serious
programming experience confuses "excellent programming language" with
"Turing complete".  "Turing complete" is a statement about what kind
of programs a computer can handle in principle, without any
considerations of available actual resources such as CPU power or
memory.  "excellent programming language" is a statement about what
kind of programs a programmer can handle, with a lot of consideration
to available actual resources such as concentration, code density,
naturality of expression and so on.

-- 
David Kastrup


------------------------------

Date: Fri, 26 Oct 2007 20:51:32 +0900
From: Gernot Hassenpflug <gernot@nict.go.jp>
Subject: Re: TeX pestilence
Message-Id: <87hckeaybf.fsf@nict.go.jp>

David Kastrup <dak@gnu.org> writes:

> CJ <nospam@nospam.com> writes:
>
>> On 26 Oct 2007 at  9:04, David Kastrup wrote:
>>> Brian Blackmore <blb8@po.cwru.edu> writes:
>>>
>>>> I would be happy to disagree with him on several points, in
>>>> particular as regards to the programming language TeX.  As I quickly
>>>> glance at his original rant on his web page, I see many other things
>>>> that seem to be misunderstood.  Perhaps if I were to look at his
>>>> background and qualifications, some of it would become clear.
>>>>
>>>> In any case, since this is the TeX channel, I will mention that I
>>>> think TeX is an excellent programming language
>>>
>>> Uh no, it isn't.  It is reasonably flexible for macro/input
>>> transformation.  It is also quite good for typesetting using its fixed
>>> algorithms programmed in Pascal.
>>
>> You completely underestimate what can be done in TeX. It's actually
>> Turing complete.
>
> Is there a particular reason you elided all the detailed explanation I
> give?  First: I am one of the most renowned TeX hackers in the field,
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LOL

> so don't try telling me that I don't know what I am talking about.  In
> particular after cutting away everything where I _am_ talking about
> it.
> Secondly: only a complete idiot or somebody without any serious
> programming experience confuses "excellent programming language" with
> "Turing complete".  "Turing complete" is a statement about what kind
> of programs a computer can handle in principle, without any
> considerations of available actual resources such as CPU power or
> memory.  "excellent programming language" is a statement about what
> kind of programs a programmer can handle, with a lot of consideration
> to available actual resources such as concentration, code density,
> naturality of expression and so on.

Agreed.
-- 
BOFH excuse #246:

It must have been the lightning storm we had (yesterday) (last week) (last month)


------------------------------

Date: Fri, 26 Oct 2007 13:47:29 +0200
From: David Kastrup <dak@gnu.org>
Subject: Re: TeX pestilence
Message-Id: <86sl3y14j2.fsf@lola.quinscape.zz>

Gernot Hassenpflug <gernot@nict.go.jp> writes:

> David Kastrup <dak@gnu.org> writes:
>
>> Is there a particular reason you elided all the detailed explanation I
>> give?  First: I am one of the most renowned TeX hackers in the field,
>                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> LOL

Hm?

-- 
David Kastrup


------------------------------

Date: Fri, 26 Oct 2007 06:13:55 -0700
From:  Alexander Grahn <a.grahn@fz-rossendorf.de>
Subject: Re: TeX pestilence
Message-Id: <1193404435.539324.311700@57g2000hsv.googlegroups.com>

On 26 Okt., 13:47, David Kastrup <d...@gnu.org> wrote:
> Gernot Hassenpflug <ger...@nict.go.jp> writes:
> > David Kastrup <d...@gnu.org> writes:
> >> First: I am one of the most renowned TeX hackers in the field,
> >                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > LOL
>
> Hm?

It is the way you sing you own praise that makes G.H. laugh.
Perhaps, something like:

` `I know what I'm talking about as I have been hacking TeX for a
couple of years now (You might have noticed the number of postings I
have made to this NG). ...''

would have been more appropriate?

Alexander



------------------------------

Date: 26 Oct 2007 10:45:51 -0400
From: Boris Veytsman <borisv@lk.net>
Subject: Re: TeX pestilence
Message-Id: <m2ir4uexy8.fsf@bilbo.localnet>

AG> From:  Alexander Grahn <a.grahn@fz-rossendorf.de>
AG> Date: Fri, 26 Oct 2007 06:13:55 -0700

AG> On 26 Okt., 13:47, David Kastrup <d...@gnu.org> wrote:

>> Hm?

AG> It is the way you sing you own praise that makes G.H. laugh.

Well, the thing is - David is quite right here.  He IS one of the
wizards of TeX hackery.  


-- 
Good luck

-Boris

An idea is an eye given by God for the seeing of God.  Some of these eyes
we cannot bear to look out of, we blind them as quickly as possible.
		-- Russell Hoban, "Pilgermann"


------------------------------

Date: Fri, 26 Oct 2007 17:04:10 +0000 (UTC)
From: Brian Blackmore <blb8@po.cwru.edu>
Subject: Re: TeX pestilence
Message-Id: <fft6m8$627$1@gnus01.u.washington.edu>

In comp.text.tex David Kastrup <dak@gnu.org> wrote:
> Brian Blackmore <blb8@po.cwru.edu> writes:

> > I would be happy to disagree with him on several points, in
> > particular as regards to the programming language TeX.  As I quickly
> > glance at his original rant on his web page, I see many other things
> > that seem to be misunderstood.  Perhaps if I were to look at his
> > background and qualifications, some of it would become clear.
> >
> > In any case, since this is the TeX channel, I will mention that I
> > think TeX is an excellent programming language

> Uh no, it isn't.  It is reasonably flexible for macro/input
> transformation.  It is also quite good for typesetting using its fixed
> algorithms programmed in Pascal.

> But as a programming language, it is a steaming pile of crap.  And
> that's not least because it is a team from a blind and a lame
> programming system: only TeX's stomach can _affect_ a variable, but
> only TeX's mouth can _look_ at a variable and make decisions based on
> its values, decisions for which a resulting action again can only be
> done by the blind stomach.  Both systems kick in at different points
> of time and different circumstances.  And you must not employ the
> stomach in the middle of typesetting a word, or kernings and ligatures
> will break.

But if I compare these things to what I actually said in my post (which
I will now reinsert), namely regarding the problem that I see in CS
students these days...

> ... I think every f...ing CS grad should have to do a semester of TeX
> _programming_.  I see too many CS grads these days that can't do
> anything unless there's already a java module to do it, and then they
> get confused about using the module according to the documentation.
> Most of these people would garner nothing but benefit from having to
> spend time _thinking_, and that is one thing that TeX programming
> requires.

> In many cases, helping people with TeX is just making them realize how
> to think about the problem in the correct way (for the system at hand).
> The ability to `change gears' in this fashion is [an aspect of problem
> solving that they seem to lack].

I find that you're quite making my point for me.  That TeX is foul or
difficult is, to a newbie, often a matter of trying to do the wrong
things, in my experience.  The delineation between stomach and mouth is
intrinsic to using the system and a requirement as one moves forward
with TeX programming.  I can think of no greater example of having to
use the system "according to the documentation" and to approach "the
problem in the correct way".

This, increasingly, seems to be what younger `programmers' lack, the
ability to be bothered with any detail, however major, and most
especially if it's in the documentation.  I've seen groups agree on what
they intend to do to make modules communicate, one person does their job
and the other fails to be able to program theirs and then whines about
it.  Ultimately, the first person gets blamed as being "behind
schedule", all because the other people on the team can't follow the
documented protocols.

Even if it was pitched as teaching a system that's `impossible' to use
and, as you say, a blind and lame steaming pile of crap, if only for the
sake of convincing students why programming languages today are
infinitely better (which is bullshit), I still think a study of TeX
would go toward advancing the skills of programmers.  For example, it
might prevent them from committing the same atrocities, but it also
might get their stupid heads to start thinking about module distinction
and boundaries, the importance of syntax (the space character in TeX,
for example, and when it is good or bad), and understanding how a
multipart system interacts and communicates (stomach and mouth).

Then there's TeX the program itself, and from a number-of-bugs point of
view, I think they have a lot that could be learned.

> > Most of these people would garner nothing but benefit from having to
> > spend time _thinking_, and that is one thing that TeX programming
> > requires.

> I think that one should not promulgate alcoholism and depression in
> that manner.  Programming TeX really sucks, and its creator Donald
> Knuth has expressed his amazement at what tasks people actually have
> bothered implementing in TeX (rather than in Pascal or whatever) and
> says that it probably had been a mistake from him to let himself be
> prodded into adding the basics for making programming, however awful,
> basically possible in TeX.

I'm not sure how alcoholism and depression entered into the picture
here, but I can only guess that it's a false appeal to emotion or
something; in any case, I will mention that many humans only seem to be
able to understand how to avoid alcoholism once they have seen its
effects first hand.  Everyone is depressed at some point or another, but
it seems to make them stronger in the end, assuming that they learn
something from it.  I think our CS students could do to have a bit more
programming depression in their lives.

If "programming TeX really sucks", I find it surprising that you're the
expert, etcetera.  It seems reasonable to me to label you as such --- no
problem there --- but if it blows so heavily, why are you still doing
it?  Would not a better argument be based on seeing you program in
something else?

Yes, I've made an assumption, so I will quickly correct it.  I agree in
part simply because I'd never set out to program an OS kernel in TeX,
nor some hardware driver, etcetera.  I wonder how much of that can be
blamed on TeX, however, versus blaming the nonexistence of those types
of interfaces at the time it was designed.  COBOL comes to mind.

It seems to me that if we take the arguments you've put forth, there are
a rather large number of sucky programming languages.  I could complain
about having to worry about scope in C:  "Wah, I can't change a variable
in here because it hasn't been passed in by reference, but if I try to
change it in here then something outside breaks".  Or in Perl:  "Wah,
'print (1+2)+4' does not print seven".  These sorts of statements are a
fundamental misunderstanding of the operation of the system in use and
that, as far as I am concerned, is a statement of lack in the
programmer, not the language.

-- 
Brian Blackmore
blb8 at po dot cwru dot edu


------------------------------

Date: 6 Apr 2001 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin) 
Subject: Digest Administrivia (Last modified: 6 Apr 01)
Message-Id: <null>


Administrivia:

#The Perl-Users Digest is a retransmission of the USENET newsgroup
#comp.lang.perl.misc.  For subscription or unsubscription requests, send
#the single line:
#
#	subscribe perl-users
#or:
#	unsubscribe perl-users
#
#to almanac@ruby.oce.orst.edu.  

NOTE: due to the current flood of worm email banging on ruby, the smtp
server on ruby has been shut off until further notice. 

To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.

#To request back copies (available for a week or so), send your request
#to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
#where x is the volume number and y is the issue number.

#For other requests pertaining to the digest, send mail to
#perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
#sending perl questions to the -request address, I don't have time to
#answer them even if I did know the answer.


------------------------------
End of Perl-Users Digest V11 Issue 980
**************************************


home help back first fref pref prev next nref lref last post