Skip to content

Using Lispy metaprogramming for reduction of linear systems to row-echelon form at compilation-time

License

Notifications You must be signed in to change notification settings

jgoldfar/MetaRowEchelon.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MetaRowEchelon

Build Status Coverage Status

This is an experiment in metaprogramming Julia for the automated solution of (well-posed) multiple assignments in the form of linear equations. Basically, the question is: can Gaussian elimination be computed ahead-of-time, and if so, should it be?

While I have possible applications in mind, right now the amount of copy/paste and general effectiveness suggest it should be considered a very rough WIP.

TODO

  • Deduplicate simplification/arithmetic for symbol logic

  • Along with the above TODO, define unit tests for all transformations on Exprs and Coefficients to ensure good coverage and flexibility.

  • Fix macro hygiene issue: output should pick up local variable bindings (?) and/or emit a function of the right-hand side (?) that allows extraction of the independent variables on the left-hand side. Right now, none of that works...

Who do I talk to?

About

Using Lispy metaprogramming for reduction of linear systems to row-echelon form at compilation-time

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages