Hugs plugin, Haskell Browser

2002-03-13 Thread Robert Giegerich

Teachers in Haskell,

I often use Haskell demos in teaching algorithms. The problem is that this
does not integrate well with the rest of the material, e.g. lecture
notes or slides in PDF or HTML. I'd like to integrate explanations and
demos and explorative changes to algorithms. This needs better support.

Is there something like a Hugs plugin for Netscape?

Is there something like a Haskell source browser producing XML or HTML?

Thanks for all hints

Robert Giegerich

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-13 Thread Abraham Egnor

Vim can produce HTML from any source code it has highlighting rules for,
which includes Haskell.  Dunno about the browser plugin, though.

Abe

On Wed, 13 Mar 2002, Robert Giegerich wrote:

> Teachers in Haskell,
> 
> I often use Haskell demos in teaching algorithms. The problem is that this
> does not integrate well with the rest of the material, e.g. lecture
> notes or slides in PDF or HTML. I'd like to integrate explanations and
> demos and explorative changes to algorithms. This needs better support.
> 
> Is there something like a Hugs plugin for Netscape?
> 
> Is there something like a Haskell source browser producing XML or HTML?
> 
> Thanks for all hints
> 
> Robert Giegerich
> 
> ___
> Haskell mailing list
> [EMAIL PROTECTED]
> http://www.haskell.org/mailman/listinfo/haskell
> 

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-13 Thread Alastair David Reid


> Is there something like a Hugs plugin for Netscape?

We used to have one at Yale.  Can't remember what happened to it so I'm 
adding John Peterson to the address list in case he can remember.

-- 
Alastair ReidReid Consulting (UK) Ltd
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-13 Thread Manuel M. T. Chakravarty

"Robert Giegerich" <[EMAIL PROTECTED]> wrote,

> I often use Haskell demos in teaching algorithms. The problem is that this
> does not integrate well with the rest of the material, e.g. lecture
> notes or slides in PDF or HTML. I'd like to integrate explanations and
> demos and explorative changes to algorithms. This needs better support.
> 
> Is there something like a Hugs plugin for Netscape?

What I am doing is to run XEmacs and a PostScript previewer
(with the slides) on two different virtual desktops.  I can
switch between both desktops with a single keystroke.  In
XEmacs, I am using the Haskell mode from

  http://haskell.org/haskell-mode/

It does markup Haskell code quite nicely using colour and
allows me to run GHCi as a background process - ie, my
XEmacs window is split into two halfs with the font-locked
source on top and my GHCi session on the bottom.  In the
first year programming course that I teach, I always develop
and debug programs in front of the class (with maybe some
definitions pre-defined for larger examples).  In fact, I
regard it as a big advantage of using Haskell for first-year
teaching that this is possible (it's difficult with a more
verbose language).  I have run student surveys asking
students to comment on the lecture and the feedback has been
very positive.  In fact, the vast majority of students has
rated the described approach as by far superior to the
traditional chalk&talk approach.

> Is there something like a Haskell source browser producing XML or HTML?

