rosette

When should I use Rosette's shallow vs. deep embedding for program synthesis?

人盡茶涼 提交于 2020-07-18 11:44:17
问题 Some tutorials for Rosette introduce program synthesis using shallow embedding and others using deep embedding. After reading Torlak et Bodik's "Growing Solver-Aided Languages with ROSETTE", it seems the shallow embedding is good for fast prototyping (since it does not require defining DSL & interpreter) and the deep embedding is good for making queries with stronger correctness guarantees. Is this a good rule of thumb for deciding which embedding to use? What are good reasons for using

When should I use Rosette's shallow vs. deep embedding for program synthesis?

牧云@^-^@ 提交于 2020-07-18 11:44:16
问题 Some tutorials for Rosette introduce program synthesis using shallow embedding and others using deep embedding. After reading Torlak et Bodik's "Growing Solver-Aided Languages with ROSETTE", it seems the shallow embedding is good for fast prototyping (since it does not require defining DSL & interpreter) and the deep embedding is good for making queries with stronger correctness guarantees. Is this a good rule of thumb for deciding which embedding to use? What are good reasons for using