squiggle/packages/website/docs/Features/Language.mdx

54 lines
1.1 KiB
Plaintext
Raw Normal View History

2022-03-25 02:08:46 +00:00
---
sidebar_position: 2
2022-04-27 20:28:10 +00:00
title: Language Basics
2022-03-25 02:08:46 +00:00
---
2022-04-11 00:13:11 +00:00
import { SquiggleEditor } from "../../src/components/SquiggleEditor";
2022-03-25 02:08:46 +00:00
## Expressions
A distribution
<SquiggleEditor initialSquiggleString={`mixture(1 to 2, 3, [0.3, 0.7])`} />
2022-03-25 02:08:46 +00:00
A number
<SquiggleEditor initialSquiggleString="4.321e-3" />
Arrays
2022-03-25 02:08:46 +00:00
2022-04-10 23:15:46 +00:00
<SquiggleEditor
initialSquiggleString={`[beta(1,10), 4, isNormalized(toSampleSet(1 to 2))]`}
2022-04-10 23:15:46 +00:00
/>
2022-03-25 02:08:46 +00:00
Records
2022-03-25 02:08:46 +00:00
<SquiggleEditor
initialSquiggleString={`d = {dist: triangular(0, 1, 2), weight: 0.25}
d.dist`}
/>
2022-03-25 02:08:46 +00:00
## Statements
2022-03-25 02:08:46 +00:00
A statement assigns expressions to names. It looks like `<symbol> = <expression>`
2022-03-25 02:08:46 +00:00
<SquiggleEditor
initialSquiggleString={`value_of_work = 10 to 70
5 + value_of_work / 75`}
/>
### Functions
We can define functions
2022-03-25 02:08:46 +00:00
2022-04-10 23:15:46 +00:00
<SquiggleEditor
initialSquiggleString={`ozzie_estimate(t) = lognormal(1, t ^ 1.01)
nuño_estimate(t, m) = mixture(0.5 to 2, normal(m, t ^ 1.25))
ozzie_estimate(5) * nuño_estimate(5.01, 1)`}
2022-04-10 23:15:46 +00:00
/>
## See more
- [Functions reference](https://squiggle-language.com/docs/Features/Functions)
- [Gallery](https://squiggle-language.com/docs/Discussions/Gallery)