[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-janitors] Re: #114: Improvements to tinyclos
From: |
Chicken Trac |
Subject: |
[Chicken-janitors] Re: #114: Improvements to tinyclos |
Date: |
Wed, 11 Nov 2009 13:29:24 -0000 |
#114: Improvements to tinyclos
---------------------------+------------------------------------------------
Reporter: tonysidaway | Owner: tonysidaway
Type: task | Status: new
Priority: major | Milestone:
Component: extensions | Version: 4.2.x
Keywords: tinyclos clos |
---------------------------+------------------------------------------------
Comment(by felix):
Replying to [ticket:114 tonysidaway]:
>
> 3. '''Usability'''. The programmer interface shows signs of convergence
with that of Common Lisp. While this could be useful for software
portability and to enable Common Lisp programmers to import their CLOS-
programming skills to Scheme, it hampers full exploitation of the
programming environment. The interface should be extended so as to enable
more natural use in Scheme's Algol-like block structure. The programmer
should be encouraged to treat generics as classes, classes as objects, and
all of them as Scheme objects subject to Scheme's lexical scoping rules.
I would suggest to add `let[rec]-generic` and `let[rec]-method`, for
example, but the implementation may be non-trivial.
> 4. '''Swig support'''. Tinyclos forms an important part of Swig's
support for Chicken Scheme, being essential for wrapping C++ classes.
This functionality should be tested and, if necessary, fixed.
This also applies to `easyffi`, which desperately needs a working
tinyclos.
I will try to look how well it works now, but that may take some time.
> 5. '''Performance'''. The software should be profiled and improved where
possible. Lessons learned from other implementations of tinyclos, such as
the hybrid C/Scheme implementation of STKlos, should be applied where
appropriate.
As can be seen from the state of the code, quite some effort has been put
into improving performance. What hasn't been tried yet is using some form
of inline-caching. Chicken's (undocumented) support for compiler-syntax
may also be useful here.
--
Ticket URL: <http://www.irp.oist.jp/trac/chicken/ticket/114#comment:1>
Chicken Scheme <http://www.call-with-current-continuation.org/>
Chicken Scheme is a compiler for the Scheme programming language.
- [Chicken-janitors] #114: Improvements to tinyclos, Chicken Trac, 2009/11/10
- [Chicken-janitors] Re: #114: Improvements to tinyclos,
Chicken Trac <=
- [Chicken-janitors] Re: #114: Improvements to tinyclos, Chicken Trac, 2009/11/11
- [Chicken-janitors] Re: #114: Improvements to tinyclos, Chicken Trac, 2009/11/12
- [Chicken-janitors] Re: #114: Improvements to tinyclos, Chicken Trac, 2009/11/15
- [Chicken-janitors] Re: #114: Improvements to tinyclos, Chicken Trac, 2009/11/15
- [Chicken-janitors] Re: #114: Improvements to tinyclos, Chicken Trac, 2009/11/15
- [Chicken-janitors] Re: #114: Improvements to tinyclos, Chicken Trac, 2009/11/18