<p>Minsc has a runtime environment with a Policy data type that gets constructed as the result of evaluating the program. The program evaluation could be considered part of the compilation process, in which case you could say that Minsc compiles to Policy but it is also possible to consider this evaluation as the runtime and say that Minsc doesn't compile at all, but is rather an interpreted scripting language with a runtime Policy datatype that could be produced by it. Functions/programs can return different data types too, but the high-level API catches when the main program does that and considers it an error.</p>
<p>(This has been paraphrased from a conversation with shesek, the creator of Minsc. Any errors are my own.)</p>

CC BY-SA 4.0
2020-08-04T10:19:45.733Z
2021-06-08T08:10:34.867Z
2021-06-08T08:10:34.867Z
Michael Folkson
<p>Quoting from the Minsc <a href="https://min.sc/" rel="nofollow noreferrer">website</a> &quot;Minsc is a high-level scripting language...based on the Miniscript Policy language with additional features and syntactic sugar sprinkled on top including variables, functions, infix notation and more.&quot;</p>
<p>This <a href="https://bitcoin.stackexchange.com/questions/91565/what-does-bitcoin-policy-language-offer-the-developer-that-miniscript-doesnt-w">question</a> describes the relationship between Policy, Miniscript and Script. Sanket Kanjalkar explains how Policy compiles down to Miniscript whilst Miniscript is encoded to Bitcoin Script. So what about the relationship between Minsc and Policy? How best to describe this?</p>

<script><miniscript><minsc>
What is the relationship between the Minsc language and Policy language?
Michael Folkson
# What is the relationship between the Minsc language and Policy language?

(Asked by: username_0 on 2020-08-04)

Quoting from the Minsc [website](https://min.sc/) "Minsc is a high-level scripting language...based on the Miniscript Policy language with additional features and syntactic sugar sprinkled on top including variables, functions, infix notation and more."

This [question](https://bitcoin.stackexchange.com/questions/91565/what-does-bitcoin-policy-language-offer-the-developer-that-miniscript-doesnt-w) describes the relationship between Policy, Miniscript and Script. Sanket Kanjalkar explains how Policy compiles down to Miniscript whilst Miniscript is encoded to Bitcoin Script. So what about the relationship between Minsc and Policy? How best to describe this?

**Tags:** script, miniscript, minsc


---

## 1 answers

### Answer by username_0 on 2020-08-04. Score: 1 | Accepted answer

Minsc has a runtime environment with a Policy data type that gets constructed as the result of evaluating the program. The program evaluation could be considered part of the compilation process, in which case you could say that Minsc compiles to Policy but it is also possible to consider this evaluation as the runtime and say that Minsc doesn't compile at all, but is rather an interpreted scripting language with a runtime Policy datatype that could be produced by it. Functions/programs can return different data types too, but the high-level API catches when the main program does that and considers it an error.

(This has been paraphrased from a conversation with shesek, the creator of Minsc. Any errors are my own.)


---

