a day ago
- 作者编写了一个名为Mixologician的Datalog程序,用于确定购买哪些原料能最大化在家制作新鸡尾酒的数量。
- 该程序使用Has、Needs、Begets和Composite等关系来建模原料、配方和转化(例如,青柠产生青柠汁、青柠皮等)。
- 一个关键规则(Enables)通过比较缺失原料数量与原料能衍生的数量,找出若获取后能使当前无法调制的饮品变得可调制的原料。
- Begets包括所有原料的自我衍生和传递性衍生,允许复杂的原料替代(例如,雷波萨多龙舌兰酒可代替龙舌兰酒)。
- Composite处理多原料制备品,如青柠糖浆(糖+青柠皮),从而实现间接解决方案。
- 使用wget、pup和sed从Tuxedo No. 2网站抓取配方,将‘或’原料处理为衍生关系并标记为不可购买,避免将其列为购买建议。
- 对作者家中酒柜运行Mixologician后生成了购物清单;Peychaud's苦精是最有效的采购品,可调制出七种新鸡尾酒。