unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: Arne Babenhauserheide <arne_bab@web.de>
To: Marko Rauhamaa <marko@pacujo.net>
Cc: "guile-user@gnu.org" <guile-user@gnu.org>
Subject: Re: How to make GNU Guile more successful
Date: Tue, 14 Feb 2017 00:56:52 +0100	[thread overview]
Message-ID: <87shnhabln.fsf@web.de> (raw)
In-Reply-To: <878tp967p4.fsf@elektro.pacujo.net>

[-- Attachment #1: Type: text/plain, Size: 2940 bytes --]


Marko Rauhamaa <marko@pacujo.net> writes:
> I have typed this message in emacs.

Same for me, but getting people to use Emacs is harder. It might not
*be* that complicated, but it *feels* different.

> In my opinion one of the worst problems with Scheme is the Schemers:
> Scheme lovers are often far too enthusiastic with defining new, esoteric
> syntax instead of solving practical problems.
>
> Then, there's GOOPS, which in my opinion is simply an unnatural way to
> go about object-oriented programming. It does violence both to ordinary
> OO way of thinking and classic Lisp idioms.

GOOPS works pretty well for me where I use it (for dispatch by
type). Could you clarify your criticism: Do you think it is bad or is it
just different?

> Continuations and multiple values are obstacles instead of enablers.

I think multiple values are nice. But they are not well-integrated (I
have to import something to use them). Why do you think them enablers?

Why do you think that continuations are an obstacle (do you mean general
continuations or do you mean prompts)?

> BTW, Python seems to be suffering from quite many self-inflicted wounds:
> Python2/Python3 incompatibility,

Py2 vs. Py3 really hurts, yes.

It still really hurts and will likely hurt for the next 10 years. I
think that should be a lesson for all other language-implementors: Once
you start to become popular, you cannot do any backwards-incompatible
changes without endangering your position. Once you start to get
traction, you have to stick to your horse.

Many other wounds I do not see as much:

> asyncio, type annotation,

type annotations should provide nice ways to optimize for pypy and other
more optimizing Python implementations.

> decorators,

Decorators are really cool to use:

@with_progress
def something():
    time.sleep(10)

That’s almost like

(with-progress
  (define (something)
          (sleep 10)))

But decorators are actually definition time, so they bring the tower of
meta-levels to Python …

> dunder jungle,

What’s that?

> meta-object programming,

That’s needed to make some things elegant. "Different 20%"-rule again.

> Unicode illusion. (Guile has fallen into that last trap as well,
> unfortunately.)

I’m using Python and Guile for physics and math (to some degree), and
having good Unicode-support is great for that. What’s your practical
criticism here?

> In its eagerness to please everyone, Python might well
> be jumping the shark.
>
> There's one thing Python has over Guile, still: Python's system call
> support is outstanding. For example, I managed to implement a full-blown
> shell using Python. That was the first time I ever ran into
> terminal-related system calls, and Python had them all.

Which ones are missing in Guile?

Best wishes,
Arne
-- 
Unpolitisch sein
heißt politisch sein
ohne es zu merken

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 800 bytes --]

  reply	other threads:[~2017-02-13 23:56 UTC|newest]

Thread overview: 131+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-12 23:56 How to make GNU Guile more successful Amirouche
2017-02-13  0:21 ` Amirouche
2017-02-13 11:06 ` Arne Babenhauserheide
2017-02-13 12:14   ` Arne Babenhauserheide
2017-02-13 20:20   ` Amirouche
2017-02-13 23:08     ` Arne Babenhauserheide
2017-02-13 20:28   ` Panicz Maciej Godek
2017-02-13 20:42     ` Amirouche
2017-02-13 22:34     ` Marko Rauhamaa
2017-02-13 23:56       ` Arne Babenhauserheide [this message]
2017-02-14  0:18         ` David Kastrup
2017-02-14 22:21           ` Arne Babenhauserheide
2017-02-15 17:03           ` Christopher Allan Webber
2017-02-16 19:18             ` sirgazil
2017-02-16 20:26               ` Amirouche
2017-02-14  5:59         ` Marko Rauhamaa
2017-02-14 19:36           ` Linas Vepstas
2017-02-14 20:54             ` Marko Rauhamaa
2017-02-14 22:20           ` Arne Babenhauserheide
2017-02-13 22:54     ` Arne Babenhauserheide
2017-02-14  9:54       ` Panicz Maciej Godek
2017-02-14 21:35         ` Arne Babenhauserheide
2017-03-01 19:21           ` Amirouche
2017-03-10 20:23             ` Amirouche
2017-07-14 21:54     ` Linas Vepstas
2017-07-14 21:59       ` Marko Rauhamaa
2017-07-15 10:10       ` Jan Wedekind
2017-07-15 12:55         ` Nala Ginrut
2017-07-15 12:58           ` Nala Ginrut
2017-07-15 22:17           ` Jan Wedekind
2017-07-16  9:54             ` Nala Ginrut
2017-07-17 18:52         ` Arun Isaac
2017-07-18 11:22         ` Ernest Adrogué
2017-07-16  8:30       ` Freja Nordsiek
2017-07-16  9:18         ` Marko Rauhamaa
2017-07-16 10:11           ` Freja Nordsiek
2017-07-16 10:31             ` Marko Rauhamaa
2017-07-16 10:39               ` Freja Nordsiek
2017-07-16 10:45                 ` Freja Nordsiek
2017-07-20 15:28       ` Guile bugs Ludovic Courtès
2017-07-20 16:22         ` Marko Rauhamaa
2017-07-20 18:26           ` Taylan Ulrich Bayırlı/Kammer
2017-07-20 18:35             ` Marko Rauhamaa
2017-07-20 20:41               ` Ludovic Courtès
2017-07-20 22:23                 ` Marko Rauhamaa
2017-07-21  4:05                   ` Mark H Weaver
2017-07-21  6:15                     ` Marko Rauhamaa
2017-07-21  8:16                       ` Chris Vine
2017-07-21  8:27                         ` Marko Rauhamaa
2017-07-21  9:17                       ` Mark H Weaver
2017-07-21 10:08                         ` Marko Rauhamaa
2017-07-21 10:22                           ` David Kastrup
2017-09-09 21:14                       ` Linas Vepstas
2017-09-09 22:31                         ` Marko Rauhamaa
2017-09-09 23:02                           ` Linas Vepstas
2017-07-21 16:33               ` Taylan Ulrich Bayırlı/Kammer
2017-07-21 17:12                 ` Marko Rauhamaa
2017-07-21 14:19           ` Matt Wette
2017-09-09 20:30         ` Linas Vepstas
2017-09-10 13:11           ` Ludovic Courtès
2017-09-10 19:56             ` Linas Vepstas
2017-09-11  7:26               ` Ludovic Courtès
2017-09-11  8:10                 ` Marko Rauhamaa
2017-09-11 11:34                   ` Ludovic Courtès
2017-09-14 17:54                 ` Linas Vepstas
2017-09-15  7:56                   ` Ludovic Courtès
2017-09-19 11:04                     ` Linas Vepstas
2017-09-19 20:18                       ` Chris Vine
2017-09-19 20:21                         ` Chris Vine
2017-09-19 23:39                           ` Nala Ginrut
  -- strict thread matches above, loose matches on Subject: below --
2017-02-18  1:04 How to make GNU Guile more successful sirgazil
     [not found] ` <6315ebf51aec83aaff1c7fbbec685c0b@openmailbox.org>
