﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	difficulty
114	Improvements to tinyclos	Tony Sidaway	Tony Sidaway	"Attention should be paid to the following aspects of tinyclos.

1. '''Internal documentation'''. The software can appear intimidatingly complex even to those who have worked extensively on it in the past.  Where appropriate, large subsystems should be separated into program units or modules to improve maintainability.
2. '''Testing'''. while unit tests show the software to be basically sound it would benefit from more detailed tests of the interaction of inheritance and polymorphism.
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.
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.
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."	task	closed	not urgent at all		extensions	4.2.x	wontfix	tinyclos clos		
