get import names to resolve

This commit is contained in:
Quinn Dougherty 2022-08-22 06:18:22 -07:00
parent 20797d4886
commit 577f835137
4 changed files with 22 additions and 14 deletions

View File

@ -6,35 +6,35 @@ rec {
pname = "quri_squiggle_mc"; pname = "quri_squiggle_mc";
version = "0.0.1"; version = "0.0.1";
src = ../packages/mc; src = ../packages/mc;
nativeBuildInputs = with pkgs; [ rust wasm-bindgen-cli wasm-pack binaryen ];
nativeBuildInputs = [ rust pkgs.wasm-bindgen-cli ];
buildPhase = '' buildPhase = ''
cargo build --lib --release --target=wasm32-unknown-unknown wasm-pack build --release --target nodejs
mkdir -p $out/pkg '';
wasm-bindgen --target nodejs --out-dir $out/pkg target/wasm32-unknown-unknown/release/quri_squiggle_mc.wasm installPhase = ''
mkdir -p $out
# sed -i /"quri_squiggle_mc"/"\@quri/squiggle-mc" pkg/package.json
cp -r pkg $out
''; '';
installPhase = "echo 'skipping installPhase'";
cargoLock = { cargoLock = {
lockFile = ../packages/mc/Cargo.lock; lockFile = ../packages/mc/Cargo.lock;
outputHashes = { outputHashes = {
"kernel_density-0.0.2" = "sha256-pHh5p/AS+uopmPSaXK9rKHlmqS26qggXvf1TeitS430="; "kernel_density-0.0.3" = "sha256-ii+j30I4m1ZSvdMwEckiJOrenU8MZYYlo5PP1UZN4lI=";
}; };
}; };
}; };
lint = pkgs.stdenv.mkDerivation { lint = pkgs.stdenv.mkDerivation {
name = "squiggle-mc-lint"; name = "squiggle-mc-lint";
src = ../packages/mc; src = ../packages/mc;
buildInputs = with pkgs; [ rustfmt ]; buildInputs = with pkgs; [ cargo rustfmt ];
buildPhase = "rustfmt --check src/**"; buildPhase = "cargo fmt --check";
installPhase = "mkdir -p $out"; installPhase = "mkdir -p $out";
}; };
test = pkgs.stdenv.mkDerivation { test = pkgs.stdenv.mkDerivation {
name = "squiggle-mc-test"; name = "squiggle-mc-test";
src = pkg + "/pkg"; src = pkg + "/pkg";
buildInputs = with pkgs; [ cargo ]; buildInputs = with pkgs; [ wasm-pack geckodriver ];
buildPhase = "cargo test"; buildPhase = "wasm-pack test --firefox";
installPhase = "mkdir -p $out"; installPhase = "mkdir -p $out";
}; };
} }

View File

@ -30,6 +30,9 @@
"references": [ "references": [
{ {
"path": "../squiggle-lang" "path": "../squiggle-lang"
},
{
"path": "../mc"
} }
] ]
} }

View File

@ -32,8 +32,10 @@ module Internals = {
} }
module KDE = { module KDE = {
let normalSampling = (samples, outputXYPoints, kernelWidth) => let normalSampling' = (samples, outputXYPoints, kernelWidth) =>
samples |> JS.samplesToContinuousPdf(_, outputXYPoints, kernelWidth) |> JS.jsToDist samples |> JS.samplesToContinuousPdf(_, outputXYPoints, kernelWidth) |> JS.jsToDist
let normalSampling = (samples, outputXYPoints, kernelWidth) =>
WasmInterface.samplesToContinuousPdf(samples, kernelWidth)
} }
module T = { module T = {

View File

@ -1,2 +1,5 @@
@module external sampleN: (array<float>, int) => array<float> = "@quri/squiggle-mc/sample_n" @module("@quri/squiggle-mc/quri_squiggle_mc") external sampleN: (array<float>, int) => array<float> = "sample_n"
let sampleN = sampleN let sampleN = sampleN
@module("@quri/squiggle-mc/quri_squiggle_mc") external samplesToContinuousPdf: (array<float>, int) => PointSetTypes.xyShape = "samples_to_continuous_pdf"
let samplesToContinuousPdf = samplesToContinuousPdf