1. OT: Language Design

This is a quote I can relate to...

"There is one thing more important than brevity to a hacker: being able
to do what you want. In the history of programming languages a
surprising amount of effort has gone into preventing programmers from
doing things considered to be improper. This is a dangerously
presumptuous plan. How can the language designer know what the
programmer is going to need to do? I think language designers would do
better to consider their target user to be a genius who will need to do
things they never anticipated, rather than a bumbler who needs to be
protected from himself. The bumbler will shoot himself in the foot
anyway. You may save him from referring to variables in another package,
but you can't save him from writing a badly designed program to solve
the wrong problem, and taking forever to do it."

http://www.paulgraham.com/popular.html


-- 
Derek Parnell
Melbourne, Australia

new topic     » topic index » view message » categorize

2. Re: OT: Language Design

On Thu, 27 May 2004 18:27:21 -0700, Derek Parnell
<guest at RapidEuphoria.com> wrote:

>This is a quote I can relate to...
>
>"There is one thing more important than brevity to a hacker: being able
>to do what you want.
For a half decent programmer, true.
>In the history of programming languages a
>surprising amount of effort has gone into preventing programmers from
>doing things considered to be improper.
True, and for a damn good reason (see below)
>This is a dangerously resumptuous plan.
Nonsense.
>How can the language designer know what the
>programmer is going to need to do?
There is nothing wrong with letting those programmers who know full
well what they are doing from resorting (eg) to machine code, agreed.
>I think language designers would do
>better to consider their target user to be a genius who will need to do
>things they never anticipated, rather than a bumbler who needs to be
>protected from himself. The bumbler will shoot himself in the foot
>anyway. You may save him from referring to variables in another package,
>but you can't save him from writing a badly designed program to solve
>the wrong problem, and taking forever to do it."

Utter tosh (at the language design level). We need (and lets be honest
here, a few wasted cycles in the name of easing the process *IS* the
holy grail) to encourage people to "have a go", not tell them they are
shit.

If your "target user" is indeed a genius, the fucker (scuse my french)
will be coding in hex/binary anyway, no "language" needed.

Derek, I don't understand why on earth you regurgitated this trash; it
goes against everything you have previously said.

Flexibility is one thing, no protection whatsoever is another.

Pete

new topic     » goto parent     » topic index » view message » categorize

3. Re: OT: Language Design

On Fri, 28 May 2004 12:19:28 +0000, Al Getz <Xaxo at aol.com> wrote:

>As far as goto's, it's always going to be a matter of opinion.
>
>I've had to exit out of nested while loops many times in the
>past and currently there is no way to do it in Euphoria.
>Also, how to know how many levels to exit, 1, 2, more, all?
>Would it help to specify the level?  Probably not.
>Probably a forward goto would make short work of this.
>Would hate to see programs that misuse it though smile
>
>I'd have to vote in favor of 'goto' but only with restrictions,
>such as local file level only.
>
Erm, if Rob deems this enough off-topic to delete this post, I won't
mind, though from previous private posts I doubt he will bother.

