Here is a dissertation on how the Julia language was
designed:

  https://github.com/JeffBezanson/phdthesis/blob/master/main.pdf

It was interested to see the development for the abstractions
used and how they made effective technical computation
possible.  The development of the type system could help
guide extended types support for PDL Next Generation as
we go from a fixed set of numeric types to a hierarchy of
types including user defined ones.  Some things of specific
note:

* bitfields as the boolean data (maybe this could be used
  for an alternate implementation of bad data).  We could
  start with https://github.com/noporpoise/BitArray/

* generic functions and multimethod dispatch make it easy
  to support JIT compilation for efficiency when desired.

* COS supports functors and closures which might be
  compatible with the higher order function approaches
  in julia

* Union and UnionAll and the general implementation of
  the type system might be applicable to PDL Next
  Generation.  There may be benefit in implementing
  method types and specifications similar to the ones
  in Julia.

* COS can support types as first class objects

* There is a question of how to support dynamic features
   with COS since it is implemented as a C library.
   Maybe we need to have JIT for this?

Cheers,
Chris

On Thu, Sep 28, 2017 at 10:37 AM, Chris Marshall <[email protected]> wrote:
> I recently took a look at the Julia programming language
>
>   https://julialang.org/
>
> with the thought of converting a julia library of interest
> into something for PDL/perl computation.  I discovered
> that Julia is based on the use of multi-methods which
> is the capability provided by the C Object System (COS)
>
>   https://github.com/CObjectSystem/COS
>
> that I have proposed as a basis for a new PDL Next
> Generation core architecture.  A look at Julia shows
> that we might get some inspiration for our own
> development from their language implementation and
> use.
>
> --Chris

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
pdl-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pdl-general

Reply via email to