Difference between revisions of "Yhc/Yhe"

From HaskellWiki
< Yhc
Jump to navigation Jump to search
 
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{Yhc}}
 
{{Yhc}}
   
Yhe is a command-line style tool in the vein of Ghci and Hugs. It consists of a command-line tool, yhe, and a GUI, Gyhe, written using gtk2hs. It was mostly written by [http://www.cs.york.ac.uk/~miked/ Mike Dodds].
+
Yhe is a command-line style tool in the vein of Ghci and Hugs. It consists of a command-line tool, yhe, and a GUI, Gyhe, written using [http://www.haskell.org/gtk2hs/gtk2hs Gtk2hs]. It was mostly written by [[User:MikeDodds|Mike Dodds]].
   
 
Features of Gyhe:
 
Features of Gyhe:
Line 8: Line 8:
 
* Syntax-highlighting of input with gtksourceview widget
 
* Syntax-highlighting of input with gtksourceview widget
   
== Todo ==
+
== Trying Gyhe ==
   
  +
Gyhe is still very much alpha software - if you need a stable haskell gui, I'd suggest you use [[WinHugs]]. That said, if you want to try Gyhe:
General:
 
  +
* Ensure that you have the development version of [http://www.haskell.org/gtk2hs/gtk2hs Gtk2hs] installed.
* Add lazy evaluation - currently we only get a result after the program terminates
 
  +
* Get the yhc-devel branch of Yhc from darcs, and install it. Please see [[Yhc/Introduction]] for details on how to do this.
* Generally the evaluation code needs a lot of work
 
  +
* Change your working directory to yhc-devel/src/interactive/
  +
* Run 'make gui', and the gyhe executable should be created in yhc-devel/inst/bin/.
   
  +
Mac OSX users will have to run an X server to run Gyhe.
GUI:
 
* Put the evaluation code into a thread so that the gui doesn't block while evaluating. ''I've tried this, and the performance advantage is extremely marginal - may be worth while if we implement user interaction with a running process.''
 
* Add file URI support to link to a file and load a text editor. ''Currently waiting for a response from the gtk2hs people re: clickable regions in TextView widgets.''
 
* Rebuild the icon - the lambda should be centered.
 
* Fix the makefile to detect the sourceview widget - at the moment it is always off at compile-time
 
   
  +
Any comments or patches you have would be welcome.
Speculative / Moon on a stick:
 
* Save the pane-divider position between sessions - I don't know if we really want this?
 
* Add clickable links into [[Hoogle]]
 
* Handle drag-and-drop events from other processes - probably OS dependant
 
* Windows version, like WinHugs, using native widgets.
 
   
== Bugs ==
+
== Screenshots ==
   
 
http://www-users.cs.york.ac.uk/~miked/images/gyhe_screengrab3.png
* Closing while maximised and then restarting results in a fullscreen non-maximised window
 
   
== Screenshots ==
+
== Todo List ==
   
  +
Sensible short-term aims:
http://www-users.cs.york.ac.uk/~miked/images/gyhe_sceengrab2.jpg
 
 
* Add lazy evaluation - currently we only get a result after the program terminates
 
* Add file URI support to link to a file and load a text editor. ''Currently waiting for parsable error messages from the Yhc developers.''
 
* Fix the makefile to detect the sourceview widget - at the moment it is always off at compile-time
   
  +
Less sensible longer-term aims:
http://www-users.cs.york.ac.uk/~miked/images/gyhe_sceengrab1.jpg
 
 
* Add clickable links into [[Hoogle]]
 
* Handle drag-and-drop events from other processes
  +
* Add support for other compilers.
 
* Windows version, like [[WinHugs]], using native widgets.

Latest revision as of 21:54, 13 February 2006

Part of Yhc

(Download)

Yhe is a command-line style tool in the vein of Ghci and Hugs. It consists of a command-line tool, yhe, and a GUI, Gyhe, written using Gtk2hs. It was mostly written by Mike Dodds.

Features of Gyhe:

  • Single and multi-line input
  • Cross-platform gui (works on Linux, Windows and MacOS)
  • Syntax-highlighting of input with gtksourceview widget

Trying Gyhe

Gyhe is still very much alpha software - if you need a stable haskell gui, I'd suggest you use WinHugs. That said, if you want to try Gyhe:

  • Ensure that you have the development version of Gtk2hs installed.
  • Get the yhc-devel branch of Yhc from darcs, and install it. Please see Yhc/Introduction for details on how to do this.
  • Change your working directory to yhc-devel/src/interactive/
  • Run 'make gui', and the gyhe executable should be created in yhc-devel/inst/bin/.

Mac OSX users will have to run an X server to run Gyhe.

Any comments or patches you have would be welcome.

Screenshots

gyhe_screengrab3.png

Todo List

Sensible short-term aims:

  • Add lazy evaluation - currently we only get a result after the program terminates
  • Add file URI support to link to a file and load a text editor. Currently waiting for parsable error messages from the Yhc developers.
  • Fix the makefile to detect the sourceview widget - at the moment it is always off at compile-time

Less sensible longer-term aims:

  • Add clickable links into Hoogle
  • Handle drag-and-drop events from other processes
  • Add support for other compilers.
  • Windows version, like WinHugs, using native widgets.