public inbox for gsl-discuss@sourceware.org
 help / color / mirror / Atom feed
* Re: interfacing GSL Pop11/Poplog
@ 2001-12-19 13:20 E. Robert Tisdale
  0 siblings, 0 replies; 3+ messages in thread
From: E. Robert Tisdale @ 2001-12-19 13:20 UTC (permalink / raw)
  To: gsl-discuss

Aaron Sloman wrote:

> The proposal is that a "popgsl" package
> could also become available
> with documentation and interfaces to the GSL facilities
> including hand-coded or automatically generated wrappers.
> This is analogous to the way Pop-11 currently has access
> to all the X facilities, i.e. through Pop-11 procedures
> which invoke the C procedures.
> 
> People using this popgsl package
> would probably obtain GSL separately,
> though there might be some benefit
> in providing pre-compiled saved images for some users
> (or making a stable version of GSL available
>  at the Poplog site).

The GSL developers just aren't there yet.

The hope is, as I understand it, that
the GSL API will be more or less fixed
with the release of version 1.0
The GSL developers really haven't considered
any language bindings except for ANSI C yet.
It isn't clear whether they will ever support
any other language bindings.
I guess that they would try to support C++
and Fortran 90 language bindings first
because they are the most popular languages
for numerical computing.

It might take another year or two
before the GSL developers can consider
other language bindings
but that shouldn't prevent you
from beginning work now
on a language binding for Pop-11.
You just need to expect that
any interface that you might implement
will require constant maintenance
as the GSL continues to evolve.

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

* interfacing GSL Pop11/Poplog
@ 2001-12-19 13:20 Aaron Sloman
  2001-12-19 13:20 ` Brian Gough
  0 siblings, 1 reply; 3+ messages in thread
From: Aaron Sloman @ 2001-12-19 13:20 UTC (permalink / raw)
  To: gsl-discuss

I wrote to the GSL Authors about a proposal to interface Pop11
(the core language of Poplog, described below) to GSL, and Mark Galassi
suggested I post to this email list.

This message is mainly for information but I'll welcome comments or
suggestions and references to any similar work in progress.

On the news group comp.lang.pop (linked to email list
pop-forum@cs.bham.ac.uk) I recently proposed that it would be
a good idea to interface pop-11 (the core language of Poplog) to
GSL, both as a way of enhancing Pop-11 and also as a way of making
GSL facilities available in a rich interactive development environment
designed for AI research and teaching.

This has stirred up some interest and it seems likely that some Poplog
users will follow up the suggestion.

All the licensing conditions of GSL will be adhered to.

Does anyone know of any similar effort to link GSL to an interactive AI
language, e.g. Lisp?

It would be very nice if something comparable in power to Matlab and as
easy to use for interactive development, could be available completely
free of charge with full sources.

I am not an expert in scientific/numerical computation but my impression
is that this could be achieved by making GSL procedures easy to invoke
from Pop11 (as has alrady been done for other things written in C, e.g.
a large number of X facilities, vision utilities, etc.).

For anyone who has never heard of Poplog or Pop-11, information
is available here
    http://www.cs.bham.ac.uk/research/poplog/poplog.info.html

Summary:
   POPLOG, originally developed for teaching and research at Sussex
   university started being sold commercially around 1982.
   Until recently it was an expensive commercial product, sold by
   ISL (see www.isl.co.uk who used it for their very successful
   Clementine prodct) but now it is is available free, with full
   sources, for a number of unix/linux platforms and VMS, with a
   licence analogous to XFree86, at
        http://www.cs.bham.ac.uk/research/poplog/freepoplog.html

   It is a multi-language software development environment providing
   incremental compilers for a number of interactive programming
   languages, notably:
    Pop-11
            The core language of Poplog, derived from Pop2, the
            Edinburgh AI language developed in the 60s and 70s
            and extended at Sussex University in the 80s and 90s.
            Incrementally compiled interactive language, very similar in
            power to Common Lisp but has a more familiar syntax
            and is preferred by some for AI and other applications
            although it has no interpreter.
            Relevant to GSL: pop-11 already supports integers,
            bigintegers, single and double decimals (floats), ratios,
            and complex numbers, as described in
            http://www.cs.bham.ac.uk/research/poplog/doc/popref/numbers
    Prolog
    Common Lisp
    Standard ML
    (Other languages added by individuals but not yet part of poplog,
    e.g. Scheme implemented by Robin Popplestone at umass Amherst)

Apart from Pop-11, these languages are provided as optional additions,
usually in the form of `saved images' ie. with the extensions
precompiled.