This is all "vaporware" sad(

http://palacebuilders.pwp.blueyonder.co.uk/goto.htm

Comments to OpenEU at topica.com, please.

Pete

new topic     » goto parent     » topic index » view message » categorize

4. Re: OT: Language Design

-------------------------------1085777654

In a message dated 5/27/2004 9:27:49 PM Eastern Standard Time, 
guest at RapidEuphoria.com writes:
"There is one thing more important than brevity to a hacker: being able
to do what you want. In the history of programming languages a
surprising amount of effort has gone into preventing programmers from
doing things considered to be improper. This is a dangerously
presumptuous plan. How can the language designer know what the
programmer is going to need to do? I think language designers would do
better to consider their target user to be a genius who will need to do
things they never anticipated, rather than a bumbler who needs to be
protected from himself. The bumbler will shoot himself in the foot
anyway. You may save him from referring to variables in another package,
but you can't save him from writing a badly designed program to solve
the wrong problem, and taking forever to do it."

http://www.paulgraham.com/popular.html
You know, he is absolutely right.  However, not all hackers are bad.  I used 
to be one myself, to tell you the truth.  Hackers invented the Internet.  
Actually, if you think about it, We shouldn't be worried about Hackers. 
Crackers
are who we need to worry about.


<HTML><HEAD>
<META charset=US-ASCII http-equiv=Content-Type content="text/html;
charset=US-ASCII">
<META content="MSHTML 6.00.2800.1400" name=GENERATOR></HEAD>
<BODY style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; BACKGROUND-COLOR: #ff0000">
<DIV>
<DIV>In a message dated 5/27/2004 9:27:49 PM Eastern Standard Time, guest at
RapidEuphoria.com writes:</DIV>
<BLOCKQUOTE style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: blue 2px
solid"><FONT face=Arial>"There is one thing more important than brevity to a
hacker: being able<BR>to do what you want. In the history of programming
languages a<BR>surprising amount of effort has gone into preventing programmers
from<BR>doing things considered to be improper. This is a
dangerously<BR>presumptuous plan. How can the language designer know what
the<BR>programmer is going to need to do? I think language designers would
do<BR>better to consider their target user to be a genius who will need to
do<BR>things they never anticipated, rather than a bumbler who needs to
be<BR>protected from himself. The bumbler will shoot himself in the
foot<BR>anyway. You may save him from referring to variables in another
package,<BR>but you can't save him from writing a badly designed program to
solve<BR>the wrong problem, and taking forever to do
it."<BR><BR>http://www.paulgraham.com/popular.html</FONT></BLOCKQUOTE></DIV>
<DIV><FONT style="BACKGROUND-COLOR: #ff8040" face="Times New Roman"
color=#ffff00>You know, he is absolutely right.&nbsp; However, not all hackers
are bad.&nbsp; I used to be one myself, to tell you the truth.&nbsp; Hackers
invented the Internet.&nbsp; Actually, if you think about it, We shouldn't be
worried about Hackers.&nbsp;&nbsp;Crackers are who we need to worry
about.</FONT></DIV></BODY></HTML>

new topic     » goto parent     » topic index » view message » categorize

5. Re: OT: Language Design

Pete Lomax wrote:
> 

  http://www.paulgraham.com/popular.html

[snip]

> 
> Derek, I don't understand why on earth you regurgitated this trash; it
> goes against everything you have previously said.

I respectfully disagree with this opinion of yours. It may be that I have
simply not made myself clear in the past. I apologize if that is the case.
Can you point me to where I may have implied differently and I'll try
to clarify things, if possible.

> Flexibility is one thing, no protection whatsoever is another.

In which sentence(s) did I advocate "no protection whatsoever"?

My understanding of what Mr. Graham was saying is that a certain class of 
programmers (real experts, which he calls 'hackers' and not crackers) need
tools which allow them to achieve their goals without unnecessary
encumburances. And that, when language designers are creating a 
programming language, they need to be aware of who is their target
audience for the language.

A language with training-wheels (such as LOGO) is suitable for some
purposes that languages that run close to the metal (such as C) are 
not suitable for, and visa versa. 

My take on a language like Euphoria is that it has moved a bit too much
to the protectionist, camp-mother philosophy, and that some minor
releasing of potential for **experts** would be a good idea. 

For example, Euphoria does remove the need for memory pointers, but still
allows their usage for those coders that really want them.

Euphoria already supports a subset of controlled goto idioms : 'call', 
'while', 'for', 'return', and 'exit', yet hasn't implemented other 
controlled goto idioms ('next', 'try-catch', and 'retry'). 

As for uncontrolled goto, I think that if somebody is good enough to use
them, then let them. I know I'm not good enough, so I would never use 
them in Euphoria. Why should my skill level or philosophical outlook
be justification for restricting the abilites of other coders?

Mr. Graham did say "How can the language designer know what 
the programmer is going to need to do?" While this is a true statement,
it is not implying that every language should enable a coder to do
anything. Instead, the language designer would do well to state their
goals for the language and what restrictions are in place, and why.

I believe that for the most part, RDS has done this with Euphoria. Both
RDS and Euphoria is evolving into better entities and I'm truely looking
forward to version 2.5, 2.6, 2.7, ...

-- 
Derek Parnell
Melbourne, Australia

new topic     » goto parent     » topic index » view message » categorize

6. Re: OT: Language Design

On Sun, 30 May 2004 18:12:17 -0700, Derek Parnell
<guest at RapidEuphoria.com> wrote:

>Pete Lomax wrote:
<snip>
I'm sorry, I think I overreacted there blink

>Mr. Graham did say "How can the language designer know what 
>the programmer is going to need to do?" While this is a true statement,
>it is not implying that every language should enable a coder to do
>anything.

I certainly didn't grasp that on first reading...

Pete

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu