> > You may also consider building a plugin architecture for Clooj. For > > example, Leiningen support can be built by writing a plugin. > > That's an interesting idea. How do you envision a plugin architecture > should work?
>From the top of my head it looks like it should be possible to safely maintain a global state. The global state can change when you switch from project to project or create/remove projects. Since it is Clojure, safety (due to concurrency) is less of a concern. Based on the Global state, you can choose to render different things for the various controls on screen. For example, if the current project contains project.clj and Leiningen plugin is installed then include a Leiningen menu in the menu bar (which should act on the "current" project). Similarly, if Marginalia plugin is installed then show a Marginalia menu item under "Tools". A "TextMate theme" plugin may work by taking into account less amount of global states -- it should rather modify the way controls are rendered. So, the look-n-feel should be theme-able. The keyword here seems to be "well defined global state properties," which could be hierarchical in order to be extensible. Regards, Shantanu -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en