Computer Old Farts Forum
 help / color / mirror / Atom feed
* [COFF] What languges would you like to learn?
@ 2019-12-23 23:27 cym224
  2019-12-24  9:54 ` thomas.paulsen
                   ` (3 more replies)
  0 siblings, 4 replies; 36+ messages in thread
From: cym224 @ 2019-12-23 23:27 UTC (permalink / raw)


A recent thread makes me wonder which languages would people like to 
learn?  (I confess to trying, as Dave does, but time prevents anything 
more that learing syntax and writing toy programmes.  One must write 
something substantial -- not synonomous with large -- to really learn a 
language.)

Erlang, Smalltalk, Prolog, Haskell, and Scheme come to mind...

N.


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-23 23:27 [COFF] What languges would you like to learn? cym224
@ 2019-12-24  9:54 ` thomas.paulsen
  2019-12-24 16:28 ` toby
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 36+ messages in thread
From: thomas.paulsen @ 2019-12-24  9:54 UTC (permalink / raw)


> [COFF] What languges would you like to learn?
golang.

_______________________________________________
COFF mailing list
COFF at minnie.tuhs.org
https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff




^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-23 23:27 [COFF] What languges would you like to learn? cym224
  2019-12-24  9:54 ` thomas.paulsen
@ 2019-12-24 16:28 ` toby
  2019-12-24 16:35   ` lm
  2019-12-24 20:27 ` dave
  2019-12-25 17:31 ` rtomek
  3 siblings, 1 reply; 36+ messages in thread
From: toby @ 2019-12-24 16:28 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 790 bytes --]

On 2019-12-23 6:27 p.m., Nemo Nusquam wrote:
> A recent thread makes me wonder which languages would people like to
> learn?  (I confess to trying, as Dave does, but time prevents anything
> more that learing syntax and writing toy programmes.  One must write
> something substantial -- not synonomous with large -- to really learn a
> language.)
> 
> Erlang, Smalltalk, Prolog, Haskell, and Scheme come to mind...

You have GREAT taste, and that covers the major paradigms.

The late Joe Armstrong had a very similar list!

https://www.quora.com/What-programming-languages-should-all-programmers-know/answer/Toby-Thain

--T

> 
> N.
> _______________________________________________
> COFF mailing list
> COFF at minnie.tuhs.org
> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff



^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-24 16:28 ` toby
@ 2019-12-24 16:35   ` lm
  2019-12-24 17:50     ` 
                       ` (3 more replies)
  0 siblings, 4 replies; 36+ messages in thread
From: lm @ 2019-12-24 16:35 UTC (permalink / raw)


On Tue, Dec 24, 2019 at 11:28:12AM -0500, Toby Thain wrote:
> On 2019-12-23 6:27 p.m., Nemo Nusquam wrote:
> > A recent thread makes me wonder which languages would people like to
> > learn??? (I confess to trying, as Dave does, but time prevents anything
> > more that learing syntax and writing toy programmes.?? One must write
> > something substantial -- not synonomous with large -- to really learn a
> > language.)
> > 
> > Erlang, Smalltalk, Prolog, Haskell, and Scheme come to mind...
> 
> You have GREAT taste, and that covers the major paradigms.

As a systems guy who likes to get all the perf he can out of the machine,
those are not what I'd reach for 1st, 2nd, or 3rd.  I still like C, it's
what I reach for first.  Go might be second.

For scripting I designed http://little-lang.org which looks a lot like
interpreted C with a bunch of neat extensions (ever wanted strings in
your switch() statement?  How about regexps?).  I

The listed languages are what a very small set of programmers passionately
love but they never go anywhere because the rank and file programmers don't
get it.  I can think of lots of examples where some smart dude pushed 
lisp in a company and it either never went anywhere or it died when the
dude left.

There is a lot to be said for programming in the most simple way possible,
we had a saying at my company "Write code so it is the most readable.
Because 6 months from now you'll not remember it, it will be like reading
someone else's code".

Code is write once, read many.  Optimize for that.


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-24 16:35   ` lm
@ 2019-12-24 17:50     ` 
  2019-12-24 18:04       ` lm
  2019-12-25  3:34     ` dave
                       ` (2 subsequent siblings)
  3 siblings, 1 reply; 36+ messages in thread
From:  @ 2019-12-24 17:50 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2616 bytes --]

On 24 Dec 2019 08:35 -0800, from lm at mcvoy.com (Larry McVoy):
> There is a lot to be said for programming in the most simple way possible,
> we had a saying at my company "Write code so it is the most readable.
> Because 6 months from now you'll not remember it, it will be like reading
> someone else's code".
> 
> Code is write once, read many.  Optimize for that.

That's also why I dislike it when people remove things like explicit
null checks and the likes, only because technically the value is
guaranteed to be not-null at that point (either based on the type, or
the code leading up to that point). Unless it's obvious that something
won't be null, then let the compiler optimize that out if it can be
safely optimized out, I say; there's value to being explicit in
non-obvious cases, in part because over the lifetime of the code base,
as you say, you are going to spend more time _anyway_ reading that
code than you spent writing that one line or that one expression.

Same reason why I'll sometimes add "unnecessary" parenthesis to
expressions. If you parse the expression and know all precedence rules
by heart (sometimes including the more esoteric ones; quick now,
imagining you don't do a lot of bit-banging, does `^` have precedence
over `&`? the existence of the joke "goes to" `-->` operator is just
icing on the cake here), those can technically be unnecessary; but
having them often adds _clarity_ that helps convey intent (yes, I
really meant to do this) and meaning (this is how to parse the
expression), at the cost of a totally insignificant increase in build
times. To me, that's an appropriate trade-off.

That said, I'd rather read code that makes good use of language
features such as, say, the conditional operator (`?:` in C-derived
languages), than code that does the same thing using a bunch of
if/else constructs and temporary variables, just because someone might
not know what `x?y:z` in the middle of a statement means. That latter
is something that can be solved by a five-minute explanation when they
encounter it, instead of burdening everyone who reads the code with
extra crud just in the event that someone doesn't know about the
conditional operator. Now, that might not be (hopefully was not) what
you meant, but to me, "write readable code" should not be taken to
mean "write code that does not require knowledge of the programming
language to read", as sometimes happens at the other extreme end of
the scale.

-- 
Michael Kjörling • https://michael.kjorling.se • michael at kjorling.se
 “Remember when, on the Internet, nobody cared that you were a dog?”



^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-24 17:50     ` 
@ 2019-12-24 18:04       ` lm
  0 siblings, 0 replies; 36+ messages in thread
From: lm @ 2019-12-24 18:04 UTC (permalink / raw)


On Tue, Dec 24, 2019 at 05:50:35PM +0000, Michael Kj??rling wrote:
> On 24 Dec 2019 08:35 -0800, from lm at mcvoy.com (Larry McVoy):
> > There is a lot to be said for programming in the most simple way possible,
> > we had a saying at my company "Write code so it is the most readable.
> > Because 6 months from now you'll not remember it, it will be like reading
> > someone else's code".
> > 
> > Code is write once, read many.  Optimize for that.
> 
> Same reason why I'll sometimes add "unnecessary" parenthesis to
> expressions. If you parse the expression and know all precedence rules
> by heart (sometimes including the more esoteric ones; quick now,
> imagining you don't do a lot of bit-banging, does `^` have precedence
> over `&`? the existence of the joke "goes to" `-->` operator is just
> icing on the cake here), those can technically be unnecessary; but
> having them often adds _clarity_ that helps convey intent (yes, I
> really meant to do this) and meaning (this is how to parse the
> expression), at the cost of a totally insignificant increase in build
> times. To me, that's an appropriate trade-off.

We could work together, I do exactly the same thing.

> That said, I'd rather read code that makes good use of language
> features such as, say, the conditional operator (`?:` in C-derived
> languages), than code that does the same thing using a bunch of
> if/else constructs and temporary variables, just because someone might
> not know what `x?y:z` in the middle of a statement means. That latter
> is something that can be solved by a five-minute explanation when they
> encounter it, instead of burdening everyone who reads the code with
> extra crud just in the event that someone doesn't know about the
> conditional operator. Now, that might not be (hopefully was not) what
> you meant, but to me, "write readable code" should not be taken to
> mean "write code that does not require knowledge of the programming
> language to read", as sometimes happens at the other extreme end of
> the scale.