Again, XEmacs with the above mentioned Haskell mode can do
it.  Just execute the function `htmlize-buffer' on a buffer
containing the Haskell source.  As an example for the
generated output, have a look at

  http://www.cse.unsw.edu.au/~chak/haskell/gtk/BoolEd.html

The detailed choice of colours is, of course, adjustable.
At least on a Unix machine, I am quite sure you can use
XEmacs also in batch mode to generate the HTML (eg, as part
of a Makefile), but I haven't actually used it that way yet.

Cheers,
Manuel

PS: I am doing all this on a laptop running Linux, but I
think the virtually same setup should be possible on a
Win32 box as XEmacs is available for that platform,
too.
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-13 Thread Ketil Z. Malde

"Manuel M. T. Chakravarty" <[EMAIL PROTECTED]> writes:

> The detailed choice of colours is, of course, adjustable.
> At least on a Unix machine, I am quite sure you can use
> XEmacs also in batch mode to generate the HTML

Sure.  Have a look at -batch, -f and -eval options.  Be prepared for a
bit of lag at startup though :-)

-kzm
-- 
If I haven't seen further, it is by standing in the footprints of giants
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-14 Thread Martin Norbäck

tor 2002-03-14 klockan 08.02 skrev Ketil Z. Malde:
> "Manuel M. T. Chakravarty" <[EMAIL PROTECTED]> writes:
> 
> > The detailed choice of colours is, of course, adjustable.
> > At least on a Unix machine, I am quite sure you can use
> > XEmacs also in batch mode to generate the HTML
> 
> Sure.  Have a look at -batch, -f and -eval options.  Be prepared for a
> bit of lag at startup though :-)

Enscript has support for coloring Haskell and outputting html:

enscript --language=html --pretty-print=haskell --color --output=-

--output=- is for stdout

You could easily invoke it from a cgi-script.

Regards,

Martin

-- 
[ http://www.dtek.chalmers.se/~d95mback/ ] [ PGP: 0x453504F1 ] [ UIN:
4439498 ]
Opinions expressed above are mine, and not those of my future
employees.
SIGBORE: Signature boring error, core dumped

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-14 Thread Frank Atanassow

"Robert Giegerich" <[EMAIL PROTECTED]> wrote,
> I often use Haskell demos in teaching algorithms. The problem is that this
> does not integrate well with the rest of the material, e.g. lecture
> notes or slides in PDF or HTML. I'd like to integrate explanations and
> demos and explorative changes to algorithms. This needs better support.
> 
> Is there something like a Hugs plugin for Netscape?

Is DVI OK?

The Active-DVI package

  http://pauillac.inria.fr/activedvi/

allows embedding programs into DVI files, along with a host of other features
for presentations (effects, links, transitions, ...). If you look at the demo
included with the distribution you will see a slide with a copy of the Ocaml
interpreter running inside a DVI page.

Files using ActiveDVI specials are still viewable with, for example, xdvi, but
of course most of the features are absent or mangled.

-- 
Frank Atanassow, Information & Computing Sciences, Utrecht University
Padualaan 14, PO Box 80.089, 3508 TB Utrecht, Netherlands
Tel +31 (030) 253-3261 Fax +31 (030) 251-379
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-14 Thread Max Kirillov

On Thu, Mar 14, 2002 at 03:05:34PM +1100, Manuel M. T. Chakravarty wrote:
> Again, XEmacs with the above mentioned Haskell mode can do
> it.  Just execute the function `htmlize-buffer' on a buffer
> containing the Haskell source.  As an example for the
> generated output, have a look at
> 
>   http://www.cse.unsw.edu.au/~chak/haskell/gtk/BoolEd.html
> 
> The detailed choice of colours is, of course, adjustable.
> At least on a Unix machine, I am quite sure you can use
> XEmacs also in batch mode to generate the HTML (eg, as part
> of a Makefile), but I haven't actually used it that way yet.

1. Why CSS? Why did I need to enable Java in my Netscape to
see the colours? Man, it's just to _indent_ and _paint_!

2. When I hear "translate to HTML" I imagine that underlined
words which can be clicked to see, say, definition of
function. Sadly, most htmlizers are focused on highlighting
rather than navigation. The good news is that could be
simply cured with postprocessing of the resulting html file
using tags file.  There are several tags generators for
haskell, both for vim and emacs (ghc distribution contains 2
of them). So the problem can be "reduced to the already
seen".

Just today I've found the program which does the job for
"vim documentation". It uses vim tags file and 2html.vim
script which is in vim package.  Though the idea is obvious,
I've never seen before anybody think of it (maybe I'm the
one who need it?).  The program is very short perl script.
I'll try to adopt it for common files (so, for the haskell
too).

The address:

http://www.erebus.demon.nl/vim/

> Cheers,
> Manuel

Max.
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-14 Thread C.Reinke


> 2. When I hear "translate to HTML" I imagine that underlined
> words which can be clicked to see, say, definition of
> function. Sadly, most htmlizers are focused on highlighting
> rather than navigation. 

Why generate HTML pages if noone reads them?-)

Take this obscure location, for instance:

  http://www.haskell.org/libraries/#docu

admittedly, Jan Skibinski's Haskell module browser is currently
only available via archives, but it wasn't HTML-based anyway, and
the other two links still work.

Here's another example of text colouring that can be clicked
on (few people do, so it has become quite silent on the mailing 
list, try the first months for more action..):

  http://haskell.org/mailman/listinfo/haskelldoc

Hth,
Claus

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-14 Thread Manuel M. T. Chakravarty

Max Kirillov <[EMAIL PROTECTED]> wrote,

