Skip to content

owenpalmer/chempiler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Chempiler: A notation for chemistry calculations

Note: The repo is in very early stages. Progress has been made on the notation spec and the parser, but the backend is not implemented yet. Check out the roadmap for more info.

The notation system's foundation is the disctintion between input (given:) and output (find:) information.

You can specify your knowns as a list of givens, followed by the information you're looking for in a find: statement.

given:
25.0g NaCl
250mL H2O
   
find: M NaCl

The compiler will make reasonable assumptions, perform the calculation, and report the assuptions back to the user.

given:
250mL 0.500M NaCl
Assumptions:
solvent in NaCl solution = water

The user can override these assumptions.

given:
250mL 0.500M NaCl in ethanol

The simple notation makes complex stoichiometry a breeze.

given:
2 "egg" / 100.50g
6 "egg" / 1 "cake"
1 "cake" / 2 lb
12 "egg"

find: kg "cake"
find: g "egg"

Roadmap

  • Initial notation design
  • Test driven workflow for parser implementation
  • Full parser implmentaiton
  • Compiler backend (utilizing libraries such as chempy

About

A notation for chemistry calculations

Topics

Resources

Stars

Watchers

Forks

Contributors