Any package made available in Pop-11 can then be invoked from the
other languages as they all have interfaces to Pop-11.

Poplog has a rich interface to the X window system and a powerful
programmable editor Ved (written in Pop-11) which can run in the same
process as poplog - partly, but not entirely similar to Emacs. Poplog
can also be used with Emacs, with a very slight loss in functionality.
There's an Emacs package for poplog at the poplog site.

There is a windows/NT version of Poplog but without the graphics (unless
an expensive X emulation is used.)

There are various extensions to Poplog/Pop-11 available at the free
poplog site, including graphical tools, an agent toolkit, a library with
tools and teaching materials for work on vision, and various others.

The proposal is that a "popgsl" package could also become available with
documentation and interfaces to the GSL facilities including hand-coded
or automatically generated wrappers. This is analogous to the way Pop-11
currently has access to all the X facilities, i.e. through Pop-11
procedures which invoke the C procedures.

People using this popgsl package would probably obtain GSL separately,
though there might be some benefit in providing pre-compiled saved
images for some users (or making a stable version of GSL available
at the Poplog site).

I have no idea how much work this will involve! Obviously it could be
done in stages.

Anyhow, if you have any comments, suggestions, warnings, or pointers to
similar work linking GSL to an AI or other interactive language, please
let me know, and I'll pass them on to others who are interested in
contributing to this.

Or feel free to post comments to comp.lang.pop

Incidentally if anyone is interested to know more you can get a
feel for Pop-11 from my (incomplete) online primer:
    http://www.cs.bham.ac.uk/research/poplog/primer/
also available as
    http://www.cs.bham.ac.uk/research/poplog/pophtmlprimer.tar.gz
        292916 bytes

Best wishes.

Aaron
===
Aaron Sloman, ( http://www.cs.bham.ac.uk/~axs/ )
Professor of Artificial Intelligence and Cognitive Science
School of Computer Science, The University of Birmingham, B15 2TT, UK
EMAIL   A.Sloman@cs.bham.ac.uk
PAPERS: http://www.cs.bham.ac.uk/research/cogaff/
TOOLS: http://www.cs.bham.ac.uk/research/poplog/freepoplog.html

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

* Re: interfacing GSL Pop11/Poplog
  2001-12-19 13:20 Aaron Sloman
@ 2001-12-19 13:20 ` Brian Gough
  0 siblings, 0 replies; 3+ messages in thread
From: Brian Gough @ 2001-12-19 13:20 UTC (permalink / raw)
  To: Aaron Sloman; +Cc: gsl-discuss

Aaron Sloman writes:
 > Does anyone know of any similar effort to link GSL to an interactive AI
 > language, e.g. Lisp?

There is a list of "related projects" at http://sources.redhat.com/gsl/
Currently python & perlDL are listed.

 > Anyhow, if you have any comments, suggestions, warnings, or pointers to
 > similar work linking GSL to an AI or other interactive language, please
 > let me know, and I'll pass them on to others who are interested in
 > contributing to this.

I have used the SWIG wrapper generator to wrap small parts of the GSL
to perl, python and scheme (guile) in the past.  It worked ok, but the
binding is a mechanical translation -- one needs to define extensive
'typemaps' in SWIG to improve the mapping to the high-level language.

For languages not supported by SWIG it is also possible to use the
perl module C::Scan to parse C headers and automatically create a
wrapper that way.  I haven't tried that.

regards
Brian Gough

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

end of thread, other threads:[~2001-12-19 13:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-12-19 13:20 interfacing GSL Pop11/Poplog E. Robert Tisdale
  -- strict thread matches above, loose matches on Subject: below --
2001-12-19 13:20 Aaron Sloman
2001-12-19 13:20 ` Brian Gough

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 read-only IMAP folder(s) and NNTP newsgroup(s).