Again, 100% agree.


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-23 23:27 [COFF] What languges would you like to learn? cym224
  2019-12-24  9:54 ` thomas.paulsen
  2019-12-24 16:28 ` toby
@ 2019-12-24 20:27 ` dave
  2019-12-25 17:31 ` rtomek
  3 siblings, 0 replies; 36+ messages in thread
From: dave @ 2019-12-24 20:27 UTC (permalink / raw)


On Mon, 23 Dec 2019, Nemo Nusquam wrote:

> A recent thread makes me wonder which languages would people like to 
> learn? (I confess to trying, as Dave does, but time prevents anything 
> more that learing syntax and writing toy programmes.  One must write 
> something substantial -- not synonomous with large -- to really learn a 
> language.)

Well, being retired I'm no longer compelled to write programs; I just do 
it as a hobby, like people collect stamps :-)

> Erlang, Smalltalk, Prolog, Haskell, and Scheme come to mind...

I might get around to them...

-- Dave


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-24 16:35   ` lm
  2019-12-24 17:50     ` 
@ 2019-12-25  3:34     ` dave
  2019-12-25 16:02     ` cym224
  2019-12-25 17:05     ` thomas.paulsen
  3 siblings, 0 replies; 36+ messages in thread
From: dave @ 2019-12-25  3:34 UTC (permalink / raw)


On Tue, 24 Dec 2019, Larry McVoy wrote:

> There is a lot to be said for programming in the most simple way 
> possible, we had a saying at my company "Write code so it is the most 
> readable. Because 6 months from now you'll not remember it, it will be 
> like reading someone else's code".

That's also my personal mantra when writing my own code, because six 
months from now I won't have a clue what was going through my head...

-- Dave


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-24 16:35   ` lm
  2019-12-24 17:50     ` 
  2019-12-25  3:34     ` dave
@ 2019-12-25 16:02     ` cym224
  2019-12-25 17:05     ` thomas.paulsen
  3 siblings, 0 replies; 36+ messages in thread
From: cym224 @ 2019-12-25 16:02 UTC (permalink / raw)


On 24/12/2019, Larry McVoy <lm at mcvoy.com> wrote:
> On Tue, Dec 24, 2019 at 11:28:12AM -0500, Toby Thain wrote:
>> On 2019-12-23 6:27 p.m., Nemo Nusquam wrote:
>> > A recent thread makes me wonder which languages would people like to
>> > learn??? (I confess to trying, as Dave does, but time prevents anything
>> > more that learing syntax and writing toy programmes.?? One must write
>> > something substantial -- not synonomous with large -- to really learn a
>> > language.)
>> >
>> > Erlang, Smalltalk, Prolog, Haskell, and Scheme come to mind...
>>
>> You have GREAT taste, and that covers the major paradigms.
>
> As a systems guy who likes to get all the perf he can out of the machine,
> those are not what I'd reach for 1st, 2nd, or 3rd.  I still like C, it's
> what I reach for first.  Go might be second.

As usual, Larry, YMMV.  Erlang/OTP is heavily used in telecoms back-end.

N.


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-24 16:35   ` lm
                       ` (2 preceding siblings ...)
  2019-12-25 16:02     ` cym224
@ 2019-12-25 17:05     ` thomas.paulsen
  3 siblings, 0 replies; 36+ messages in thread
From: thomas.paulsen @ 2019-12-25 17:05 UTC (permalink / raw)


>As a systems guy who likes to get all the perf he can out of the machine,
>those are not what I'd reach for 1st, 2nd, or 3rd.  I still like C, it's
>what I reach for first.  Go might be second.
that describes exactly my preferences, however beside the perf issue, I like to be as close as possible to the machine and the system calls.




^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-23 23:27 [COFF] What languges would you like to learn? cym224
                   ` (2 preceding siblings ...)
  2019-12-24 20:27 ` dave
@ 2019-12-25 17:31 ` rtomek
  2019-12-25 19:13   ` athornton
  2019-12-27 17:46   ` cym224
  3 siblings, 2 replies; 36+ messages in thread
From: rtomek @ 2019-12-25 17:31 UTC (permalink / raw)


On Mon, Dec 23, 2019 at 06:27:48PM -0500, Nemo Nusquam wrote:
> A recent thread makes me wonder which languages would people like to
> learn?  (I confess to trying, as Dave does, but time prevents
> anything more that learing syntax and writing toy programmes.  One
> must write something substantial -- not synonomous with large -- to
> really learn a language.)
> 
> Erlang, Smalltalk, Prolog, Haskell, and Scheme come to mind...

I will swim upstream and say: if I had more free time, I would
probably want to finish reading "The AWK Programming Language" by Aho,
Kernighan snd Weinberger. The language is quite limited (as I have
written in another email of mine) but I think it is grossly
underappreciated and quite a few things can be squeezed out from it.

After that, I could find myself some decent Forth introduction and
finish reading that one, too.

But if you have not had experience with Scheme yet, try it out. LISPs
in general are worth learning, IMHO. And much more practical than what
a popular opinion says.

-- 
Regards,
Tomasz Rola

--
** A C programmer asked whether computer had Buddha's nature.      **
** As the answer, master did "rm -rif" on the programmer's home    **
** directory. And then the C programmer became enlightened...      **
**                                                                 **
** Tomasz Rola          mailto:tomasz_rola at bigfoot.com             **


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-25 17:31 ` rtomek
@ 2019-12-25 19:13   ` athornton
  2019-12-26  0:23     ` me
  2019-12-27 17:46   ` cym224
  1 sibling, 1 reply; 36+ messages in thread
From: athornton @ 2019-12-25 19:13 UTC (permalink / raw)


Maybe this will be the year I finally learn Rust.  Like Larry if I am
feeling like using a compiled language, I reach for Go or C (probably in
that order these days), and my day job is mostly Python, which once you get
over the syntactic whitespace, really is pretty much just executable
pseudocode, which turns out to be rather nice.

FORTH is fun and everyone should learn enough of it to get the feel of a
stack-based language.  You can have most of the fun with a proper HP
calculator (I never owned a better calculator than the 28S).  Not sure how
relevant FORTH is anymore, but it makes a nice palate-cleanser.  Of course
if you turn the stack on its side you have a list, and writing in LISP
dialects is also fun.

This also may be the year I dust off and get good at IBM 370 assembler.
I've got a vanilla VM/370r6 and one with the SixPack and DIAG58 and all the
bells and whistles (including a screen editor not a million miles from good
old XEDIT) running under Hercules.  So it seems like taking a crack at
getting v7 for the 370 going is something I really should do.  And I talked
to someone--don't remember who without searching my email archives--about
bootstrapping from v7 to whatever the latest Research Unix we can find is.
That'd be cool too.

Adam

On Wed, Dec 25, 2019 at 10:31 AM Tomasz Rola <rtomek at ceti.pl> wrote:

> On Mon, Dec 23, 2019 at 06:27:48PM -0500, Nemo Nusquam wrote:
> > A recent thread makes me wonder which languages would people like to
> > learn?  (I confess to trying, as Dave does, but time prevents
> > anything more that learing syntax and writing toy programmes.  One
> > must write something substantial -- not synonomous with large -- to
> > really learn a language.)
> >
> > Erlang, Smalltalk, Prolog, Haskell, and Scheme come to mind...
>
> I will swim upstream and say: if I had more free time, I would
> probably want to finish reading "The AWK Programming Language" by Aho,
> Kernighan snd Weinberger. The language is quite limited (as I have
> written in another email of mine) but I think it is grossly
> underappreciated and quite a few things can be squeezed out from it.
>
> After that, I could find myself some decent Forth introduction and
> finish reading that one, too.
>
> But if you have not had experience with Scheme yet, try it out. LISPs
> in general are worth learning, IMHO. And much more practical than what
> a popular opinion says.
>
> --
> Regards,
> Tomasz Rola
>
> --
> ** A C programmer asked whether computer had Buddha's nature.      **
> ** As the answer, master did "rm -rif" on the programmer's home    **
> ** directory. And then the C programmer became enlightened...      **
> **                                                                 **
> ** Tomasz Rola          mailto:tomasz_rola at bigfoot.com             **
> _______________________________________________
> COFF mailing list
> COFF at minnie.tuhs.org
> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20191225/9350f89a/attachment.html>


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-25 19:13   ` athornton
@ 2019-12-26  0:23     ` me
  2019-12-26  1:54       ` wobblygong
  0 siblings, 1 reply; 36+ messages in thread
