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
