caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* labltk for tk 8.4 BETA release
@ 2007-05-12  2:56 Jeffrey Loren Shaw
  2007-05-12  9:19 ` [Caml-list] " David Teller
  0 siblings, 1 reply; 6+ messages in thread
From: Jeffrey Loren Shaw @ 2007-05-12  2:56 UTC (permalink / raw)
  To: caml-list

Dear Ocaml-ers, 

I've updated labltk to use some new widgets and commands that are available 
in Tk 8.4. 

DIRECTIONS:
get the ocaml 3.10 beta release
extract the ocaml beta archive
replace otherlibs/labltk with the one from the following link
http://www.msu.edu/~shawjef3/labltk-8.4-BETA1.zip 

configure, make world, make install 

This is a BETA release, meaning that I believe I've implemented all the new 
features, but I haven't tested them much. 

Here are my additions to the changelog: 

2007-05-11 (*BETA release from shawjef3@msu.edu*)
 ----------
*labltk now requires Tk 8.4
*added spinbox widget
*added TkConsole module
*added labelframe widget
*added panedwindow widget
*added functions tk_textCopy, tk_textCut, tk_text_Paste to the text widget
*Removed CamlTk
*Removed tkanim (depended on Camltk)
*Removed Frx (Depended on Camltk)
*Removed examples_camltk (Depended on Camltk) 

Please note that this is an unofficial release. I'm not affiliated with the 
ocaml development team. 

Enjoy!
Jeff


^ permalink raw reply	[flat|nested] 6+ messages in thread
* Re: [Caml-list] labltk for tk 8.4 BETA release
@ 2007-05-12 14:37 Jeffrey Loren Shaw
  2007-05-14 21:48 ` David Teller
  0 siblings, 1 reply; 6+ messages in thread
From: Jeffrey Loren Shaw @ 2007-05-12 14:37 UTC (permalink / raw)
  To: caml-list


* ease of installation 

http://downloads.activestate.com/ActiveTcl/Windows/8.3.5/ 

or for the beta labltk... 

http://downloads.activestate.com/ActiveTcl/Windows/8.4.14/ 

Yup that link should be updated. I don't think it should be bundled with 
ocaml, however. The end-user might already have it installed, or might not 
need it. But this is a decision for the ocaml devs. 

* Documentation 

You're right, it's not very good. I used the ocamlbrowser extensively to 
learn how to use labltk. It took me a lot of experimenting, and I'm still 
terrible at getting widgets laid out the way I want. 

I'm not sure how to do the documentation in an automated way without 
changing the grammar for widgets.src to allow ocamldoc comments. That's 
beyond my abilities, but I suppose it's a worthy project for someone. On the 
other hand, widgets.src is already very cluttered. 

* Other libraries 

I don't know anything about these, but again these are questions for the 
ocaml devs. 

Anyway, my focus right now is getting this beta version of labltk working 
correctly... there's a lot of functions to test. 

Now here's an idea... 

Instead of documenting labltk, which is difficult for the beginner ocaml 
programmer anyway, make a wrapper to make it more ocaml-y. I'm not sure if 
this would be easy or possible, but coercing labltk into one style of 
programming (preferably functional) could go a long way towards making it 
easier to learn for the beginner. Also the wrapper would potentially be 
easier to document. As I recall, the most difficult aspects of labltk are 
those that are imperative, eg: 

event functions are unit -> unit, (maybe this can't be avoided)
pack is difficult to deal with,
the need to use optionmenu and Textvariable.handle together is not obvious 

Another huge but useful project would be a type-safe parser for the outputs 
given by the Widget.configure_get functions. 

Now back to testing.


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2007-05-18 12:35 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-05-12  2:56 labltk for tk 8.4 BETA release Jeffrey Loren Shaw
2007-05-12  9:19 ` [Caml-list] " David Teller
2007-05-12 14:37 Jeffrey Loren Shaw
2007-05-14 21:48 ` David Teller
2007-05-15  8:08   ` Richard Jones
2007-05-18 12:35     ` David Teller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).