This - https://metacpan.org/pod/Farabi - might be related to this discussion (if not, just ignore this post)

--
kmx

On 17.6.2014 14:30, Chris Marshall wrote:
My preference would be to extract the best of iPython for PDL
and implement in perl.

AFAICT, iPython doesn't appear to have an interface specification
for their web frameworks and the development logs do not appear
to address any portability for non-python environments.

As for the IDE/workbook style, maybe we could start with something
like the LCD of the current implementations: iPython, Matlab, Maple,
Mathematica, Spyder(?),...  Once this interface is architected, the
next step would be to implement it.  At this point, it would be possible
to hack in an iPython version but that would probably have portability
problems and only of use for Python + PDL users which is a step
backwards from making PDL easy to install/use.

--Chris

On Tue, Jun 17, 2014 at 7:05 AM, David Mertens <[email protected]> wrote:
Hey everyone,

This and another recent conversation prompted me to dust off
App::Prima::REPL last night. I was in the middle of a refactoring effort
when I left it off, so I hammered through that last night. The only obvious
difference between what's on Github and what's on CPAN is the handling of
the output window, but a more important refactorization underlies that
difference. I feel a lot better about it.

It seems that we could pretty easily move forward on two independent fronts.
Perl has some very nice web frameworks, but since the iPython code is
already available, we could hook into iPython's framework for the first cut
of the web stuff. If we later want a pure-Perl solution, we could build a
Perl web front end that could be swapped out for the iPython one.

Then we'd have to get the GUI side working. One hard part will be the math
typesetting, but I have a shortcut in mind that we can try using. Another
hard part will be changing the workflow and layout to mimic iPython instead
of Matlab. That will take a bit of study, and it may be better to write a
different GUI app (called perhaps iperl) rather than try to fold this
functionality into the current GUI (prima-repl).

I suspect that anybody who wants to get involved can begin by downloading
and digging into the notebook software. I wonder if the Julia bindings might
serve as a good reference?

David


On Mon, Jun 16, 2014 at 8:32 AM, Chris Marshall <[email protected]>
wrote:
Very interesting discussion so far.  A focus on PDL
development for me as release manager has been to
improve the portability and buildability of PDL across
all major perl platforms (windows, macosx, and unix/linux/bsd/*).

We've made steady progress but once PDL is installed
the user might ask "Now what?".  It would be nice to
have a clear and simple answer for that. (In addition to
the use case of supporting better scientific development
and collaboration).

The good news is that we have two key pieces already
available that could be a foundation for iPDL:

(1) Interactive PDL shells (perldl, pdl2)

      We've already made a start at integrating multiple GUI
      toolkit event loops.  Stalled for now but I think we know
      what is needed.

(2) Prima and Prima::OpenGL

      This gives us a baseline, *extremely* portable GUI
      toolkit to build on.  We could use other toolkits but
      it is really difficult to beat the portability of Prima as
      a powerful GUI for perl.  In a sense it is a little known
      super-power perl module.  :-)

      NOTE: I explicitly call out Prima::OpenGL because
      I think for high performance and portable graphics and
      realtime visualization, OpenGL is now the default
      standard---even including GPU compute shaders in
      the latest version.

I'm sure there are some other ideas but, like the PDL3
development discussions, I think the best approach is
to KISS as much as possible.  Avoiding outside toolkits
and libraries where possible is a win for portability,
especially for non-unix-ish platforms such as windows.

--Chris


On Mon, Jun 16, 2014 at 7:10 AM, Paul Goodall
<[email protected]> wrote:
Hi David, Craig,

I’d be happy to help with this - I should have spare time in between
projects to contribute to it.

Personally, I don’t think it would be a bad thing for PDL to be more
accessible to the general community.  Typically when I explain to others
that I use PDL, I’m met with a blank face, prompting for an explanation.
It
would be nice if PDL were to be recognised as a desirable skill in the
same
way that Python is (particularly, for example, in job interview
situations).
It is a shame that more people don’t know about/have the power of PDL at
their fingertips :-)

Paul


On 13 Jun 2014, at 18:12, David Mertens <[email protected]>
wrote:

Paul,

To clarify, the notebooks that you mention in your link have two key
features. First, they provide online sharing, so it is very easy to show
your colleagues some ideas and calculations. Your colleagues can
probably
even try manipulating the data in their browser, if it's fancy enough.
Second, they provide means for (1) writing code, (2) writing prose, (3)
typesetting math, and (4) embedding media such as pictures. They are, in
essence, Mathematica clones for their respective languages.

PDL does not have an equivalent to this sort of tool. I wrote a
rudimentary
offline GUI data analysis program called App::Prima::REPL, but that was
more
targeted at the Matlab audience, not the Mathematica audience. It was
also a
giant pile of spaghetti, and I got stalled partway through a refactoring
effort. It is not document focused, but rather tab focused. There is an
API
for building our own custom tabs, but it's really more of a programmer's
tool, not a scientists log book.

I have lately found myself doing a lot of thinking in LyX, then
programming
in Perl. I would really like if there was some way for me to combine all
of
that into a single document, much like the notebooks that you mention.
However, my programming time has lately been dedicated to other projects
(especially, this last week, polishing off some final work on
PDL::Graphics::Prima for a forthcoming release).

If you are interested in helping, please let me know. I'd love to work
with
somebody on this. :-)

David


On Fri, Jun 13, 2014 at 12:32 PM, Craig DeForest
<[email protected]>
wrote:
I wouldn't say there's an online notebook viewer so much a powerful
toolkit to build one.  David Mertens recently implemented
PDL::Graphics::Prima, which is an object framework that can be used to
construct interactive notebooks very simply and quickly.  For example,
you
can generate a plot object and connect it to a PDL, and very easily
update
the plot as the PDL evolves - or autogenerate/autoupdate plots as you
carry
out a calculation.

That is sort of in keeping with the PDL "style" -- our niche seems to
be
powerful tools that are expert-friendly, rather than polished packages.




On Jun 13, 2014, at 9:27 AM, Paul Goodall
<[email protected]> wrote:

Hi,

Apologies if this has a very obvious answer, but does PDL have an
equivalent to the online notebook viewers available to the likes of
Python,
Ruby and (even) Julia?
http://nbviewer.ipython.org

I’d really like to make use of this ‘IPDL’ if it exists.

Thanks,
Paul



--
  "Debugging is twice as hard as writing the code in the first place.
   Therefore, if you write the code as cleverly as possible, you are,
   by definition, not smart enough to debug it." -- Brian Kernighan
_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl


_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl

Reply via email to