160 likes | 298 Views
coolinary. a recipe language. prof. al aho programming languages & translators columbia university spring 2011. project team. andrew dunn project manager. johnny weber system architect. alpha bah system integrator. david gainer language guru. what is coolinary?.
E N D
coolinary • a recipe language prof. al aho programming languages & translators columbia university spring 2011
project team andrew dunn project manager johnny weber system architect alpha bah system integrator david gainer language guru
what is coolinary? • coolinary is a language parses a reduced form recipe and outputs the nutritional value
use cases • development of school lunch programs • facebook game such as café world • calorie counting applications for mobile devices
basic food types • water • fruit • grain • veggies • liquid • meat • dairy
water • fundamental cooking ingredient
veggies • asparagus • broccolli • carrots • cauliflower • celery • cucumber • mushroom • onion • potato • tomato
grains • barley • corn • millet • oats • rice • rye • spelt • wheat
fruit • apple • avocado • banana • cantaloupe • grapefruit • grapes • honeydew • kiwi • lemon • orange • pear • pineapple • strawberry • watermelon
cooking operations • cook • bake • boil • grill • fry
mixtures • combine elements • synthesize new properties of the mixture
cooking operations • cook • bake • boil • grill • fry
cooking effects • scaled factors based on the duration of the effect • increase or decrease in nutrition and chemical elements
hello world • /* boil water */ • { • water.boil(); • }
sample input • /* recipe for a steak dinner*/ • { • potato pot; • pot.quantity = 5; • broccolli broc; • filet steak(); • steak.quantity = 1; • broc.bake(10); • pot.fry(8); • steak.grill(8); • mixture steakSpecial = combine(pot, broc, steak); • display(special); • }