guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Guile bugs


From: Linas Vepstas
Subject: Re: Guile bugs
Date: Sat, 9 Sep 2017 15:30:21 -0500

Hi Ludo, a very late reply...

On Thu, Jul 20, 2017 at 10:28 AM, Ludovic Courtès <address@hidden> wrote:

>
> > String handling in guile is a disaster area: If I give it a
> > 10-megabyte-long string in utf8, it promptly tries to convert all of that
> > string in utf32, for utterly pointless reasons. This just makes it slow.
>
> We’ve discussed it before, and while I agree that there’s much room for
> improvement, I’m very skeptical about this use case


It's OK to be skeptical.  Let me briefly sketch a not-uncommon thought
process.

1) There is a need to pass messages between subsystems running on different
machines.

2) Solutions include ROS, ZeroMQ,  google protocol buffers... whatever. All
require lots of work, a learning curve, complexity, etc.

3) Wait!  I know! I will just send around ascii (utf8) strings that are
guile programs!  Just use the guile repl server, connect to it, and send
some guile string!  No muss, no fuss, no coding, no learning curve, simple
easy ...  You can use netcat to drive things!  echo (display "hello
world\n") | nc 1.2.3.4 37146

4) Solutions 3 works great, so lets scale it up!  Send more messages,
larger messages, more quickly.

5) unhappiness.  I reported one here, but it needs follow-up on my part.
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27234

Other issues turn out to be that the REPL server is slow; I replaced it
with a hand-coded blob that is wayyy faster.  On a related note, there is
no login/authentication for the repl server, but this is not a guile issue,
its a generic issue.  Amazingly, no one has ever created a generic login
server, aside from ssh... and there's no easy way to glue ssh to the guile
repl.

--linas

-- 
*"The problem is not that artificial intelligence will get too smart and
take over the world," computer scientist Pedro Domingos writes, "the
problem is that it's too stupid and already has." *


reply via email to

[Prev in Thread] Current Thread [Next in Thread]