Hi Dmitry, > You may remember me from this topic: > https://groups.google.com/forum/#!topic/racket-users/E6utg2Pv5hA where > I looked for a scientific language and a tool for code generation.
Yes, I remember! > Leibniz seems to be very general. Is generation of (C or other) code > from Leibniz one of the goals of the project? Not directly, but indirectly, yes. Leibniz is a notation, not a computational tool. The immediate goal of the Leibniz project, in terms of computation, ends at the generation of machine-readable XML representations of Leibniz data. This will of course be useful to scientists only if there are tools that actually read this data and do something useful with it. Code generation tools would be particularly nice to have. Unfortunately it's also one of most difficult tasks (if you care about efficiency), and I am not particularly competent in this (I am a physicist). So I hope someone else will take up this challenge. My own plans for Leibniz-aware tools are more modest: I want to use equations and algorithms written in Leibniz in unit tests for computational software that implements the same algorithms. The human-readable Leibniz documents are then verifiable documentation for hand-written optimized software. > Regarding the plans of future development of Leibniz, my humble > opinion is that the "express algorithms" part is very important for, > um, production use. Also, vectors and matrices. Vectors and matrices are high up on my to-do list. You can implement them right now as Lisp-style lists made of cons operators, but I don't expect computational scientists to be enthusiastic about such low-level approaches. > As an example, I would love to see (or be able to write) an equation > for gravitational N-body problem (with arbitrary N) in Leibniz. I had this as an example in an earlier prototype: https://github.com/khinsen/leibniz/blob/fb4868519709794ad59e64cab547621c4b5a9a02/examples/mechanics/solar-system.rkt Since then, nothing but syntax has changed in Leibniz, so this still gives a good idea of how to proceed. Note that it does construct the list of bodies with cons operators, and implements pair-wise addition via recursion, so it's not yet at the level I hope to reach. - Konrad. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.