> On Thu, Mar 14, 2002 at 03:05:34PM +1100, Manuel M. T. Chakravarty wrote:
> > Again, XEmacs with the above mentioned Haskell mode can do
> > it.  Just execute the function `htmlize-buffer' on a buffer
> > containing the Haskell source.  As an example for the
> > generated output, have a look at
> > 
> >   http://www.cse.unsw.edu.au/~chak/haskell/gtk/BoolEd.html
> > 
> > The detailed choice of colours is, of course, adjustable.
> > At least on a Unix machine, I am quite sure you can use
> > XEmacs also in batch mode to generate the HTML (eg, as part
> > of a Makefile), but I haven't actually used it that way yet.
> 
> 1. Why CSS? 

CSS is fine, ...

> Why did I need to enable Java in my Netscape to
> see the colours? Man, it's just to _indent_ and _paint_!

it is Netscape which is rotten ;-)

There is no reason in a Web browser to have to activate
extra languages to implement CSS...except bad software
design.  I'd suggest to get a proper browser like Mozilla

  http://mozilla.org/

or Galeon

  http://galeon.sourceforge.net/
 
(I particularly like the latter.)

(Switching on JavaScript is sufficient, btw.)

> 2. When I hear "translate to HTML" I imagine that underlined
> words which can be clicked to see, say, definition of
> function. Sadly, most htmlizers are focused on highlighting
> rather than navigation. The good news is that could be
> simply cured with postprocessing of the resulting html file
> using tags file.  There are several tags generators for
> haskell, both for vim and emacs (ghc distribution contains 2
> of them). So the problem can be "reduced to the already
> seen".

It depends what you want.  A tool which cross-references
variable occurences, I would call a cross reference tool
rather than an HTML pretty-printer.

Cheers,
Manuel
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-15 Thread Max Kirillov

On Thu, Mar 14, 2002 at 07:29:13PM +, C.Reinke wrote:
> 
>> 2. When I hear "translate to HTML" I imagine that underlined
>> words which can be clicked to see, say, definition of
>> function. Sadly, most htmlizers are focused on highlighting
>> rather than navigation. 
> 
> Why generate HTML pages if noone reads them?-)

I said "most"! :) (To be honest, I thought about "all")

Well, I mostly referred at multi-lingual html grnerators
which come with that unix editors. There are alot of xref
tools for every given language, but that zoo is quite hard
to maintain, if you have to live with, say, 4 languages.

Max.
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Hugs plugin, Haskell Browser

2002-03-15 Thread Claus Reinke

> >> function. Sadly, most htmlizers are focused on highlighting
> >> rather than navigation. 
..
> I said "most"! :) (To be honest, I thought about "all")

just wanted to point out that there have been several hyperlinking
HTML documentation generators for Haskell (in fact, from memory
I'm quite sure there have been more than the two listed:-).
 
> Well, I mostly referred at multi-lingual html grnerators
> which come with that unix editors. There are alot of xref
> tools for every given language, but that zoo is quite hard
> to maintain, if you have to live with, say, 4 languages.

Now that is an entirely different problem. As you've mentioned,
tags-generators and "syntax" definitions exist for many language/
editor-combinations, so one could indeed imagine having to write only
one extra tool per editor. Another option would be literate programming
tools with hyperref support.

However, much of the discussion surrounding documentation tools 
has been on what standard formats programmers would have to adopt 
so that a tool would be able to extract comments and associate them 
with the correct declarations. Would you hope programmers of different 
languages/paradigms to agree on such an issue if they cannot even agree 
on an editor/a language?-)

On an unrelated issue, though within the subject: Haskellers using Vim 
might want to take a sneak preview of a little hack in which I'm using 
Hugs as a kind of Vim plugin (hopelessly inefficient in theory, but no 
problem in practice with last year's machines:).

a Vim compiler plugin for Hugs (drop in one of Vim's compiler/ directories)
http://www.cs.ukc.ac.uk/people/staff/cr3/tmp/hugs.vim

its help file (drop in one of Vim's doc/ directories, and regenerate
helptags in that directory; then type :help hugs.vim)
http://www.cs.ukc.ac.uk/people/staff/cr3/tmp/hugs.txt

(pre-release testers and feedback welcome:-)

Cheers,
Claus

--
Research Opportunity: Refactoring Functional Programs (UKC)
Closing date: Friday 22 March 2002 !!
http://www.cs.ukc.ac.uk/vacancies_dir/r02-24.html


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell