guile-user
[Top][All Lists]
Advanced

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

Re: guile-user Digest, Vol 171, Issue 14


From: Christopher Allan Webber
Subject: Re: guile-user Digest, Vol 171, Issue 14
Date: Tue, 14 Feb 2017 13:19:23 -0600
User-agent: mu4e 0.9.18; emacs 25.1.1

Cecil McGregor writes:

> My first problem lies in the lack of a decent debugger.  (I can hear
> the screams of more enlightened Guilers already!) The stack traces
> seldom provide filenames and line numbers to hint where a problem
> might hide.  While I've read advice to allow the appearance of
> filenames/line numbers, I still can't seem to consistently find these
> in a stack trace.
>
> I would really like the filename/line number to appear in a stack
> trace with the actual source code and not some partially opaque macro
> expansion.

Usually I find the debugger to be quite good in giving exactly the right
line, so your experience doesn't match mine.  I've also found that it
provides quite a few tools that I haven't found much anywhere else; the
debugging trap infrastructure and etc are a dream to work with.
(Sometimes some lines are lost in the call stack though due to Guile's
compiler's optimizing code... I hear that can be disabled but I haven't
tried it.)

> Then there is the matter of a good code coverage tool. Having
> experienced the benefits of TDD, Test Driven Development, I insist on
> good coverage when I develop in NodeJS and python. I really need to
> know that all my code has been tested.

Good news, Guile includes a testing module.  It could be better
integrated, and guile-lib apparently includes extendsions, but I unit
test my Guile libraries / programs.

> Has anyone followed up on the SICP classes and asked why scheme was
> not more popular?  Was it so unpopular that the students took up
> C/C++/Java instead? SICP uses a "portable" form of Scheme that
> apparently works with almost any Scheme implementation. SICP doesn't
> deal with messy system issues or implementing larger projects. Small
> programs such as SICP offers does not require serious debugging. As
> programs become systems the necessity of serious debugging rears an
> ugly side.

SICP's goal is to teach you how to understand the foundations of
computer science, not as much to write code as you would in
"production".

And in fact the best reason why SICP hasn't turned into real world
production programmers probably comes from one of the co-authors, Gerald
Sussman (or a relayed anecdote), on why MIT moved away from SICP as its
core book:

  
https://cemerick.com/2009/03/24/why-mit-now-uses-python-instead-of-scheme-for-its-undergraduate-cs-program/

In short, the world has shifted to one where understanding computer
science fundamentals is less critical to getting code out the door than
to understand how to hook together a large set of prebuilt libraries.  I
would say for the first decade of my programming career, this is how I
programmed, and I did fine.  Python has so many of the tools you want
and you can just hook them together like legos, and it's a delight.

SICP still provides something valuable though.  Joining the Guile
community and reading SICP and other lispy books like The Little Schemer
have transformed me as a programmer.  Not everyone needs to do it, but
there you go.  I think we should have more introductory resources that
aren't as CS theory based, but SICP deserves the love it gets.

There's much that we can learn from Python and etc, and I think many of
us want to allow Guile to fill that role too.  Anyone who was there for
FOSDEM this (or last!) year knows what an energized group of people
constitutes this community and how much we want to improve it.

> (Yes, there are holes and exceptions in the above.  Flames to
> /dev/null.)

TBH, I found your post to be a bit flamey and combative itself, which is
unfortunate, and I know it bummed some others out too.  Maybe you did
not mean it that way, but there it goes.  Keep in mind that a lot of
people on this list care about Guile a lot, and in my experience are
extremely open to constructive criticism.  But let's keep it
constructive and positive.  We want to make Guile better and too much
negative energy can make that hard.

Indeed, if you pay close attention to Guile over the last couple of
years, I would say that it *has* been getting better by leaps and
bounds.  There's still much of ways to go!  But if we can stay
energized, we can get there.

Stay positive, and let's build Guile into something great!
 - Chris



reply via email to

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