BookRags.com Literature Guides Literature
Guides
Criticism & Essays Criticism &
Essays
Questions & Answers Questions &
Answers
Lesson Plans Lesson
Plans
My Bibliography Periodic Table U.S. Presidents Shakespeare Sonnet Shake-Up
Research Anything:        
History | Encyclopedias | Films | News | Create a Bibliography | More... Login | Register | Help

Yi (editor)

Print-Friendly
About 1 pages (345 words)

Bookmark and Share Know this topic well? Help others and get FREE products!

Yi is a text editor written and extensible in Haskell. The goal of Yi is to provide a flexible, powerful and correct editor core dynamically scriptable in Haskell. Yi is a Haskell interpreter[1], very much like Emacs is an Emacs Lisp interpreter; however, the authors of the Yi paper point out that this technique is as powerful as the Emacs method of loading at runtime dynamically typed code but can be accomplished with static typed Haskell code - allowing for greater performance and safety. Specifically, Yi is implemented as a small executable program which compiles through GHC the larger body of code which actually constitutes a useful editor; this small 'kernel' can repeatedly recompile (and thus type-checking) the extensions. This makes it easy to dynamically hack, experiment and modify Yi despite it being written in a strongly statically typed language. Using Haskell as a first-class extension languages means that other libraries and tools written in Haskell are also readily usable in editor code. The long term goal of the project is to in essence make Yi the editor of choice for Haskell hackers in much the same way that Emacs is the editor of choice for Lisp programmers.

Contents

Front ends

Yi can use either gtk2hs or vty as front ends, so users can choose their favorite interface.

"Emulation modes"

The primary emulation modes for Yi are vim and emacs. Keybindings for vi, mg and nano and other are also provided. Other editor interfaces can be written by the user to extend Yi.

References

  1. ^ This is implemented by binding to the Glasgow Haskell Compiler API; in other words, Yi will call a built-in copy (hsplugs) of GHC

External links

View More Summaries on Yi (editor)
 
Ask any question on Yi (editor) and get it answered FAST!
Answer questions in BookRags Q&A and earn points toward
discounted or even FREE Study Guides and other BookRags products!
Learn more about BookRags Q&A
Copyrights
Yi (editor) from Wíkipedia. ©2006 by Wíkipedia. Licensed under the GNU Free Documentation License. View a list of authors or edit this article.

Article Navigation
Join BookRagslearn moreJoin BookRags




About BookRags | Customer Service | Report an Error | Terms of Use | Privacy Policy