Fwd: Re: OT programming languages/ systems for advanced applications on Linux

2011-12-24 Thread PMA

 Original Message 
Subject: Re: [Jprogramming] Debian Forum comparing J to Brainf*
Date: Sat, 24 Dec 2011 14:09:31 -0500
From: Marshall Lochbaum 
To: Programming forum , 
peterarmstr...@aya.yale.edu


Well, I'm not tired of this stuff quite yet, so here goes:

Brainfuck and APL/J/K get compared a lot on account of being "obfuscated."
This is a bit unfair. The correct terms are, respectively, "contorted" and
"terse."

There is one thing that the two languages share: they are each an attempt
to get to the root of programming and SIMPLIFY the discipline. Each can be
 fully specified in a few pages, if you disregard the vocabulary used in an
array language. However, the two have markedly difficult results. Coding in
Brainfuck ends in long strings of >> or + , and true automation is
impossible. On the other hand, J code is very compact, in part because it
makes assignment very simple--no distinction is made between primitive and
user-defined functions.

Nonetheless, people complain that J or Brainfuck code is particularly
complicated. Note the distinction between the "language" and "code" here.
Brainfuck is a simple language with complicated code. We can't refer to the
language as "obfuscated," since that word refers to the addition of
unnecessary detail, and Brainfuck does the opposite. However, the code is
often obfuscated in the sense that it fails to abstract away details, and
thus hinders a higher-level view of the program. Array languages do not
suffer from this difficulty. In fact they are far more extensible than
procedural languages, because they also allow functional manipulation.

I think the word you are in fact looking for to describe these two
languages is "unfamiliar." This word places the blame where it lies--not on
the language, but on the programmer! Given the functional languages in the
list, I won't accuse you of being completely unknown to programming outside
of the C paradigm, but most of the time when I hear similar complaints
they're from people who think a piece of text is a program if and only if
it contains the phrase "for (int i=0; i20) return true; else return
false;" was clearer than the J equivalent ">&20". I hope you can see past
the unfamiliar syntax enough to know that that's false, and I hope you are
open-minded enough to not make the same mistake about APL/J/K before
knowing any of the language.

Marshall

On 12/24/2011 06:44 AM, Miles Fidelman wrote

Any other comments/ suggestions regarding programming languages/
systems for advanced applications on Linux?
Lisp
Smalltalk
Erlang
Haskell
Caml/OCaml
APL - if you're crazy or want to be; or you could go all the way to
Brainfuck (http://esolangs.org/wiki/Brainfuck) for that matter, Ada,
if you're writing mission-critical/safety-critical systems



--
To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org 
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Archive: http://lists.debian.org/4ef6a04c.5040...@aya.yale.edu



Fwd: Re: OT programming languages/ systems for advanced applications on Linux

2011-12-24 Thread Jerome BENOIT



 Original Message 
Subject: Re: OT programming languages/ systems for advanced applications on 
Linux
Date: Sat, 24 Dec 2011 17:23:46 -0500
From: tony baldwin 
To: g62993...@rezozer.net

 - Original Message -

From: Jerome BENOIT
Sent: 12/24/11 04:06 PM
To: debian-user@lists.debian.org
Subject: Re: OT programming languages/ systems for advanced applications on 
Linux

what about D ?

On 24/12/11 21:56, David Christensen wrote:
> On 12/24/2011 06:44 AM, Miles Fidelman wrote:
>> Lisp


I do like lisp.
I've barely played with it, but something about it is...I don't know,
lisp code is pretty to look at.
Is it weird that I think that?
Should I seek therapy?
I've decided I'd really like to learn it, at the very least.
(I know: I like tcl, now lisp...I should start speaking latin, too.)

Ruby looks fun. It looks like the bastard child of tcl and perl, or something.

./tony
--
http://www.tonybaldwin.net
All Tony, all the time!


--
To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org 
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Archive: http://lists.debian.org/4ef65479.5040...@rezozer.net



Re: Fwd: Re: OT programming languages/ systems for advanced applications on Linux

2011-12-24 Thread Vincent Lefevre
On 2011-12-24 18:15:34 +, Tony van der Hoff wrote:
> No doubt it's powerful, and you can do powerful things. The problem is that
> the syntax is so ideosyncratic, that I'm so relieved to get someting finally
> to do what I need, that I can't be bothered expressing it in a very concise
> way.

Well, I have no problems with that, though one should avoid to write
unreadable code (but this is true for every language). I think that
Perl syntax is not really hard to understand once one has spent some
time on it (compare with zsh or sendmail config files... :).

> The TMTOWTDI only gets in the way. Who, other than PERL authors could think
> up such an acronym? Do it one way, and do it intuitively, would be a better
> slogan.

Several people will express things intuitively in different manners.
That's TMTOWTDI.

For instance, some people prefer the OO way, while others will prefer
the imperative way.

> The "Camel Book"  seriously pisses me off, with its silly little asides,
> which add nothing to the material.

I've never read it.

> Give me C, or C++, with its minor ideosyncracies any day. Compiling
> is a pain, but it roots out syntax errors before getting anywhere
> near to running anything.

The problem with C is not the syntax, but the semantics, which may
depend on the implementation or be undefined. And you will generally
get no warnings about semantics errors. The code may run fine on some
platform, but start to fail on a different platform or with different
optimization options. Well-known problems that not all developers are
aware of: integer overflows, automatic conversions that can change
the value (e.g. from signed to unsigned, and this can depend on the
platform), memory aliasing...

-- 
Vincent Lefèvre  - Web: 
100% accessible validated (X)HTML - Blog: 
Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon)


-- 
To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org 
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20111224201603.gf5...@xvii.vinc17.org



Re: Fwd: Re: OT programming languages/ systems for advanced applications on Linux

2011-12-24 Thread Joel Roth
On Sat, Dec 24, 2011 at 06:15:34PM +, Tony van der Hoff wrote:
> On 24/12/11 17:34, Vincent Lefevre wrote:
> >On 2011-12-24 17:06:38 +, Tony van der Hoff wrote:
> >>Yep, that's PERL for you. Having taken over the maintenance of a large
> >>PERL project, I've come to the conclusion that it's IMHO the worst
> >>programming language ever invented. Totally non-intuitive.

To make an analogy:

Mandarin, with its tones, is inferior due to the
non-intuitive way that minor intonation changes meaning.
It is the worst language ever invented.

English, with its irregular rules, is inferior to more
regular languages. 

Japanese, with usage that often lacks explicit signals
to indicate subject or object is inferior to languages
with pointers to this information. Early Christian missionaries
believed it was created by the devil to obstruct their good
works.

German and Hindi, with their complicated cases and genders, are 
inferior to languages with simpler grammars.

All these languages are totally non-intuitive.

Esperanto is a great language, simple, regular, easy to
learn, but few people use it.

Yiddish, now there's a language that is famously expressive,
and at one time in history widely understood.

What would be the Yiddish of programming languages?

The point is, these judgments are largely based on experience,
temperament, aesthetics and personal preference.

As personal a choice as vim vs. emacs. 

Have a nice day (and fun learning whatever languages you
are drawn to or directed to by your employer.)


-- 
Joel Roth


-- 
To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org 
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20111224193202.GB24914@sprite



Re: Fwd: Re: OT programming languages/ systems for advanced applications on Linux

2011-12-24 Thread Tony van der Hoff

On 24/12/11 17:34, Vincent Lefevre wrote:

On 2011-12-24 17:06:38 +, Tony van der Hoff wrote:

Yep, that's PERL for you. Having taken over the maintenance of a large
PERL project, I've come to the conclusion that it's IMHO the worst
programming language ever invented. Totally non-intuitive.


I completely disagree. It's a very powerful language, allowing you
to express things in very concise ways. In every language, you may
find unintuitive things (though that may be a bit subjective). For
instance, in C, a subtraction on integers may not give the same
result as the mathematical one (even when there is no overflow).
In python, you have this silly indentation rules. And so on.


