Path: utzoo!utgpu!news-server.csri.toronto.edu!rutgers!usc!zaphod.mps.ohio-state.edu!lavaca.uh.edu!uhnix1!sugar!ficc!peter From: peter@ficc.ferranti.com (Peter da Silva) Newsgroups: comp.lang.scheme Subject: Re: Scheme as an extension language and call/cc Message-ID: Date: 29 Aug 90 00:01:17 GMT References: <409@data.UUCP> Reply-To: peter@ficc.ferranti.com (Peter da Silva) Distribution: comp Organization: Xenix Support, FICC Lines: 21 > {Seriously, if you need co-routines, non-blind backtracking, or have a > timer interrupt and want to do multi-tasking, continuations are most > useful. The implementation is not hard if you are doing an > interpreter and efficient runtime implementation technology for > compiled systems is well known.} "Montage is not a proactical system. The CALL/CC construct of Scheme, while powerful and portable, does not acheive the performance necessary for the near real-time constraints that a window system imposes. Specifically, in every one of the dozen Scheme implementations that I have tested CALL/CC allocates so much memory that most of the run time is spent in the garbage collector." -- Paul Haahr, "Montage: Breaking windows into small pieces", USENIX conferance proceedings, Jun 11-15, 1990. This is exactly the environment an extension language is needed for. For what you need CALL/CC for in such a program CALL/CC is not fast enough. Thus I would consider CALL/CC to be a luxury in this environment. -- Peter da Silva. `-_-' +1 713 274 5180. 'U` peter@ferranti.com