This is the mail archive of the guile@cygnus.com mailing list for the guile project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
forcer writes: [About guile-curses stubs] > What are your plans with it? Still supporting it? I'd like to have J.Blandy's expert opinion before giving it a release and version number. It's hard to maintain it in this form, so there should be some facilization. I wondered if SWIG or gwrap were the right tool, but how should an automated tool automatically 'translate' buffers into return values or error return codes (many functions that return ints return OK on success, ERR on error. Functions returning a window pointer return NULL on failure) into throwing exceptions, which seems to be most appropriate for a very high level language? If it proves useful, I'll continue to support it. If some different standard on character terminal screen programming for scheme arises from somewhere, it might rather be better to join in, for the sake of portability, though. > It would be nice as a guile module (screen ncurses) or so > (and maybe add (screen slang) (screen termcap) and (screen curses) or > so lateron). Curses in the sense of the very old curses or the X/OPG standard by the former x-consortium (from which ncurses is derived)? I already tried termcap, but have several problems with it: When basing a termcap module directly on the /etc/termcap ascii file, as the perl termcap module does (i.e. no interference of C wrapper code), the buffering of the i/o functions of guile doesn't work well. I'd need something that behaves about exactly like write() from unistd.h. String munching isn't yet a major strength of guile, but that is improving (any projects out there with that purpose? A comprehensive string library for guile would be cool.) When , however, providing a termcap module based on libtermcap, one problem is to do the garbage collection of the allocated buffers correctly, especially the one done by tgetstr(). Also I'd like to unite tgetstr, tgetnum and tgetflag into a single function, to provide a more scheme-ish look-and-feel. Another thing is to get a termcap module work with terminfo. I haven't understood yet how those programs that can be linked with either termcap- or terminfo support do that. Slang is another interesting topic. Of course Slang's screen management can be used independently from the scripting language it was intented for (mc and lynx do not use SLang as extension language, I guess), but as many are already talking about readers for non-scheme-ish idioms in guile , which offers a large range of future projects, the SLang language could be one of them. Thus jed could become guilified in a similar way as emacs. -- Klaus Schilling