An estimation language https://www.squiggle-language.com/
Go to file
Ozzie Gooen ce4eaa7daa Merge branch 'staging' into Components-improvement-april-2
* staging: (41 commits)
  Fixed tests
  Samples_test -> SampleSetDist_test
  Bandwidth -> SampleSetDist_Bandwidth
  Added genType to SampleSetDist to make pass tests, other minor fixes
  Power should be ** to be consistent
  Cleaned up resultStringToResultError
  Cleanup from previous refactor
  Start of refactor for toPointSetDist
  Gave SampleSetDist a private type
  Namechange: Exponential -> Power
  Cleanup and commenting for PR
  Added more tests to JS__Test.ts, and added SampleN functionality to SampleSetDist
  Added tests for index.js and fixed some corresponding functionality
  Minor refactor of DistributionOperation Constructors
  Fix from CR
  Added to index.ts
  Added a bunch of manual functions for DistributionOperation
  Update README.md
  Cleanup from merge
  Added sparkline and toString to ReducerInterface
  ...
2022-04-09 22:04:08 -04:00
.github hotfix "/*" to "/**" 2022-04-02 09:41:29 -04:00
packages Merge branch 'staging' into Components-improvement-april-2 2022-04-09 22:04:08 -04:00
.gitignore Move Playground to components 2022-04-01 11:26:26 +11:00
.parcelrc fixed parcel (rebase: fixed MC with index.ts) 2022-03-24 11:28:45 -04:00
CONTRIBUTING.md Figured out patchelf hack for nixos users 2022-03-28 22:39:59 -04:00
flake-compat.nix Codium build almost works 2022-03-24 13:52:24 -04:00
flake.lock Codium build almost works 2022-03-24 13:52:24 -04:00
flake.nix Figured out patchelf hack for nixos users 2022-03-28 22:39:59 -04:00
LICENSE Added license 2020-02-09 22:27:55 +00:00
package.json Format and fix build error 2022-04-04 16:58:05 +10:00
README.md Update README.md 2022-04-08 14:41:26 -04:00
yarn.lock Merge pull request #192 from QURIresearch/testing-discipline-two 2022-04-07 20:59:37 -04:00

Squiggle

Packages check

This is an experiment DSL/language for making probabilistic estimates. The full story can be found here.

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.
  • @quri/playground in packages/playground contains a website for a playground for squiggle. This website is hosted at playground.squiggle-language.com
  • @quri/squiggle-website in packages/website 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 (TODO: is this true?)

yarn

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

codium for rescript

If you have nix installed with flakes enabled, you can build a codium in this repo for rescript development, if you don't want to pollute your machine's global editor with another mode/extension.

nix develop
codium 

The nix develop shell also provides yarn.

Contributing

See CONTRIBUTING.md.