An estimation language https://www.squiggle-language.com/
Go to file
Umur Ozkul db050668d1 parser
toFunction

additive multiplicative

compact

whitespace

pow

relational equality

boolean

whitespace separator

left associative operators

expression

not

identifier

function call

array constructor

string

indexed values

ident

priority

block

outerBlock

optional final expression

statement separator

outerBlock

innerBlock

better errors

note xor

white space and record

unary minus

inner/outer block

statement

lambda

sort

lambda is a value constructor

lambdaCall

ternary

ternary

basicValue

cleanup

quotes

chained Functions

dot operators

unify unary operators

unify unary operatos

notes

notes

notes

notes

parser

priorities set

white space or newline defined

allow newlines

notes

function call has become a post operator

recordElement

recursive index

postOperatorToFunction

better integer

comments

notes

record priority

comment

atom

finalComment

generated parser

type cast

format

initiate test file

test initiated; todo nodeCall; nodeExpression

callIdentifier

recover extra

initiate testing

initial tests pass

tests pass

remove function node

ternary

test parse passed

to

tests pass

notes

sort

toExpression

format

notes

remove unused modules

remove unnecessary nodeLambdaCall

notes

note

fix construct array

comment test

todo

elixir pipe

fix toString

notes

initial to expression test

value test

parsing records

records

comments

ternary

ifthenelse

inner block passed

inner block

lambda

lambda

new parser tested

now test tricks

ternary in expression

to test lambda as argument

to test lambda in structures

Use peggy Parser

expectEvalError

macros tested

remove mathjs parse

reducer test

comparison operator
2022-05-19 01:23:43 +02:00
.github Hotfix: reducer-dev pr trigger 2022-04-27 12:10:32 -04:00
examples Language.mdx changes and examples 2022-04-27 14:49:15 -04:00
packages parser 2022-05-19 01:23:43 +02:00
.gitignore ops for nixos, gitignore'd ts-lsp .log 2022-04-19 13:32:35 -04:00
.prettierignore Added toPointSet and toSampleSet to functions reference 2022-04-27 11:50:24 -04:00
CONTRIBUTING.md Fixed the linting of reducer files 2022-04-23 12:25:33 -04:00
LICENSE Added license 2020-02-09 22:27:55 +00:00
nixos.sh code review. 2022-04-20 18:48:04 -04:00
package.json Fix unweighted average of distributions 2022-04-13 12:03:04 +10:00
README.md version increment; piggyback README.md improvements 2022-04-28 19:06:39 -04:00
yarn.lock Merge pull request #475 from quantified-uncertainty/dependabot/npm_and_yarn/testing-library/react-13.2.0 2022-05-04 11:47:23 -04:00

Squiggle

Packages check npm version - lang npm version - components License: MIT codecov

An estimation language.

Get started

Our deployments

Packages

This monorepo has several packages that can be used for various purposes. All the packages can be found in packages.

  • @quri/squiggle-lang in packages/squiggle-lang contains the core language, particularly an interface to parse squiggle expressions and return descriptions of distributions or results.
  • @quri/squiggle-components in packages/components contains React components that can be passed squiggle strings as props, and return a presentation of the result of the calculation.
  • packages/website is the main descriptive website for squiggle, it is hosted at squiggle-language.com.

The playground depends on the components library which then depends on the language. This means that if you wish to work on the components library, you will need to build (no need to bundle) the language, and as of this writing playground doesn't really work.

Develop

For any project in the repo, begin by running yarn in the top level

yarn

See packages/*/README.md to work with whatever project you're interested in.

Contributing

See CONTRIBUTING.md.