[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