[gambit-list] DrScheme and GambitC
William Cook
wcook at cs.utexas.edu
Tue Sep 2 14:17:43 EDT 2008
Alex,
Scheme is an imperative language, and anyway I'd like to see my let-bindings when I'm
inside a function. I don't believe the claims that Scheme doesn't need a traditional
debugger because it is somehow different. It is true that traditional debuggers don't
work for Haskell, but they do for Scheme.
I've been programming on and off in Lisp and Scheme for almost 30 years (and yes, i
started young!), so I'm not exactly a newbie. What makes me an outsider in this
community is that I never got excited about Emacs.
In case anybody is interested, here is a short abstract describing what I'm working on:
Strategic Programming by Model Interpretation and Partial Evaluation
Strategic Programming is a programming paradigm based on factoring programs into
general strategies applied to descriptions of particular application requirements.
The descriptions are called models, and they generally describe one aspect of an
application. Parser generators (like Yacc) are a prototypical example of strategic
programming. My talk focuses on defining the semantics of models using interpreters
instead of transformations, as in most related work. It is possible to define
fully-functional applications by a collection of interrelated models for different
aspects of a system, including user interface, security, workflow, data abstraction
and persistence. The models may also contain fragments of code written in
general-purposes languages. Model interpreters are compiled by partial evaluation.
One novelty of this approach is the ability to create data abstractions by model
interpretation and compile them by partial evaluation. I will describe my progress in
implementing a software development toolset to support strategic programming by model
interpretation and partial evaluation. The system is implemented in itself and is
targeted at information management applications, including desktop, web and
distributed services, although it may be applicable to other domains as well.
William Cook
http://www.cs.utexas.edu/users/wcook
>> Yes, that does count as a breakpoint. However, to me the glass is only
>> 10% full, because I can't select a line of code and "put a breakpoint
>> there".
>
> You are still thinking imperatively (Java, Perl, Python etc.). A
> well-written Scheme program is not a sequence of instructions.
>
>> I can see that there is a culture clash here. I know I'm representing
>> a view that is a minority on this list. But I'm looking at Scheme from
>> the outside, and this is how it seems to me.
>
> Maybe when you "get inside" you'll find out that you really don't
> need to spend so much time debugging, and the Lisp productivity boost is
> more than a legend. :-)
>
> Cheers,
> -alex
> http://www.ventonegro.org/
More information about the Gambit-list
mailing list