unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: Mike Gran <spk121@yahoo.com>
To: "linasvepstas@gmail.com" <linasvepstas@gmail.com>,
	Andy Wingo <wingo@pobox.com>
Cc: "Ludovic Courtès" <ludo@gnu.org>,
	"guile-user@gnu.org" <guile-user@gnu.org>
Subject: Re: A bit further toward the flamewar
Date: Thu, 13 Oct 2011 11:37:50 -0700 (PDT)	[thread overview]
Message-ID: <1318531070.78010.YahooMailNeo@web37908.mail.mud.yahoo.com> (raw)
In-Reply-To: <CAHrUA35bddyX-YG8uYxtESgTx=oi+wx0=vivp9ea9biZDWySCA@mail.gmail.com>


>>  Anyway this second, proof side of types, is the side that Scheme does
>>  not have.  C has a stronger story in that regard.
> 
> Lack of types in scheme has made me day-dream about learning
> ocaml or haskell.  My pet peeve about scheme is that, when
> maintaining old code, its very very hard to just "know" what type
> some lambda is expecting.  And, to me, this makes scheme
> sometimes very hard to read.
> 
> very-hard-to-read == bug-prone
> 

It is hard to know what types a procedure expects.  I've wondered
why paradigms like the following weren't more popular.
 
(define (func a b)
  (assert-string a)
  (assert-list b)
   ...
 
In the great never-ending Lisp/Scheme flamewar, I always end up
on the "Lisp/Scheme lacks visual clues" side of the argument.  Scheme
is just hard to read.
 
(One project I never seem to get around to is figuring out
guile-reader so I code up Wheeler's sweet-expressions: a better
version of SRFI-49.  That helps the "visual clues" problem. But
that doesn't really help the type-check contract problem.)
 
I would add that most scheme distributions have very limited debugging
facilities as compared to most C debuggers.  Guile has improved quite
a bit, but, it is not gdb.
 
Personally I tend to fall back on 'debug by print' paradigms with scheme.
 
-Mike Gran



  reply	other threads:[~2011-10-13 18:37 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-12 14:54 Why is guile still so slow? John Lewis
2011-10-12 15:39 ` rixed
2011-10-12 18:56   ` Jose A. Ortega Ruiz
2011-10-12 22:40     ` rixed
2011-10-12 23:56       ` Jose A. Ortega Ruiz
2011-10-13  6:23         ` rixed
2011-10-13 10:22     ` Andy Wingo
2011-10-13 11:27       ` A bit further toward the flamewar rixed
2011-10-13 14:26         ` Ludovic Courtès
2011-10-13 15:20           ` Andy Wingo
2011-10-13 16:30             ` Linas Vepstas
2011-10-13 18:37               ` Mike Gran [this message]
2011-10-13 21:42                 ` Linas Vepstas
2011-10-13 22:08                   ` dskr
2011-10-14  1:07                   ` Ian Price
2011-10-14  8:40                     ` Andy Wingo
2011-10-14 16:23                     ` Linas Vepstas
2011-10-15  8:44                       ` Andy Wingo
2011-10-14  8:28                   ` Andy Wingo
2011-10-14 16:30                     ` Linas Vepstas
2011-10-14 17:26                       ` Andy Wingo
2011-10-13 19:16               ` Hans Aberg
2011-10-14  9:57               ` Panicz Maciej Godek
2011-10-13 17:43             ` Ludovic Courtès
2011-10-13 18:54           ` rixed
2011-10-13 21:14             ` Ludovic Courtès
2011-10-13 21:58               ` Hans Aberg
2011-10-14  9:28                 ` Ludovic Courtès
2011-10-14 10:53                   ` Hans Aberg
2011-10-14  9:37               ` rixed
2011-10-14 20:05                 ` Ludovic Courtès
2011-10-12 15:52 ` Why is guile still so slow? Andy Wingo
2011-10-12 16:19 ` John Lewis

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=1318531070.78010.YahooMailNeo@web37908.mail.mud.yahoo.com \
    --to=spk121@yahoo.com \
    --cc=guile-user@gnu.org \
    --cc=linasvepstas@gmail.com \
    --cc=ludo@gnu.org \
    --cc=wingo@pobox.com \
    /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).