2017-02-18 15:29   ` sirgazil
2017-02-18 16:55     ` David Pirotte
2017-02-19 18:09       ` sirgazil
2017-02-20  1:00         ` David Pirotte
2017-02-20  6:05 Michael Vehrs
2017-02-20 20:41 ` Arne Babenhauserheide
2017-02-21  6:01   ` Michael Vehrs
2017-02-21 17:18     ` Arne Babenhauserheide
2017-02-21 18:19       ` Amirouche
2017-02-21 18:31         ` Mike Gran
2017-02-21 18:33           ` Amirouche
2017-02-21 18:41             ` Mike Gran
2017-02-21 18:15     ` Amirouche
2017-02-21 19:25       ` Arne Babenhauserheide
2017-03-01 19:25         ` Amirouche
2017-03-03  5:28           ` Nala Ginrut
2017-03-03  9:18             ` David Kastrup
2017-03-03 11:30               ` Nala Ginrut
2017-03-03 12:19                 ` David Kastrup
2017-03-03 13:35                   ` Nala Ginrut
2017-03-04 23:44               ` Arne Babenhauserheide
2017-03-05  2:05                 ` Thomas Morley
2017-03-05 14:01                   ` Thomas Morley
2017-03-05 14:09                     ` David Kastrup
2017-03-05 14:13                       ` Thomas Morley
2017-03-05 14:27                     ` Thomas Morley
2017-03-03 17:21             ` Matt Wette
2017-03-03 19:09               ` Amirouche
2017-03-03 19:16               ` Amirouche
2017-03-03 19:24                 ` Mike Gran
2017-03-03 20:10                   ` Matt Wette
2017-03-03 20:09                 ` Matt Wette
2017-02-22  5:51     ` Michael Vehrs
2017-03-04 23:41 Alejandro Sanchez
2017-03-05  0:23 ` Arne Babenhauserheide
2017-03-05  8:23   ` Thien-Thi Nguyen
2017-03-05 14:19     ` Arne Babenhauserheide
2017-03-05  3:09 ` Erik Edrosa
2017-03-05 11:57   ` Jan Wedekind
2017-03-07  3:29     ` Erik Edrosa
2017-03-05 14:27   ` Arne Babenhauserheide
2017-03-05 16:43     ` Nala Ginrut
2017-03-05 23:46       ` Alejandro Sanchez
2017-03-06  9:00         ` Arne Babenhauserheide
2017-03-06  1:31       ` Matt Wette
2017-03-07  4:07     ` Erik Edrosa
2017-03-05  9:40 ` David Kastrup
2017-03-10  2:08 Vítor De Araújo
2017-03-10  9:55 ` Arne Babenhauserheide
2017-03-10 10:03   ` Panicz Maciej Godek
2017-03-10 14:27     ` vbuaraujo
2017-03-10 15:08       ` Panicz Maciej Godek
2017-03-11  7:19         ` Thien-Thi Nguyen
2017-03-13 15:55           ` Nala Ginrut
2017-03-13 16:14             ` Panicz Maciej Godek
2017-03-10 20:17 ` Amirouche
2017-03-11  0:50   ` Vítor De Araújo
2017-03-11  3:02     ` Vítor De Araújo
2017-03-11  7:42   ` Thien-Thi Nguyen
2017-03-14  3:26 ` Christopher Allan Webber

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87shnhabln.fsf@web.de \
    --to=arne_bab@web.de \
    --cc=guile-user@gnu.org \
    --cc=marko@pacujo.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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 read-only IMAP folder(s) and NNTP newsgroup(s).