caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* Re: [Caml-list] Cross-platform "Hello, World" graphical application in OCaml
@ 2005-03-05 12:31 Grégory Guyomarc'h
  0 siblings, 0 replies; 42+ messages in thread
From: Grégory Guyomarc'h @ 2005-03-05 12:31 UTC (permalink / raw)
  To: rich; +Cc: caml-list

Dear Caml-list,

<rich@annexia.org> said:
> On Wed, Mar 02, 2005 at 12:36:53AM -0600, Ken Rawlings wrote:
> > My experiences building Kog were overall positive. However, writing a
> > full-featured GUI from scratch is a lot of work, so Kog is likely to
> > remain a toy implementation for the foreseeable future. If there's
> > much interest in the OCaml community for this sort of thing though,
> > I'd love to work with a group on a project getting a full-featured
> > lightweight GUI up and running with OCaml, whether it be on OpenGL
> > directly, or one of the higher level vector libraries.
> 
> I think this would be the wrong direction to go.
> 
> What I think would be useful is an OCaml wrapper around Gtk, Win32 and
> Aqua/COCOA.  The idea would be for the OCaml wrapper to abstract away
> the differences, allowing cross-platform programming with native
> widgets.  WxWidgets fits the bill here, but the actual API is clunky.
> I have a feeling that something could be done better with a functional
> programming approach.

I think it has not yet been mentioned in this thread, but as far as I
understand it, the java Standard Widget Toolkit (SWT) do just that. It
acts as a thin layer above the native toolkits (in fact it seems above
the simpler widgets like buttons, labels, etc, others like menu bars are
re-implemented in java). It already supports an impressive set of
backends: gtk, windows, carbon, photon, and motif. I don't know how well
the API compares to wxWidgets', I have never used any of them, but it
seems quite popular.

Here are some links,

http://www.eclipse.org/articles/Article-SWT-Design-1/SWT-Design-1.html
http://dev.eclipse.org/viewcvs/index.cgi/platform-swt-home/dev.html?rev=1.228
http://www.developer.com/java/other/article.php/2179061

> Of course it's a lot of tedious engineering work.  I'm not
> volunteering!
> 
> Rich.
> 
> -- 
> Richard Jones, CTO Merjis Ltd.
> Merjis - web marketing and technology - http://merjis.com
> Team Notepad - intranets and extranets for business -
> http://team-notepad.com

Sincerely,

Gregory.


^ permalink raw reply	[flat|nested] 42+ messages in thread
* Re: [Caml-list] Cross-platform "Hello, World" graphical application in OCaml
@ 2005-03-05 13:09 Gregory Guyomarc'h
  0 siblings, 0 replies; 42+ messages in thread
From: Gregory Guyomarc'h @ 2005-03-05 13:09 UTC (permalink / raw)
  To: caml-list

Dear Caml-list,

<rich@annexia.org> said:
>On Wed, Mar 02, 2005 at 12:36:53AM -0600, Ken Rawlings wrote:
> > My experiences building Kog were overall positive. However, writing a
> > full-featured GUI from scratch is a lot of work, so Kog is likely to
> > remain a toy implementation for the foreseeable future. If there's
> > much interest in the OCaml community for this sort of thing though,
> > I'd love to work with a group on a project getting a full-featured
> > lightweight GUI up and running with OCaml, whether it be on OpenGL
> > directly, or one of the higher level vector libraries.
>
>I think this would be the wrong direction to go.
>
>What I think would be useful is an OCaml wrapper around Gtk, Win32 and
>Aqua/COCOA.  The idea would be for the OCaml wrapper to abstract away
>the differences, allowing cross-platform programming with native
>widgets.  WxWidgets fits the bill here, but the actual API is clunky.
>I have a feeling that something could be done better with a functional
>programming approach.

I think it has not yet been mentioned in this thread, but as far as I
understand it, the java Standard Widget Toolkit (SWT) do just that. It
acts as a thin layer above the native toolkits (in fact it seems above
the simpler widgets like buttons, labels, etc, others like menu bars are
re-implemented in java). It already supports an impressive set of
backends: gtk, windows, carbon, photon, and motif. I don't know how well
the API compares to wxWidgets', I have never used any of them, but it
seems quite popular.

Here are some links,

http://www.eclipse.org/articles/Article-SWT-Design-1/SWT-Design-1.html
http://dev.eclipse.org/viewcvs/index.cgi/platform-swt-home/dev.html?rev=1.228
http://www.developer.com/java/other/article.php/2179061

