Skip to content

RyanMcG/majumble

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

majumble

A quick and dirty matrix manipulation postfix language. Uses instaparse for parsing and vectorz-clj for the actual work.

There is no real point to this language and project I just wanted to play with instaparse. If you really want there to be meaning though you could tell yourself that the postfix notation allows you to do matrix manipulations with less typing than if you used clojure.core.matrix functions directly.

Clojure
(require '[clojure.core.matrix :as ma])

(ma/mul (ma/transpose [[1 2] [3 4]]) [[1 2] [2 1]])
majumble
(require '[majumble.core :refer [parse])

(parse "[[1 2] [3 4]]' [[1 2] [2 1]] *")

Just for fun, you can also put clojure in majumble code.

(parse "[[1 2] [(inc 2) 4]]' [[1 2] [2 1]] *")

Inspiration

I suppose this was sorta kinda loosely inspired by J.

About

A quick and dirty matrix manipulation postfix language.

Resources

License

Stars

Watchers

Forks

Packages

No packages published