From: me @ 2019-12-26  0:23 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 3767 bytes --]

I’m surprised Racket hasn’t come up on this thread yet. It was the first
LISP I learned and was incredibly rewarding for my day job as a developer.
I only touched its surface, but would love the opportunity to dive deeper
into some of its abilities to create domain specific languages for
specialized tasks.

On Wed, Dec 25, 2019 at 2:13 PM Adam Thornton <athornton at gmail.com> wrote:

> Maybe this will be the year I finally learn Rust.  Like Larry if I am
> feeling like using a compiled language, I reach for Go or C (probably in
> that order these days), and my day job is mostly Python, which once you get
> over the syntactic whitespace, really is pretty much just executable
> pseudocode, which turns out to be rather nice.
>
> FORTH is fun and everyone should learn enough of it to get the feel of a
> stack-based language.  You can have most of the fun with a proper HP
> calculator (I never owned a better calculator than the 28S).  Not sure how
> relevant FORTH is anymore, but it makes a nice palate-cleanser.  Of course
> if you turn the stack on its side you have a list, and writing in LISP
> dialects is also fun.
>
> This also may be the year I dust off and get good at IBM 370 assembler.
> I've got a vanilla VM/370r6 and one with the SixPack and DIAG58 and all the
> bells and whistles (including a screen editor not a million miles from good
> old XEDIT) running under Hercules.  So it seems like taking a crack at
> getting v7 for the 370 going is something I really should do.  And I talked
> to someone--don't remember who without searching my email archives--about
> bootstrapping from v7 to whatever the latest Research Unix we can find is.
> That'd be cool too.
>
>
> Adam
>
> On Wed, Dec 25, 2019 at 10:31 AM Tomasz Rola <rtomek at ceti.pl> wrote:
>
>> On Mon, Dec 23, 2019 at 06:27:48PM -0500, Nemo Nusquam wrote:
>> > A recent thread makes me wonder which languages would people like to
>> > learn?  (I confess to trying, as Dave does, but time prevents
>> > anything more that learing syntax and writing toy programmes.  One
>> > must write something substantial -- not synonomous with large -- to
>> > really learn a language.)
>> >
>> > Erlang, Smalltalk, Prolog, Haskell, and Scheme come to mind...
>>
>> I will swim upstream and say: if I had more free time, I would
>> probably want to finish reading "The AWK Programming Language" by Aho,
>> Kernighan snd Weinberger. The language is quite limited (as I have
>> written in another email of mine) but I think it is grossly
>> underappreciated and quite a few things can be squeezed out from it.
>>
>> After that, I could find myself some decent Forth introduction and
>> finish reading that one, too.
>>
>> But if you have not had experience with Scheme yet, try it out. LISPs
>> in general are worth learning, IMHO. And much more practical than what
>> a popular opinion says.
>>
>> --
>> Regards,
>> Tomasz Rola
>>
>> --
>> ** A C programmer asked whether computer had Buddha's nature.      **
>> ** As the answer, master did "rm -rif" on the programmer's home    **
>> ** directory. And then the C programmer became enlightened...      **
>> **                                                                 **
>> ** Tomasz Rola          mailto:tomasz_rola at bigfoot.com             **
>> _______________________________________________
>> COFF mailing list
>> COFF at minnie.tuhs.org
>> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>>
> _______________________________________________
> COFF mailing list
> COFF at minnie.tuhs.org
> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20191225/b82347ec/attachment-0001.html>


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26  0:23     ` me
@ 2019-12-26  1:54       ` wobblygong
  2019-12-26  3:44         ` dave
  2019-12-26 15:43         ` dfawcus+lists-coff
  0 siblings, 2 replies; 36+ messages in thread
From: wobblygong @ 2019-12-26  1:54 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 5276 bytes --]

I'm thinking of finally learning C++. Go and Rust sound like a good 
challenge, except when you put the two names together and it sounds like 
a command (Like that famous royal couple, Chuck and Die. Not the name 
for a restaurant, let alone a fast food joint.). And some day I intend 
learning Lisp and Scheme, but I've never made the time for it yet.

I've learnt Pascal and C and SQL and Java and (believe it or not) CNC 
part programming, had some introduction to Lisp and Modula2 and Oberon. 
I've even looked at Ada. Depending on the usability of DOSemu and 
FreeDOS, I might have another go at getting my head around Intel's i86 
assembler, but I think the time might be better spent learn g/as.

Wesley Parish

On 26/12/19 1:23 pm, Ryan Merrill wrote:
> I’m surprised Racket hasn’t come up on this thread yet. It was the 
> first LISP I learned and was incredibly rewarding for my day job as a 
> developer. I only touched its surface, but would love the opportunity 
> to dive deeper into some of its abilities to create domain specific 
> languages for specialized tasks.
>
> On Wed, Dec 25, 2019 at 2:13 PM Adam Thornton <athornton at gmail.com 
> <mailto:athornton at gmail.com>> wrote:
>
>     Maybe this will be the year I finally learn Rust. Like Larry if I
>     am feeling like using a compiled language, I reach for Go or C
>     (probably in that order these days), and my day job is mostly
>     Python, which once you get over the syntactic whitespace, really
>     is pretty much just executable pseudocode, which turns out to be
>     rather nice.
>
>     FORTH is fun and everyone should learn enough of it to get the
>     feel of a stack-based language.  You can have most of the fun with
>     a proper HP calculator (I never owned a better calculator than the
>     28S).  Not sure how relevant FORTH is anymore, but it makes a nice
>     palate-cleanser.  Of course if you turn the stack on its side you
>     have a list, and writing in LISP dialects is also fun.
>
>     This also may be the year I dust off and get good at IBM 370
>     assembler.  I've got a vanilla VM/370r6 and one with the SixPack
>     and DIAG58 and all the bells and whistles (including a screen
>     editor not a million miles from good old XEDIT) running under
>     Hercules.  So it seems like taking a crack at getting v7 for the
>     370 going is something I really should do.  And I talked to
>     someone--don't remember who without searching my email
>     archives--about bootstrapping from v7 to whatever the latest
>     Research Unix we can find is.  That'd be cool too.
>
>
>     Adam
>
>     On Wed, Dec 25, 2019 at 10:31 AM Tomasz Rola <rtomek at ceti.pl
>     <mailto:rtomek at ceti.pl>> wrote:
>
>         On Mon, Dec 23, 2019 at 06:27:48PM -0500, Nemo Nusquam wrote:
>         > A recent thread makes me wonder which languages would people
>         like to
>         > learn?  (I confess to trying, as Dave does, but time prevents
>         > anything more that learing syntax and writing toy
>         programmes.  One
>         > must write something substantial -- not synonomous with
>         large -- to
>         > really learn a language.)
>         >
>         > Erlang, Smalltalk, Prolog, Haskell, and Scheme come to mind...
>
>         I will swim upstream and say: if I had more free time, I would
>         probably want to finish reading "The AWK Programming Language"
>         by Aho,
>         Kernighan snd Weinberger. The language is quite limited (as I have
>         written in another email of mine) but I think it is grossly
>         underappreciated and quite a few things can be squeezed out
>         from it.
>
>         After that, I could find myself some decent Forth introduction and
>         finish reading that one, too.
>
>         But if you have not had experience with Scheme yet, try it
>         out. LISPs
>         in general are worth learning, IMHO. And much more practical
>         than what
>         a popular opinion says.
>
>         -- 
>         Regards,
>         Tomasz Rola
>
>         --
>         ** A C programmer asked whether computer had Buddha's nature. 
>             **
>         ** As the answer, master did "rm -rif" on the programmer's
>         home    **
>         ** directory. And then the C programmer became enlightened... 
>             **
>         **            **
>         ** Tomasz Rola          mailto:tomasz_rola at bigfoot.com
>         <mailto:tomasz_rola at bigfoot.com>          **
>         _______________________________________________
>         COFF mailing list
>         COFF at minnie.tuhs.org <mailto:COFF at minnie.tuhs.org>
>         https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>
>     _______________________________________________
>     COFF mailing list
>     COFF at minnie.tuhs.org <mailto:COFF at minnie.tuhs.org>
>     https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>
>
> _______________________________________________
> COFF mailing list
> COFF at minnie.tuhs.org
> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20191226/9a82f51d/attachment.html>


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26  1:54       ` wobblygong
@ 2019-12-26  3:44         ` dave
  2019-12-26  4:00           ` lm
  2019-12-26 15:43         ` dfawcus+lists-coff
  1 sibling, 1 reply; 36+ messages in thread