>Of course it's a lot of tedious engineering work.  I'm not
>volunteering!
>
>Rich.
>
>--
>Richard Jones, CTO Merjis Ltd.
>Merjis - web marketing and technology - http://merjis.com
>Team Notepad - intranets and extranets for business -
>http://team-notepad.com

Sincerely,

Gregory.



^ permalink raw reply	[flat|nested] 42+ messages in thread
[parent not found: <20050223054011.3414.28936.Mailman@yquem.inria.fr>]
* Cross-platform "Hello, World" graphical application in OCaml
@ 2005-02-22 12:03 Richard Jones
  2005-02-22 12:15 ` [Caml-list] " Sven Luther
  2005-02-22 17:05 ` Blair Zajac
  0 siblings, 2 replies; 42+ messages in thread
From: Richard Jones @ 2005-02-22 12:03 UTC (permalink / raw)
  To: caml-list

http://merjis.com/developers/xphelloworld

This is something I've been meaning to do for over a year now, and
I've finally got around to it.  In 2003 I worked on a project where we
wrote a complex graphical (Gtk-based) application for Windows.  The
program was primarily written on Linux, and we developed a
cross-platform Makefile and installer allowing us to target both
Windows and Unix platforms.  The managers of this project have kindly
allowed me to release the Makefile, NSIS installer script, and
supporting code into the public domain.

This is a "Hello, World"-type program which shows how it is possible
to write a cross-platform graphical application which targets Windows
and Unix.  On Windows, it comes with an installer, an uninstaller, a
desktop icon and menu entries.  It has the native Windows look and
feel on Windows.  On Linux/Unix it has the ordinary Gtk look and feel.

License is public domain.  You can do whatever you like with the
Makefile and installer script, including writing proprietary packages.

I need help documenting how to install all the many extra development
packages required under Windows.  Let me know if you can help me
document this.  At the moment I have a Windows box here which works,
but I'll need to reverse engineer exactly what I installed and where I
got each component from.

Rich.

-- 
Richard Jones, CTO Merjis Ltd.
Merjis - web marketing and technology - http://merjis.com
Team Notepad - intranets and extranets for business - http://team-notepad.com


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

end of thread, other threads:[~2005-03-05 13:09 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-03-05 12:31 [Caml-list] Cross-platform "Hello, World" graphical application in OCaml Grégory Guyomarc'h
  -- strict thread matches above, loose matches on Subject: below --
2005-03-05 13:09 Gregory Guyomarc'h
     [not found] <20050223054011.3414.28936.Mailman@yquem.inria.fr>
2005-03-02  6:36 ` Ken Rawlings
2005-03-02  6:56   ` Nicolas Cannasse
2005-03-02 11:40   ` Richard Jones
2005-03-02 12:06     ` Nicolas Cannasse
2005-03-05 12:51     ` Sven Luther
2005-02-22 12:03 Richard Jones
2005-02-22 12:15 ` [Caml-list] " Sven Luther
2005-02-22 12:28   ` Richard Jones
2005-02-22 12:35     ` Sven Luther
2005-02-22 12:53       ` Richard Jones
2005-02-22 14:27         ` Sven Luther
2005-02-22 17:05 ` Blair Zajac
2005-02-22 17:23   ` Richard Jones
2005-02-22 19:24     ` Jon Harrop
2005-02-22 20:24       ` Richard Jones
2005-02-22 21:23         ` Jon Harrop
2005-02-22 22:13           ` chris.danx
2005-02-22 23:00             ` Jon Harrop
2005-02-23  0:18               ` Oliver Bandel
2005-02-23 17:24               ` Christopher Campbell
2005-02-22 23:38           ` Richard Jones
2005-02-22 21:26         ` chris.danx
2005-02-22 22:16           ` Jon Harrop
2005-02-22 23:30             ` Daniel Bünzli
2005-02-23  0:05               ` Jon Harrop
2005-02-23  3:05                 ` Michael Walter
2005-02-23  3:13                 ` Daniel Bünzli
2005-02-23  3:57                   ` Jon Harrop
2005-02-23  7:29                 ` Bardur Arantsson
2005-02-23 11:21                   ` Jon Harrop
2005-02-23 11:45                     ` Bardur Arantsson
2005-02-23  0:27               ` Oliver Bandel
2005-02-22 20:57       ` chris.danx
2005-02-23  9:58         ` Olivier Andrieu
2005-02-23 17:23           ` Christopher Campbell
2005-02-23  0:02       ` Oliver Bandel
2005-02-23 11:37         ` Jon Harrop
2005-03-01 14:35         ` Ingo Bormuth
2005-02-22 23:59     ` Oliver Bandel
2005-02-23 15:21       ` William D. Neumann
2005-02-24  0:44         ` Oliver Bandel

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).