You're at perfect liberty to disagree :).

No doubt it's powerful, and you can do powerful things. The problem is 
that the syntax is so ideosyncratic, that I'm so relieved to get 
someting finally to do what I need, that I can't be bothered expressing 
it in a very concise way.


I believe the problems Lina experienced are typical, and the over-use of 
certain symbols, in particular {}, causes that. Sublimal 
context-switching gives further problems.


The TMTOWTDI only gets in the way. Who, other than PERL authors could 
think up such an acronym? Do it one way, and do it intuitively, would be 
a better slogan.


The "Camel Book"  seriously pisses me off, with its silly little asides, 
which add nothing to the material.


Give me C, or C++, with its minor ideosyncracies any day. Compiling is a 
pain, but it roots out syntax errors before getting anywhere near to 
running anything.


For scripting, PHP.

I agree that pyhon's odd, but for PERL, Let's agree to differ, eh? ;)

Cheers, Tony
--
Tony van der Hoff| mailto:t...@vanderhoff.org
Buckinghamshire, England |


--
To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org 
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Archive: http://lists.debian.org/4ef616c6.80...@vanderhoff.org



Re: Fwd: Re: OT programming languages/ systems for advanced applications on Linux

2011-12-24 Thread Vincent Lefevre
On 2011-12-24 17:06:38 +, Tony van der Hoff wrote:
> Yep, that's PERL for you. Having taken over the maintenance of a large
> PERL project, I've come to the conclusion that it's IMHO the worst
> programming language ever invented. Totally non-intuitive.

I completely disagree. It's a very powerful language, allowing you
to express things in very concise ways. In every language, you may
find unintuitive things (though that may be a bit subjective). For
instance, in C, a subtraction on integers may not give the same
result as the mathematical one (even when there is no overflow).
In python, you have this silly indentation rules. And so on.

-- 
Vincent Lefèvre  - Web: 
100% accessible validated (X)HTML - Blog: 
Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon)


-- 
To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org 
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20111224173443.ge5...@xvii.vinc17.org



Fwd: Re: OT programming languages/ systems for advanced applications on Linux

2011-12-24 Thread Tony van der Hoff

Should have gone to the list; sorry Lina:

 Original Message 
Subject: Re: OT programming languages/ systems for advanced applications 
on Linux

Date: Sat, 24 Dec 2011 16:35:29 +
From: Tony van der Hoff 
To: lina 

On 24/12/11 15:43, lina wrote:


Tonight I am pretty free, so started to read something about perl.

#!/usr/bin/perl

print "Hello World! \n";

$a = 3;

print "$a  \n";

@food = {"apples", "pears", "eels"};

@music = {"whistel", "flute"};

@moremusic = {"organ", @music, "harp"};

push(@food, "eggs");

print @food;
print "@food";

I am so CONFUSED why the output is:
Hello World!
3
HASH(0x19ec998)eggsHASH(0x19ec998) eggs

print @food

is wrong? or something wrong with my box.



Yep, that's PERL for you. Having taken over the maintenance of a large
PERL project, I've come to the conclusion that it's IMHO the worst
programming language ever invented. Totally non-intuitive.

"Hello World" is obvious, as is "3".

@food = {"apples", "pears", "eels"};
Assuming you wanted to create an array, containing those 3 elements, the
correct syntax is
@food = ("apples", "pears", "eels");
You can then print @food; and print "@food";

The construct in braces creates an anonymous hash with an odd number of
elements (bad), and places that in the first array element.
You could retrieve it using "print %{@food[0]}"

The push adds 'eggs' as the second array element, so you'd need to
"print @food[1];" to retrieve that.

Mindboggling, eh? And so it continues for the rest of the language.

You'd probably find it useful to add "use warnings" as the second line
of your program, for the interpreter to emit slightly more help.

--
Tony van der Hoff| mailto:t...@vanderhoff.org
Buckinghamshire, England |


--
To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org 
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Archive: http://lists.debian.org/4ef6069e.3080...@vanderhoff.org