From: dave @ 2019-12-26  3:44 UTC (permalink / raw)


On Thu, 26 Dec 2019, Wesley Parish wrote:

> I'm thinking of finally learning C++.  [...]

C++?  That way lies madness :-)  I had to teach myself it once (with the 
aid of The Book) and was glad to leave it behind.  Oh, it was also the
first OO lang that I'd ever used, which probably didn't help.

I can still read it, bot no way will I go back to writing in it...

To be fair, though, I understand it's matured a bit since the original; 
the only way to debug it was to go back to the fugly C that it generated, 
and figure out what you wrote in C++...

-- Dave


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26  3:44         ` dave
@ 2019-12-26  4:00           ` lm
  2019-12-26  5:43             ` wobblygong
  0 siblings, 1 reply; 36+ messages in thread
From: lm @ 2019-12-26  4:00 UTC (permalink / raw)


On Thu, Dec 26, 2019 at 02:44:06PM +1100, Dave Horsfall wrote:
> On Thu, 26 Dec 2019, Wesley Parish wrote:
> 
> >I'm thinking of finally learning C++.  [...]
> 
> C++?  That way lies madness :-)  I had to teach myself it once (with the aid
> of The Book) and was glad to leave it behind.  Oh, it was also the
> first OO lang that I'd ever used, which probably didn't help.
> 
> I can still read it, bot no way will I go back to writing in it...

Amen, brother.  Bell Labs did some great things, a lot of great things,
but C++ is not one of them.

I read the book and wanted to like it, I liked how constructors/destructors
stacked, that seemed elegant to me.  I wanted that for all the methods and
soon found out only allocation/deallocation stacked.  That seemed lame.

C++ seems to encourage complexity and I hate complexity.  I tolerate
it when there is no other way, but as my math kids say, if you have the
right answer, it is beautiful and simple.  Complex is reserved for when
you haven't figured it out yet.  That's not totally fair, I've written
some complex code but I did have the nagging feeling there must be a
simpler way.

C++ teams are riddled with rules "don't use this, don't use that".  It's
an interesting language to look at but I'll choose C over C++ every time.
You can fake OO in C, Sun did it with vnodes and it worked just fine.  I'd
rather fake it and have it be simple than have C++ and have it be weird.

That might be me just being an old fart but I have yet to have someone
I admire tell me I need to use C++.


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26  4:00           ` lm
@ 2019-12-26  5:43             ` wobblygong
  2019-12-26 11:49               ` tih
  2019-12-26 17:57               ` bakul
  0 siblings, 2 replies; 36+ messages in thread
From: wobblygong @ 2019-12-26  5:43 UTC (permalink / raw)


I will admit the modern version reads a lot more cleanly than the
older versions. They finally got rid of the pretense that a C++ header
file was the same sort of thing as a C header file.

I tried to learn it back in the nineties with one of the Sams Teach
Yourself books and Borland's Turbo C++ compiler (before I switched to
Linux), but at the end I was still as mystified as before. It took
immersion into Java before I finally got the hang of object
orientation, and Java's still a lot smaller than C++.

A friend wants me to write some utilities for a C++ project he's got,
so I figure I may as well help him out. Otherwise I'd be just as happy
without C++. I'll try to keep the complexity down to the limit
suggested by the Unix philosophy - a piece of code that does only one
thing and does it well. :)

Wesley Parish

On 12/26/19, Larry McVoy <lm at mcvoy.com> wrote:
> On Thu, Dec 26, 2019 at 02:44:06PM +1100, Dave Horsfall wrote:
>> On Thu, 26 Dec 2019, Wesley Parish wrote:
>>
>> >I'm thinking of finally learning C++.  [...]
>>
>> C++?  That way lies madness :-)  I had to teach myself it once (with the
>> aid
>> of The Book) and was glad to leave it behind.  Oh, it was also the
>> first OO lang that I'd ever used, which probably didn't help.
>>
>> I can still read it, bot no way will I go back to writing in it...
>
> Amen, brother.  Bell Labs did some great things, a lot of great things,
> but C++ is not one of them.
>
> I read the book and wanted to like it, I liked how constructors/destructors
> stacked, that seemed elegant to me.  I wanted that for all the methods and
> soon found out only allocation/deallocation stacked.  That seemed lame.
>
> C++ seems to encourage complexity and I hate complexity.  I tolerate
> it when there is no other way, but as my math kids say, if you have the
> right answer, it is beautiful and simple.  Complex is reserved for when
> you haven't figured it out yet.  That's not totally fair, I've written
> some complex code but I did have the nagging feeling there must be a
> simpler way.
>
> C++ teams are riddled with rules "don't use this, don't use that".  It's
> an interesting language to look at but I'll choose C over C++ every time.
> You can fake OO in C, Sun did it with vnodes and it worked just fine.  I'd
> rather fake it and have it be simple than have C++ and have it be weird.
>
> That might be me just being an old fart but I have yet to have someone
> I admire tell me I need to use C++.
> _______________________________________________
> COFF mailing list
> COFF at minnie.tuhs.org
> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26  5:43             ` wobblygong
@ 2019-12-26 11:49               ` tih
  2019-12-26 15:33                 ` lm
                                   ` (2 more replies)
  2019-12-26 17:57               ` bakul
  1 sibling, 3 replies; 36+ messages in thread
From: tih @ 2019-12-26 11:49 UTC (permalink / raw)


Wesley Parish <wobblygong at gmail.com> wrote:

> It took immersion into Java before I finally got the hang of object
> orientation, and Java's still a lot smaller than C++.

This quote may be relevant to that:

"I made up the term 'object-oriented', and I can tell you I didn't
have C++ in mind!"  --Alan Kay to Bjarne Stroustrup at OOPSLA 1997.

...and here's GLS, answering critical comments about Java:

"We were not out to win over the Lisp programmers; we were after the
C++ programmers.  We managed to drag a lot of them about halfway to
Lisp.  Aren't you happy?"    --Guy L. Steele on the creation of Java

Larry McVoy <lm at mcvoy.com> wrote:

> C++ seems to encourage complexity and I hate complexity.

This reminds me of something Erik Naggum said (about another language,
and in harsher words (as was his wont), but the underlying point about
the language affecting how problems are solved is the same):

"It's not that perl programmers are idiots, it's that the language rewards
idiotic behavior in a way that no other language or tool has ever done."

-tih
-- 
Most people who graduate with CS degrees don't understand the significance
of Lisp.  Lisp is the most important idea in computer science.  --Alan Kay


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 11:49               ` tih
@ 2019-12-26 15:33                 ` lm
  2019-12-26 16:34                 ` thomas.paulsen
  2019-12-27  3:00                 ` dave
  2 siblings, 0 replies; 36+ messages in thread
From: lm @ 2019-12-26 15:33 UTC (permalink / raw)


On Thu, Dec 26, 2019 at 12:49:20PM +0100, Tom Ivar Helbekkmo wrote:
> This reminds me of something Erik Naggum said (about another language,
> and in harsher words (as was his wont), but the underlying point about
> the language affecting how problems are solved is the same):
> 
> "It's not that perl programmers are idiots, it's that the language rewards
> idiotic behavior in a way that no other language or tool has ever done."

That's true but idiots can write bad code in any language, there is no
way to make up for bad programmers.

In defense of perl, well perl4, I wrote almost an entire source management
system in perl.  I rewrote it twice (so 3 attempts), and the last version
was very maintainable perl.  I had to be disciplined about it but I got
to a point that I wrote perl that I could debug 6 months later.

If you are talking about perl5/6, yeah, never warmed up to that.  Perl4
was a pleasant mix of sed/awk/maybe Cish that I liked a lot.


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26  1:54       ` wobblygong
  2019-12-26  3:44         ` dave
