*should be used* and *can be used* have different meaning in my poor English. Can you rationalize why Scheme *should be used *?
On Mon, Jun 21, 2010 at 7:09 AM, Robert Ransom <rransom.8...@gmail.com> wrote: > On Sun, 20 Jun 2010 16:00:44 +0200 > Alexander Teinum <atei...@gmail.com> wrote: > >> > Use Scheme. See Scheme 48 <http://s48.org/> for a nice, simple >> > implementation to start hacking on. > >> This thread is about a replacement for X, but we’re also discussing >> development of “regular” applications. What exactly would you >> recommend Scheme for? > > Scheme *should* be used for almost everything -- bootloaders, OS > kernels, hardware drivers, tiny user utilities (like (Plan 9) ls and > mc; Unix ls no longer qualifies as a tiny utility, and should not be > written at all), long-running servers, etc. -- everything but x86 boot > sectors should be written in Scheme. > > Unfortunately, the readily available Scheme systems are unsuited for > most of those tasks. At the moment, Scheme *can* be used for > scripting and moderately large user applications (roughly, any daemon > with a built-in or otherwise firmly attached GUI -- think mail UAs and > multi-file editors for common examples). > > For low-level programming (kernels and drivers), you would need a > Scheme compiler with support for compile-time and explicitly specified > run-time memory allocation, as well as good type inference and support > for explicitly specified physical types. For small utilities, you > would need a Scheme implementation with a small run-time library. > Long-running servers would benefit from the same compiler capabilities > that low-level programming requires, but you can usually do without > them. > > Robert Ransom >