From: Seth Kurtzberg Date: 2003-10-09T07:18:50+09:00 Subject: Re: Extension Language for a Text Editor Well, for one thing, doing it in lisp would be reinventing the wheel, as emacs has been around for ages. One main advantage that I see to ruby is that one could modify existing code and add new code much more easily if the modifier doesn't have a lisp background. lisp code is horribly unreadable. If you do want to use a functional language Haskell is a much better choice, and would in fact be interesting in this context. Nikolai Weibull wrote: >OK. So I'm going to write a text editor for my masters' thesis. The >general idea of it is fixed but the extension language has not been >settled on, yet. I have thought of, in the footsteps of editors such as >Emacs and its clones, using some version of LISP or Scheme, possibly >GNU's Guile[1], or Jade's librep[2]. LISP-like languages have proved >very successful in describing the way we edit text and is thus a sure >bet. It would, however, perhaps be of interest to use another language >to try the waters. In my previous editor (slackedit/sled[3]) I used >Tcl[4] as an extension language, and it proved very easy to use, but I >never got far enough to actually give it a good run. > >Anyway, what I'm getting at is: > >Do you figure Ruby to be a good extension language for a text editor? >* What would be easier to do using Ruby? >* LISP? >* What language allows the most of the editing commands to be written in > the given language? >* Is Ruby good enough for the task at the moment, performance wise? >* Resource wise? Does anyone have any statistics on this? > >I'm not talking about the ease of implementing a web browser in the >target language, rather the ease of structuring an extensible framework >in it. > >Also, is there any way of redefining the // operator for constructing >regular expression objects? I'm planning on implementing a new regex >syntax for the editor (to make searches/substitutions easier to >describe). > >thanks in advance, > nikolai > >[1] http://www.gnu.org/software/guile/ >[2] http://librep.sourceforge.net/ >[3] http://www.pcppopper.org/code/win/sled/ >[4] http://www.scriptics.com/ > >-- >::: name: Nikolai Weibull :: aliases: pcp / lone-star / aka ::: >::: born: Chicago, IL USA :: loc atm: Gothenburg, Sweden ::: >::: page: www.pcppopper.org :: fun atm: gf,lps,ruby,lisp,war3 ::: >main(){printf(&linux["\021%six\012\0"],(linux)["have"]+"fun"-97);} > > >. > > > -- Seth Kurtzberg CTO Scottsdale Research and Network Operations Center ISEC.us seth@isec.us