@ 2019-12-26 15:43         ` dfawcus+lists-coff
  1 sibling, 0 replies; 36+ messages in thread
From: dfawcus+lists-coff @ 2019-12-26 15:43 UTC (permalink / raw)


On Thu, Dec 26, 2019 at 02:54:03PM +1300, Wesley Parish wrote:
> Depending on the usability of DOSemu and FreeDOS,

I've not used either in a while.  These days when I find a need
to run an old DOS based program, I just run up one of the versions
of DOSbox.  On the Mac, choosing Boxer.

Despite being intended for running games, they're actually not
too bad for running some of the old development tools.

DF


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 11:49               ` tih
  2019-12-26 15:33                 ` lm
@ 2019-12-26 16:34                 ` thomas.paulsen
  2019-12-26 16:53                   ` lm
  2019-12-27  3:00                 ` dave
  2 siblings, 1 reply; 36+ messages in thread
From: thomas.paulsen @ 2019-12-26 16:34 UTC (permalink / raw)


Larry McVoy <lm at mcvoy.com> wrote:

> C++ seems to encourage complexity and I hate complexity.
... by adding generics plus object orientation to the  complexity of C.

However the (Mr. Big) attitude of some C++ developer teams seems to be the  real problem, 'forcing' each other to use all the fancy features of the language. Beside that, one can easily write modest OO code having many advantages over C code, like name spaces, classes, containers, strings etc.




^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 16:34                 ` thomas.paulsen
@ 2019-12-26 16:53                   ` lm
  0 siblings, 0 replies; 36+ messages in thread
From: lm @ 2019-12-26 16:53 UTC (permalink / raw)


On Thu, Dec 26, 2019 at 05:34:29PM +0100, Thomas Paulsen wrote:
> Larry McVoy <lm at mcvoy.com> wrote:
> 
> > C++ seems to encourage complexity and I hate complexity.
> ... by adding generics plus object orientation to the  complexity of C.
> 
> However the (Mr. Big) attitude of some C++ developer teams seems to be
> the  real problem, 'forcing' each other to use all the fancy features of
> the language. Beside that, one can easily write modest OO code having
> many advantages over C code, like name spaces, classes, containers,
> strings etc.

What I'd really like is a "C+".  Take C, cherry pick stuff that obviously
makes C better, repeat.

It's basically what we did with http://little-lang.org


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26  5:43             ` wobblygong
  2019-12-26 11:49               ` tih
@ 2019-12-26 17:57               ` bakul
  2019-12-26 21:28                 ` davida
  1 sibling, 1 reply; 36+ messages in thread
From: bakul @ 2019-12-26 17:57 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 3315 bytes --]

You can write “cleaner C++” but you will also need to read, understand & possibly
modify other people’s code. But don’t let the naysayers stop you. You must find
out for yourself! You must speak the native language of the community you want
to be part of. If you deride their local language and proselytize Esperanto, the
natives may not take kindly to you!

> On Dec 25, 2019, at 9:43 PM, Wesley Parish <wobblygong at gmail.com> wrote:
> 
> I will admit the modern version reads a lot more cleanly than the
> older versions. They finally got rid of the pretense that a C++ header
> file was the same sort of thing as a C header file.
> 
> I tried to learn it back in the nineties with one of the Sams Teach
> Yourself books and Borland's Turbo C++ compiler (before I switched to
> Linux), but at the end I was still as mystified as before. It took
> immersion into Java before I finally got the hang of object
> orientation, and Java's still a lot smaller than C++.
> 
> A friend wants me to write some utilities for a C++ project he's got,
> so I figure I may as well help him out. Otherwise I'd be just as happy
> without C++. I'll try to keep the complexity down to the limit
> suggested by the Unix philosophy - a piece of code that does only one
> thing and does it well. :)
> 
> Wesley Parish
> 
>> On 12/26/19, Larry McVoy <lm at mcvoy.com> wrote:
>>> On Thu, Dec 26, 2019 at 02:44:06PM +1100, Dave Horsfall wrote:
>>>> On Thu, 26 Dec 2019, Wesley Parish wrote:
>>> 
>>>> I'm thinking of finally learning C++.  [...]
>>> 
>>> C++?  That way lies madness :-)  I had to teach myself it once (with the
>>> aid
>>> of The Book) and was glad to leave it behind.  Oh, it was also the
>>> first OO lang that I'd ever used, which probably didn't help.
>>> 
>>> I can still read it, bot no way will I go back to writing in it...
>> 
>> Amen, brother.  Bell Labs did some great things, a lot of great things,
>> but C++ is not one of them.
>> 
>> I read the book and wanted to like it, I liked how constructors/destructors
>> stacked, that seemed elegant to me.  I wanted that for all the methods and
>> soon found out only allocation/deallocation stacked.  That seemed lame.
>> 
>> C++ seems to encourage complexity and I hate complexity.  I tolerate
>> it when there is no other way, but as my math kids say, if you have the
>> right answer, it is beautiful and simple.  Complex is reserved for when
>> you haven't figured it out yet.  That's not totally fair, I've written
>> some complex code but I did have the nagging feeling there must be a
>> simpler way.
>> 
>> C++ teams are riddled with rules "don't use this, don't use that".  It's
>> an interesting language to look at but I'll choose C over C++ every time.
>> You can fake OO in C, Sun did it with vnodes and it worked just fine.  I'd
>> rather fake it and have it be simple than have C++ and have it be weird.
>> 
>> That might be me just being an old fart but I have yet to have someone
>> I admire tell me I need to use C++.
>> _______________________________________________
>> COFF mailing list
>> COFF at minnie.tuhs.org
>> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>> 
> _______________________________________________
> COFF mailing list
> COFF at minnie.tuhs.org
> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff



^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 17:57               ` bakul
@ 2019-12-26 21:28                 ` davida
  2019-12-26 21:37                   ` lm
                                     ` (2 more replies)
  0 siblings, 3 replies; 36+ messages in thread
From: davida @ 2019-12-26 21:28 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4199 bytes --]

C++ is several different languages in one compiler. 

You can use it as a stricter C, as a C with some syntactic support of ADTs, as C++98-style OO, or as a C++17 style meta-programming system.  And I’ve probably missed a few. 

The resulting complexity requires a lot of discipline to use successfully, especially in a large team.

Java competes pretty successfully with the C++98-style OO subset.  C11 now competes with the stricter C subset.

The C++17 feature set competes with ... LISP, maybe?  It’s a pretty clear winner for some  application areas. 



d

> On 27 Dec 2019, at 03:58, Bakul Shah <bakul at bitblocks.com> wrote:
> 
> You can write “cleaner C++” but you will also need to read, understand & possibly
> modify other people’s code. But don’t let the naysayers stop you. You must find
> out for yourself! You must speak the native language of the community you want
> to be part of. If you deride their local language and proselytize Esperanto, the
> natives may not take kindly to you!
> 
>> On Dec 25, 2019, at 9:43 PM, Wesley Parish <wobblygong at gmail.com> wrote:
>> 
>> I will admit the modern version reads a lot more cleanly than the
>> older versions. They finally got rid of the pretense that a C++ header
>> file was the same sort of thing as a C header file.
>> 
>> I tried to learn it back in the nineties with one of the Sams Teach
>> Yourself books and Borland's Turbo C++ compiler (before I switched to
>> Linux), but at the end I was still as mystified as before. It took
>> immersion into Java before I finally got the hang of object
>> orientation, and Java's still a lot smaller than C++.
>> 
>> A friend wants me to write some utilities for a C++ project he's got,
>> so I figure I may as well help him out. Otherwise I'd be just as happy
>> without C++. I'll try to keep the complexity down to the limit
>> suggested by the Unix philosophy - a piece of code that does only one
>> thing and does it well. :)
>> 
>> Wesley Parish
>> 
>>> On 12/26/19, Larry McVoy <lm at mcvoy.com> wrote:
>>>> On Thu, Dec 26, 2019 at 02:44:06PM +1100, Dave Horsfall wrote:
>>>>>> On Thu, 26 Dec 2019, Wesley Parish wrote:
>>>>> 
>>>>>> I'm thinking of finally learning C++.  [...]
>>>>> 
>>>>> C++?  That way lies madness :-)  I had to teach myself it once (with the
>>>>> aid
>>>>> of The Book) and was glad to leave it behind.  Oh, it was also the
>>>>> first OO lang that I'd ever used, which probably didn't help.
>>>>> 
>>>>> I can still read it, bot no way will I go back to writing in it...
>>> 
>>> Amen, brother.  Bell Labs did some great things, a lot of great things,
>>> but C++ is not one of them.
>>> 
>>> I read the book and wanted to like it, I liked how constructors/destructors
>>> stacked, that seemed elegant to me.  I wanted that for all the methods and
>>> soon found out only allocation/deallocation stacked.  That seemed lame.
>>> 
>>> C++ seems to encourage complexity and I hate complexity.  I tolerate
>>> it when there is no other way, but as my math kids say, if you have the
>>> right answer, it is beautiful and simple.  Complex is reserved for when
>>> you haven't figured it out yet.  That's not totally fair, I've written
>>> some complex code but I did have the nagging feeling there must be a
>>> simpler way.
>>> 
>>> C++ teams are riddled with rules "don't use this, don't use that".  It's
>>> an interesting language to look at but I'll choose C over C++ every time.
>>> You can fake OO in C, Sun did it with vnodes and it worked just fine.  I'd
>>> rather fake it and have it be simple than have C++ and have it be weird.
>>> 
>>> That might be me just being an old fart but I have yet to have someone
>>> I admire tell me I need to use C++.
>>> _______________________________________________
>>> COFF mailing list
>>> COFF at minnie.tuhs.org
>>> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>>> 
>> _______________________________________________
>> COFF mailing list
>> COFF at minnie.tuhs.org
>> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
> 
> _______________________________________________
> COFF mailing list
> COFF at minnie.tuhs.org
> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff



^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 21:28                 ` davida
@ 2019-12-26 21:37                   ` lm
  2019-12-26 21:57                     ` sauer
                                       ` (2 more replies)
  2019-12-26 22:16                   ` imp
  2019-12-27  3:41                   ` bakul
  2 siblings, 3 replies; 36+ messages in thread
From: lm @ 2019-12-26 21:37 UTC (permalink / raw)


On Fri, Dec 27, 2019 at 07:28:27AM +1000, David Arnold wrote:
> C++ is several different languages in one compiler. 

Bingo, well said.  I find kitchen sink languages like that awful.
It's not what you put in, it's what you don't let in.

As you said, it takes a lot of discipline to use the right subset
which makes you wonder why there isn't a language that is the right
subset.


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 21:37                   ` lm
@ 2019-12-26 21:57                     ` sauer
  2019-12-26 22:13                     ` 
  2019-12-27  3:41                     ` bakul
  2 siblings, 0 replies; 36+ messages in thread
From: sauer @ 2019-12-26 21:57 UTC (permalink / raw)




On 12/26/2019 3:37 PM, Larry McVoy wrote:
> On Fri, Dec 27, 2019 at 07:28:27AM +1000, David Arnold wrote:
>> C++ is several different languages in one compiler.
> 
> Bingo, well said.  I find kitchen sink languages like that awful.
> It's not what you put in, it's what you don't let in.
> 
> As you said, it takes a lot of discipline to use the right subset
> which makes you wonder why there isn't a language that is the right
> subset.

PL.8 (https://en.wikipedia.org/wiki/PL/8) springs to mind. I can't say 
that it was the right or wrong subset of PL/I. I do know that I wrote a 
major simulation environment in PL/I while avoiding much of PL/I. I 
never used PL.8 myself, just learned it enough to write a PL.8 to C 
conversion tool that some AIX folks found useful.

Though the Wikipedia page makes PL.8 sound successful, it is hard to 
imagine that more than a small minority of folks chose PL.8 over PL/I. 
Even assuming PL.8 was the right subset, it would have struggled to 
overcome entrenched PL/I.


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 21:37                   ` lm
  2019-12-26 21:57                     ` sauer
@ 2019-12-26 22:13                     ` 
  2019-12-27  3:41                     ` bakul
  2 siblings, 0 replies; 36+ messages in thread
From:  @ 2019-12-26 22:13 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 773 bytes --]

On 26 Dec 2019 13:37 -0800, from lm at mcvoy.com (Larry McVoy):
> As you said, it takes a lot of discipline to use the right subset
> which makes you wonder why there isn't a language that is the right
> subset.

Probably because of the old adage "80% of the users would be just
peachy with 20% of the features; trouble is, it's never _the same_
20%". Lots of people tend to forget that second half of that.

That, and design by committee, maybe? I guess C++ is what you end up
with when _everyone_ is trying to get _their_ 20% into the same tool.
At least with Ada it seems they had the sense to know when to stop.

-- 
Michael Kjörling • https://michael.kjorling.se • michael at kjorling.se
 “Remember when, on the Internet, nobody cared that you were a dog?”



^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 21:28                 ` davida
  2019-12-26 21:37                   ` lm
@ 2019-12-26 22:16                   ` imp
  2019-12-27  3:41                   ` bakul
  2 siblings, 0 replies; 36+ messages in thread
From: imp @ 2019-12-26 22:16 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4899 bytes --]

On Thu, Dec 26, 2019, 2:34 PM David Arnold <davida at pobox.com> wrote:

> C++ is several different languages in one compiler.
>

The very definition of train wreck is when too many trains occupy the same
bit of track at the same time....

Warner

You can use it as a stricter C, as a C with some syntactic support of ADTs,
> as C++98-style OO, or as a C++17 style meta-programming system.  And I’ve
> probably missed a few.
>
> The resulting complexity requires a lot of discipline to use successfully,
> especially in a large team.
>
> Java competes pretty successfully with the C++98-style OO subset.  C11 now
> competes with the stricter C subset.
>
> The C++17 feature set competes with ... LISP, maybe?  It’s a pretty clear
> winner for some  application areas.
>
>
>
> d
>
> > On 27 Dec 2019, at 03:58, Bakul Shah <bakul at bitblocks.com> wrote:
> >
> > You can write “cleaner C++” but you will also need to read, understand
> & possibly
> > modify other people’s code. But don’t let the naysayers stop you. You
> must find
> > out for yourself! You must speak the native language of the community
> you want
> > to be part of. If you deride their local language and proselytize
> Esperanto, the
> > natives may not take kindly to you!
> >
> >> On Dec 25, 2019, at 9:43 PM, Wesley Parish <wobblygong at gmail.com>
> wrote:
> >>
> >> I will admit the modern version reads a lot more cleanly than the
> >> older versions. They finally got rid of the pretense that a C++ header
> >> file was the same sort of thing as a C header file.
> >>
> >> I tried to learn it back in the nineties with one of the Sams Teach
> >> Yourself books and Borland's Turbo C++ compiler (before I switched to
> >> Linux), but at the end I was still as mystified as before. It took
> >> immersion into Java before I finally got the hang of object
> >> orientation, and Java's still a lot smaller than C++.
> >>
> >> A friend wants me to write some utilities for a C++ project he's got,
> >> so I figure I may as well help him out. Otherwise I'd be just as happy
> >> without C++. I'll try to keep the complexity down to the limit
> >> suggested by the Unix philosophy - a piece of code that does only one
> >> thing and does it well. :)
> >>
> >> Wesley Parish
> >>
> >>> On 12/26/19, Larry McVoy <lm at mcvoy.com> wrote:
> >>>> On Thu, Dec 26, 2019 at 02:44:06PM +1100, Dave Horsfall wrote:
> >>>>>> On Thu, 26 Dec 2019, Wesley Parish wrote:
> >>>>>
> >>>>>> I'm thinking of finally learning C++.  [...]
> >>>>>
> >>>>> C++?  That way lies madness :-)  I had to teach myself it once (with
> the
> >>>>> aid
> >>>>> of The Book) and was glad to leave it behind.  Oh, it was also the
> >>>>> first OO lang that I'd ever used, which probably didn't help.
> >>>>>
> >>>>> I can still read it, bot no way will I go back to writing in it...
> >>>
> >>> Amen, brother.  Bell Labs did some great things, a lot of great things,
> >>> but C++ is not one of them.
> >>>
> >>> I read the book and wanted to like it, I liked how
> constructors/destructors
> >>> stacked, that seemed elegant to me.  I wanted that for all the methods
> and
> >>> soon found out only allocation/deallocation stacked.  That seemed lame.
> >>>
> >>> C++ seems to encourage complexity and I hate complexity.  I tolerate
> >>> it when there is no other way, but as my math kids say, if you have the
> >>> right answer, it is beautiful and simple.  Complex is reserved for when
> >>> you haven't figured it out yet.  That's not totally fair, I've written
> >>> some complex code but I did have the nagging feeling there must be a
> >>> simpler way.
> >>>
> >>> C++ teams are riddled with rules "don't use this, don't use that".
> It's
> >>> an interesting language to look at but I'll choose C over C++ every
> time.
> >>> You can fake OO in C, Sun did it with vnodes and it worked just fine.
> I'd
> >>> rather fake it and have it be simple than have C++ and have it be
> weird.
> >>>
> >>> That might be me just being an old fart but I have yet to have someone
> >>> I admire tell me I need to use C++.
> >>> _______________________________________________
> >>> COFF mailing list
> >>> COFF at minnie.tuhs.org
> >>> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
> >>>
> >> _______________________________________________
> >> COFF mailing list
> >> COFF at minnie.tuhs.org
> >> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
> >
> > _______________________________________________
> > COFF mailing list
> > COFF at minnie.tuhs.org
> > https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>
> _______________________________________________
> COFF mailing list
> COFF at minnie.tuhs.org
> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20191226/88651fd6/attachment-0001.html>


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 11:49               ` tih
  2019-12-26 15:33                 ` lm
  2019-12-26 16:34                 ` thomas.paulsen
@ 2019-12-27  3:00                 ` dave
  2019-12-27  7:02                   ` thomas.paulsen
  2 siblings, 1 reply; 36+ messages in thread
From: dave @ 2019-12-27  3:00 UTC (permalink / raw)


On Thu, 26 Dec 2019, Tom Ivar Helbekkmo via COFF wrote:

> This reminds me of something Erik Naggum said (about another language, 
> and in harsher words (as was his wont), but the underlying point about 
> the language affecting how problems are solved is the same):
>
> "It's not that perl programmers are idiots, it's that the language 
> rewards idiotic behavior in a way that no other language or tool has 
> ever done."

As a Perl programmer, I second that :-)  It's too easy to make mistakes.

-- Dave


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 21:28                 ` davida
  2019-12-26 21:37                   ` lm
  2019-12-26 22:16                   ` imp
