Skip to content

calebwin/lin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

lin

lin is a minimalist Rosette-based DSL for linear programming. Here's an example...

; declare variables
(def desirability)
(def supply)
(def cost)
(def price)
(def profit)

; constrain variables
(let (> price 0))
(let (> cost 0))
(let (equal? profit (+ (* 1 price) (* -1 cost))))
(let (> supply 0))

; set variables
(set desirability 90)
(set supply 50)
(set cost 5)

; maximize
(max profit)

; solution
(get price)

lin compiles your code to Rosette code applying one of a variety of solvers to compute satisfiable solutions.

Releases

No releases published

Packages

No packages published

Languages