@ 2019-12-27  3:41                   ` bakul
  2 siblings, 0 replies; 36+ messages in thread
From: bakul @ 2019-12-27  3:41 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 5819 bytes --]

I of course agree that C++ is quite complex but the point I
was jokingly making is this: if you just want to study a
language for the sake of studying, any language that interests
you is fine. Just do it; find out for yourself if it is worth
studying.  But if you want to write useful code in it, the
context matters.

If I want to contribute to a project using Java, I have to use
Java.  If I want to write a program where most of the
essential libraries are in C++, it may make more sense to use
C++ (or I have to use a language that has a decent FFI or
write all of the equivalent code in my language of choice). Or
only interface to other components via network protocols.  At
a prev. job I rewrote the C++ program I was supposed to fix in
Go mainly because of the last condition.

Another factor is this: if someone else is going to have to
continue maintaining your code once you move on, you'd better
use a language that is somewhat popular. A friend wrote all
his code in CL for a non-profit org but at some point he had
to give up control and the people who took over threw out all
his code and implemented something worse but using common
technologies. And I don't think my friend really saved any
time; he was just scratching an itch.

But no need to insult Lisp :-) CL is a fairly well thought out
language (and I say that as a fan of Scheme and not CL). What
matters is not design by committee but *who* is on the
committee!

On Dec 26, 2019, at 1:28 PM, David Arnold <davida at pobox.com> wrote:
> 
> C++ is several different languages in one compiler. 
> 
> You can use it as a stricter C, as a C with some syntactic support of ADTs, as C++98-style OO, or as a C++17 style meta-programming system.  And I’ve probably missed a few. 
> 
> The resulting complexity requires a lot of discipline to use successfully, especially in a large team.
> 
> Java competes pretty successfully with the C++98-style OO subset.  C11 now competes with the stricter C subset.
> 
> The C++17 feature set competes with ... LISP, maybe?  It’s a pretty clear winner for some  application areas. 
> 
> 
> 
> d
> 
>> On 27 Dec 2019, at 03:58, Bakul Shah <bakul at bitblocks.com> wrote:
>> 
>> You can write “cleaner C++” but you will also need to read, understand & possibly
>> modify other people’s code. But don’t let the naysayers stop you. You must find
>> out for yourself! You must speak the native language of the community you want
>> to be part of. If you deride their local language and proselytize Esperanto, the
>> natives may not take kindly to you!
>> 
>>> On Dec 25, 2019, at 9:43 PM, Wesley Parish <wobblygong at gmail.com> wrote:
>>> 
>>> I will admit the modern version reads a lot more cleanly than the
>>> older versions. They finally got rid of the pretense that a C++ header
>>> file was the same sort of thing as a C header file.
>>> 
>>> I tried to learn it back in the nineties with one of the Sams Teach
>>> Yourself books and Borland's Turbo C++ compiler (before I switched to
>>> Linux), but at the end I was still as mystified as before. It took
>>> immersion into Java before I finally got the hang of object
>>> orientation, and Java's still a lot smaller than C++.
>>> 
>>> A friend wants me to write some utilities for a C++ project he's got,
>>> so I figure I may as well help him out. Otherwise I'd be just as happy
>>> without C++. I'll try to keep the complexity down to the limit
>>> suggested by the Unix philosophy - a piece of code that does only one
>>> thing and does it well. :)
>>> 
>>> Wesley Parish
>>> 
>>>> On 12/26/19, Larry McVoy <lm at mcvoy.com> wrote:
>>>>> On Thu, Dec 26, 2019 at 02:44:06PM +1100, Dave Horsfall wrote:
>>>>>>> On Thu, 26 Dec 2019, Wesley Parish wrote:
>>>>>> 
>>>>>>> I'm thinking of finally learning C++.  [...]
>>>>>> 
>>>>>> C++?  That way lies madness :-)  I had to teach myself it once (with the
>>>>>> aid
>>>>>> of The Book) and was glad to leave it behind.  Oh, it was also the
>>>>>> first OO lang that I'd ever used, which probably didn't help.
>>>>>> 
>>>>>> I can still read it, bot no way will I go back to writing in it...
>>>> 
>>>> Amen, brother.  Bell Labs did some great things, a lot of great things,
>>>> but C++ is not one of them.
>>>> 
>>>> I read the book and wanted to like it, I liked how constructors/destructors
>>>> stacked, that seemed elegant to me.  I wanted that for all the methods and
>>>> soon found out only allocation/deallocation stacked.  That seemed lame.
>>>> 
>>>> C++ seems to encourage complexity and I hate complexity.  I tolerate
>>>> it when there is no other way, but as my math kids say, if you have the
>>>> right answer, it is beautiful and simple.  Complex is reserved for when
>>>> you haven't figured it out yet.  That's not totally fair, I've written
>>>> some complex code but I did have the nagging feeling there must be a
>>>> simpler way.
>>>> 
>>>> C++ teams are riddled with rules "don't use this, don't use that".  It's
>>>> an interesting language to look at but I'll choose C over C++ every time.
>>>> You can fake OO in C, Sun did it with vnodes and it worked just fine.  I'd
>>>> rather fake it and have it be simple than have C++ and have it be weird.
>>>> 
>>>> That might be me just being an old fart but I have yet to have someone
>>>> I admire tell me I need to use C++.
>>>> _______________________________________________
>>>> COFF mailing list
>>>> COFF at minnie.tuhs.org
>>>> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>>>> 
>>> _______________________________________________
>>> COFF mailing list
>>> COFF at minnie.tuhs.org
>>> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
>> 
>> _______________________________________________
>> COFF mailing list
>> COFF at minnie.tuhs.org
>> https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff
> 



^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-26 21:37                   ` lm
  2019-12-26 21:57                     ` sauer
  2019-12-26 22:13                     ` 
@ 2019-12-27  3:41                     ` bakul
  2019-12-27  4:00                       ` lm
  2 siblings, 1 reply; 36+ messages in thread
From: bakul @ 2019-12-27  3:41 UTC (permalink / raw)


On Dec 26, 2019, at 1:37 PM, Larry McVoy <lm at mcvoy.com> wrote:
> 
> On Fri, Dec 27, 2019 at 07:28:27AM +1000, David Arnold wrote:
>> C++ is several different languages in one compiler. 
> 
> Bingo, well said.  I find kitchen sink languages like that awful.
> It's not what you put in, it's what you don't let in.

Wait... I thought you liked Perl? :-)




^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-27  3:41                     ` bakul
@ 2019-12-27  4:00                       ` lm
  2019-12-27  4:28                         ` bakul
  0 siblings, 1 reply; 36+ messages in thread
From: lm @ 2019-12-27  4:00 UTC (permalink / raw)


On Thu, Dec 26, 2019 at 07:41:32PM -0800, Bakul Shah wrote:
> On Dec 26, 2019, at 1:37 PM, Larry McVoy <lm at mcvoy.com> wrote:
> > 
> > On Fri, Dec 27, 2019 at 07:28:27AM +1000, David Arnold wrote:
> >> C++ is several different languages in one compiler. 
> > 
> > Bingo, well said.  I find kitchen sink languages like that awful.
> > It's not what you put in, it's what you don't let in.
> 
> Wait... I thought you liked Perl? :-)

I really liked perl4.  Perl past that not so much, perl5 solved one or
two problem that perl4 had but then added a boat load of new problems.
I never warmed up to perl5.

But perl4 felt like all the goodness from sed, all the goodness from
awk, and a general purpose programming language to boot.  I actually
proposed, in the late 1980's, that Sun should consider rewriting a
bunch of /usr/bin in perl.  A little crazy in the days of 20mhz 
machines but I thought they would be more maintainable.

Perl4 wasn't a kitchen sink language, it was pulling from all of
Unix stuff that was useful.  There really wasn't a lot in perl4
that wasn't in ksh/sed/awk.  There was stuff like

	while (<>) {
		whatever
	}

that did the work to either get it from STDIN or walk argv and get the
input from there.  I actually liked that, seemed like progress.

--lm


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-27  4:00                       ` lm
@ 2019-12-27  4:28                         ` bakul
  0 siblings, 0 replies; 36+ messages in thread
From: bakul @ 2019-12-27  4:28 UTC (permalink / raw)




> On Dec 26, 2019, at 8:00 PM, Larry McVoy <lm at mcvoy.com> wrote:
> 
> On Thu, Dec 26, 2019 at 07:41:32PM -0800, Bakul Shah wrote:
>> On Dec 26, 2019, at 1:37 PM, Larry McVoy <lm at mcvoy.com> wrote:
>>> 
>>> On Fri, Dec 27, 2019 at 07:28:27AM +1000, David Arnold wrote:
>>>> C++ is several different languages in one compiler. 
>>> 
>>> Bingo, well said.  I find kitchen sink languages like that awful.
>>> It's not what you put in, it's what you don't let in.
>> 
>> Wait... I thought you liked Perl? :-)
> 
> I really liked perl4.  Perl past that not so much, perl5 solved one or
> two problem that perl4 had but then added a boat load of new problems.
> I never warmed up to perl5.
> 
> But perl4 felt like all the goodness from sed, all the goodness from
> awk, and a general purpose programming language to boot.  I actually
> proposed, in the late 1980's, that Sun should consider rewriting a
> bunch of /usr/bin in perl.  A little crazy in the days of 20mhz 
> machines but I thought they would be more maintainable.
> 
> Perl4 wasn't a kitchen sink language, it was pulling from all of
> Unix stuff that was useful.  There really wasn't a lot in perl4
> that wasn't in ksh/sed/awk.  There was stuff like
> 
> 	while (<>) {
> 		whatever
> 	}
> 
> that did the work to either get it from STDIN or walk argv and get the
> input from there.  I actually liked that, seemed like progress.
> 
> --lm

I'd say it was a *good* kitchen sink! Sort of like CL in some ways :-)

Pretty much all of our chip test code was written in Perl4. We also
used it to generate verilog glue code + CRC code given a polynomial.
And we generated C code for all of Cisco compatible CLI frontend
with context sensitive help and  word completion etc in Perl. And many
other tasks. Perl seemed to be the language of choice for scripting
in '90s. Python started taking over in the '00s.

Even back then I wrote some of my tools in Scheme as I found it easier
and as they were throwaway tools it didn't matter to others.


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-27  3:00                 ` dave
@ 2019-12-27  7:02                   ` thomas.paulsen
  0 siblings, 0 replies; 36+ messages in thread
From: thomas.paulsen @ 2019-12-27  7:02 UTC (permalink / raw)


>As a Perl programmer, I second that :-)  It's too easy to make mistakes.
hardly understand that harsh words, as once I written a large server in perl (strictly OO) running now for almost 20 years without any problems/bugs. I even did some changes after almost 15 years, having lost all perl know-how meanwhile, and to my surprise it worked perfectly. 





^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-25 17:31 ` rtomek
  2019-12-25 19:13   ` athornton
@ 2019-12-27 17:46   ` cym224
  2019-12-27 21:33     ` tih
  1 sibling, 1 reply; 36+ messages in thread
From: cym224 @ 2019-12-27 17:46 UTC (permalink / raw)


On 12/25/19 12:31, Tomasz Rola wrote (in part):
> On Mon, Dec 23, 2019 at 06:27:48PM -0500, Nemo Nusquam wrote:
>> A recent thread makes me wonder which languages would people like to
>> learn?  (I confess to trying, as Dave does, but time prevents
>> anything more that learing syntax and writing toy programmes.  One
>> must write something substantial -- not synonomous with large -- to
>> really learn a language.)
>>
>> Erlang, Smalltalk, Prolog, Haskell, and Scheme come to mind...
> I will swim upstream and say: if I had more free time, I would
> probably want to finish reading "The AWK Programming Language" by Aho,
> Kernighan snd Weinberger.
A former colleague wrote an assembler in AWK.  We had a contract to 
supply s/w for a chip still being developed.  The (binary -- no source) 
assembler supplied by the customer was not only buggy and slow, it 
core-dumped on reaching an unknown op-code and they changed op-codes on 
every iteration!

[...]
> But if you have not had experience with Scheme yet, try it out. LISPs
> in general are worth learning, IMHO. And much more practical than what
> a popular opinion says.
>
Indeed -- I have played with Racket on and off (especially as it builds 
on my Sparc box).

N.


^ permalink raw reply	[flat|nested] 36+ messages in thread

* [COFF] What languges would you like to learn?
  2019-12-27 17:46   ` cym224
@ 2019-12-27 21:33     ` tih
  0 siblings, 0 replies; 36+ messages in thread
From: tih @ 2019-12-27 21:33 UTC (permalink / raw)


Nemo Nusquam <cym224 at gmail.com> writes:

> On 12/25/19 12:31, Tomasz Rola wrote (in part):
>> I will swim upstream and say: if I had more free time, I would
>> probably want to finish reading "The AWK Programming Language" by Aho,
>> Kernighan snd Weinberger.
> A former colleague wrote an assembler in AWK.

Possibly inspired by, or even based on, the assembler that's shown as a
sample AWK program in that very book.  :)

-tih
-- 
Most people who graduate with CS degrees don't understand the significance
of Lisp.  Lisp is the most important idea in computer science.  --Alan Kay


^ permalink raw reply	[flat|nested] 36+ messages in thread

end of thread, other threads:[~2019-12-27 21:33 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-23 23:27 [COFF] What languges would you like to learn? cym224
2019-12-24  9:54 ` thomas.paulsen
2019-12-24 16:28 ` toby
2019-12-24 16:35   ` lm
2019-12-24 17:50     ` 
2019-12-24 18:04       ` lm
2019-12-25  3:34     ` dave
2019-12-25 16:02     ` cym224
2019-12-25 17:05     ` thomas.paulsen
2019-12-24 20:27 ` dave
2019-12-25 17:31 ` rtomek
2019-12-25 19:13   ` athornton
2019-12-26  0:23     ` me
2019-12-26  1:54       ` wobblygong
2019-12-26  3:44         ` dave
2019-12-26  4:00           ` lm
2019-12-26  5:43             ` wobblygong
2019-12-26 11:49               ` tih
2019-12-26 15:33                 ` lm
2019-12-26 16:34                 ` thomas.paulsen
2019-12-26 16:53                   ` lm
2019-12-27  3:00                 ` dave
2019-12-27  7:02                   ` thomas.paulsen
2019-12-26 17:57               ` bakul
2019-12-26 21:28                 ` davida
2019-12-26 21:37                   ` lm
2019-12-26 21:57                     ` sauer
2019-12-26 22:13                     ` 
2019-12-27  3:41                     ` bakul
2019-12-27  4:00                       ` lm
2019-12-27  4:28                         ` bakul
2019-12-26 22:16                   ` imp
2019-12-27  3:41                   ` bakul
2019-12-26 15:43         ` dfawcus+lists-coff
2019-12-27 17:46   ` cym224
2019-12-27 21:33     ` tih

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).