Organisationsahrefsocannl397418 ()macos-homebrew-5.3_arm64_opam-2.3

macos-homebrew-5.3_arm64_opam-2.3

Logs

Show full logs
2025-05-22 20:00.59: New job: test ahrefs/ocannl https://github.com/ahrefs/ocannl.git#refs/heads/master (39741884b740497ac10065d5e464e6c70f9151f4) (macos-arm64:macos-homebrew-5.3_arm64_opam-2.3)
Base: macos-homebrew-ocaml-5.3
Opam project build

To reproduce locally:

git clone --recursive "https://github.com/ahrefs/ocannl.git" -b "master" && cd "ocannl" && git reset --hard 39741884
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM macos-homebrew-ocaml-5.3
# macos-homebrew-5.3_arm64_opam-2.3
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
RUN ln -f ~/local/bin/opam-2.3 ~/local/bin/opam
RUN opam init --reinit -ni
RUN uname -rs && opam exec -- ocaml -version && opam --version
RUN cd ~/opam-repository && (git cat-file -e 2df846cb67d6f96ae4fced111519ff4ae27d19ae || git fetch origin master) && git reset -q --hard 2df846cb67d6f96ae4fced111519ff4ae27d19ae && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 neural_nets_lib.opam arrayjit.opam ./src/./
RUN opam pin add -yn neural_nets_lib.dev './src/./' && \
    opam pin add -yn arrayjit.dev './src/./'
RUN echo '(lang dune 3.0)' > './src/./dune-project'
ENV DEPS="angstrom.0.16.1 astring.0.8.5 backoff.0.1.1 base.v0.17.2 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base bigarray-compat.1.1.0 bigstringaf.0.10.0 camlkit-base.0.3.0 camlp-streams.5.0.1 cmdliner.1.3.0 conf-libffi.2.0.0 conf-pkg-config.4 cppo.1.8.0 csexp.1.5.2 ctypes.0.23.0 ctypes-foreign.0.23.0 dune.3.19.0 dune-configurator.3.19.0 fieldslib.v0.17.0 fmt.0.10.0 integers.0.7.0 jane-street-headers.v0.17.0 jst-config.v0.17.0 logs.0.8.0 mdx.2.5.0 metal.0.1.0 mtime.2.1.0 multicore-magic.2.3.1 num.1.5-1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.0 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 parsexp.v0.17.0 pprint.20230830 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_enumerate.v0.17.0 ppx_expect.v0.17.2 ppx_fields_conv.v0.17.0 ppx_globalize.v0.17.0 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.0 ppx_minidebug.2.2.0 ppx_optcomp.v0.17.0 ppx_sexp_conv.v0.17.0 ppx_string.v0.17.0 ppx_variants_conv.v0.17.0 ppxlib.0.35.0 ppxlib_jane.v0.17.2 printbox.0.12 printbox-ext-plot.0.12 printbox-html.0.12 printbox-md.0.12 printbox-text.0.12 ptime.1.2.0 re.1.12.0 result.1.5 saturn_lockfree.0.5.0 seq.base sexplib.v0.17.0 sexplib0.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 thread-local-storage.0.2 time_now.v0.17.0 topkg.1.0.8 tyxml.4.6.0 uucp.16.0.0 uutf.1.0.4 variantslib.v0.17.0"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.3 --depext-only -y neural_nets_lib.dev arrayjit.dev $DEPS
RUN opam install $DEPS
COPY --chown=1000:1000 . ./src
RUN cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build

END-OF-DOCKERFILE
docker build .
END-REPRO-BLOCK

2025-05-22 20:00.59: Using cache hint "ahrefs/ocannl-macos-homebrew-ocaml-5.3-macos-homebrew-5.3_arm64_opam-2.3-dce82a0e2814d079d9ba231ef8d5e1f2"
2025-05-22 20:00.59: Using OBuilder spec:
((from macos-homebrew-ocaml-5.3)
 (comment macos-homebrew-5.3_arm64_opam-2.3)
 (user (uid 1000) (gid 1000))
 (env CLICOLOR_FORCE 1)
 (env OPAMCOLOR always)
 (run (shell "ln -f ~/local/bin/opam-2.3 ~/local/bin/opam"))
 (run (shell "opam init --reinit -ni"))
 (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
 (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
      (network host)
      (shell "cd ~/opam-repository && (git cat-file -e 2df846cb67d6f96ae4fced111519ff4ae27d19ae || git fetch origin master) && git reset -q --hard 2df846cb67d6f96ae4fced111519ff4ae27d19ae && git log --no-decorate -n1 --oneline && opam update -u"))
 (copy (src neural_nets_lib.opam arrayjit.opam) (dst ./src/./))
 (run (network host)
      (shell  "opam pin add -yn neural_nets_lib.dev './src/./' && \
             \nopam pin add -yn arrayjit.dev './src/./'"))
 (run (network host)
      (shell "echo '(lang dune 3.0)' > './src/./dune-project'"))
 (env DEPS "angstrom.0.16.1 astring.0.8.5 backoff.0.1.1 base.v0.17.2 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base bigarray-compat.1.1.0 bigstringaf.0.10.0 camlkit-base.0.3.0 camlp-streams.5.0.1 cmdliner.1.3.0 conf-libffi.2.0.0 conf-pkg-config.4 cppo.1.8.0 csexp.1.5.2 ctypes.0.23.0 ctypes-foreign.0.23.0 dune.3.19.0 dune-configurator.3.19.0 fieldslib.v0.17.0 fmt.0.10.0 integers.0.7.0 jane-street-headers.v0.17.0 jst-config.v0.17.0 logs.0.8.0 mdx.2.5.0 metal.0.1.0 mtime.2.1.0 multicore-magic.2.3.1 num.1.5-1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.0 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 parsexp.v0.17.0 pprint.20230830 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_enumerate.v0.17.0 ppx_expect.v0.17.2 ppx_fields_conv.v0.17.0 ppx_globalize.v0.17.0 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.0 ppx_minidebug.2.2.0 ppx_optcomp.v0.17.0 ppx_sexp_conv.v0.17.0 ppx_string.v0.17.0 ppx_variants_conv.v0.17.0 ppxlib.0.35.0 ppxlib_jane.v0.17.2 printbox.0.12 printbox-ext-plot.0.12 printbox-html.0.12 printbox-md.0.12 printbox-text.0.12 ptime.1.2.0 re.1.12.0 result.1.5 saturn_lockfree.0.5.0 seq.base sexplib.v0.17.0 sexplib0.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 thread-local-storage.0.2 time_now.v0.17.0 topkg.1.0.8 tyxml.4.6.0 uucp.16.0.0 uutf.1.0.4 variantslib.v0.17.0")
 (env CI true)
 (env OCAMLCI true)
 (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
      (network host)
      (shell "opam update --depexts && opam install --cli=2.3 --depext-only -y neural_nets_lib.dev arrayjit.dev $DEPS"))
 (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
      (network host)
      (shell "opam install $DEPS"))
 (copy (src .) (dst ./src))
 (run (shell "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build"))
)

2025-05-22 20:00.59: Waiting for resource in pool OCluster
2025-05-22 20:00.59: Waiting for worker…
2025-05-22 20:01.26: Got resource from pool OCluster
Building on m1-worker-01
HEAD is now at b6f271d6 Merge branch 'master' of https://github.com/ahrefs/ocannl
HEAD is now at 39741884 Untested: convert remaining uses of Format except where printing Sexp values

(from macos-homebrew-ocaml-5.3)
2025-05-22 20:01.27 ---> using "6ee950b55569b1a3f8a7953dc679318bf303d3a70ac7d49901c0ac2ca3805d7c" from cache

/: (comment macos-homebrew-5.3_arm64_opam-2.3)

/: (user (uid 1000) (gid 1000))

/: (env CLICOLOR_FORCE 1)

/: (env OPAMCOLOR always)

/: (run (shell "ln -f ~/local/bin/opam-2.3 ~/local/bin/opam"))
2025-05-22 20:01.28 ---> using "8efc335cb5004a650aab29e72b9849a2b2e2f0853bc55d3a74763c7cceed5d74" from cache

/: (run (shell "opam init --reinit -ni"))
No configuration file found, using built-in defaults.
Checking for available remotes: rsync and local, git.
  - you won't be able to use mercurial repositories unless you install the hg command on your system.
  - you won't be able to use darcs repositories unless you install the darcs command on your system.

This version of opam requires an update to the layout of /Users/mac1000/.opam from version 2.1 to version 2.2, which can't be reverted.
You may want to back it up before going further.

Continue? [y/n] y
[NOTE] The 'jobs' option was reset, its value was 1 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using:
           opam option jobs=1 --global
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] no changes from git+file:///Users/mac1000/opam-repository
2025-05-22 20:01.28 ---> using "e29fa6de89fe919799ac81fd4a1c768d8341cedf873c17042854467d2aebeceb" from cache

/: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Darwin 23.4.0
The OCaml toplevel, version 5.3.0
2.3.0
2025-05-22 20:01.28 ---> using "a268524b45b0c90a951719c2a6c8c78c0b8a0fec90c9f437befd49b0008dc673" from cache

/: (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
        (network host)
        (shell "cd ~/opam-repository && (git cat-file -e 2df846cb67d6f96ae4fced111519ff4ae27d19ae || git fetch origin master) && git reset -q --hard 2df846cb67d6f96ae4fced111519ff4ae27d19ae && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
 * branch                  master     -> FETCH_HEAD
   f93eb7cb02..2df846cb67  master     -> origin/master
2df846cb67 Merge pull request #27910 from maiste/release-dune-3.19.0

<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from git+file:///Users/mac1000/opam-repository

Everything as up-to-date as possible (run with --verbose to show unavailable upgrades).

The following packages are not being upgraded because the new versions conflict with other installed packages:
  - ocaml.5.5.0
  - ocaml-compiler.5.5
    -- ocaml-base-compiler.5.3.0 is installed and requires ocaml-compiler = 5.3.0
However, you may "opam upgrade" these packages explicitly, which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# To update the current shell environment, run: eval $(opam env)
2025-05-22 20:01.28 ---> using "e3a81fccce30d1435d4e0c7ae4a51ddc6d0e402a263b1bf7ecc571c17cf69fb1" from cache

/: (copy (src neural_nets_lib.opam arrayjit.opam) (dst ./src/./))
2025-05-22 20:01.29 ---> saved as "51ab00325f9326b1137ca0beac13b5098bcf19f8fcf2dc801df6e39df4a4544d"

/: (run (network host)
        (shell  "opam pin add -yn neural_nets_lib.dev './src/./' && \
               \nopam pin add -yn arrayjit.dev './src/./'"))
[neural_nets_lib.dev] synchronised (file:///Users/mac1000/src)
neural_nets_lib is now pinned to file:///Users/mac1000/src (version dev)
[arrayjit.dev] synchronised (file:///Users/mac1000/src)
arrayjit is now pinned to file:///Users/mac1000/src (version dev)
2025-05-22 20:01.39 ---> saved as "0c5042ab68d913049f89ddd1273f05cc8801b1182d492f886e004d2ecc6dbf9e"

/: (run (network host)
        (shell "echo '(lang dune 3.0)' > './src/./dune-project'"))
2025-05-22 20:01.40 ---> saved as "9bd9e707f9599cd9f78b1c48afa52f35bcd123bd71da04d3b007f3905177b017"

/: (env DEPS "angstrom.0.16.1 astring.0.8.5 backoff.0.1.1 base.v0.17.2 base-bigarray.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base bigarray-compat.1.1.0 bigstringaf.0.10.0 camlkit-base.0.3.0 camlp-streams.5.0.1 cmdliner.1.3.0 conf-libffi.2.0.0 conf-pkg-config.4 cppo.1.8.0 csexp.1.5.2 ctypes.0.23.0 ctypes-foreign.0.23.0 dune.3.19.0 dune-configurator.3.19.0 fieldslib.v0.17.0 fmt.0.10.0 integers.0.7.0 jane-street-headers.v0.17.0 jst-config.v0.17.0 logs.0.8.0 mdx.2.5.0 metal.0.1.0 mtime.2.1.0 multicore-magic.2.3.1 num.1.5-1 ocaml.5.3.0 ocaml-base-compiler.5.3.0 ocaml-compiler.5.3.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.0 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 parsexp.v0.17.0 pprint.20230830 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_enumerate.v0.17.0 ppx_expect.v0.17.2 ppx_fields_conv.v0.17.0 ppx_globalize.v0.17.0 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.0 ppx_minidebug.2.2.0 ppx_optcomp.v0.17.0 ppx_sexp_conv.v0.17.0 ppx_string.v0.17.0 ppx_variants_conv.v0.17.0 ppxlib.0.35.0 ppxlib_jane.v0.17.2 printbox.0.12 printbox-ext-plot.0.12 printbox-html.0.12 printbox-md.0.12 printbox-text.0.12 ptime.1.2.0 re.1.12.0 result.1.5 saturn_lockfree.0.5.0 seq.base sexplib.v0.17.0 sexplib0.v0.17.0 stdio.v0.17.0 stdlib-shims.0.3.0 thread-local-storage.0.2 time_now.v0.17.0 topkg.1.0.8 tyxml.4.6.0 uucp.16.0.0 uutf.1.0.4 variantslib.v0.17.0")

/: (env CI true)

/: (env OCAMLCI true)

/: (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
        (network host)
        (shell "opam update --depexts && opam install --cli=2.3 --depext-only -y neural_nets_lib.dev arrayjit.dev $DEPS"))
+ /opt/homebrew/bin/brew "update"
- ==> Updating Homebrew...
- Already up-to-date.

<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[arrayjit.dev] synchronised (file:///Users/mac1000/src)
[neural_nets_lib.dev] synchronised (file:///Users/mac1000/src)

[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 3).
[NOTE] Package ocaml-compiler is already installed (current version is 5.3.0).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.3.0).
[NOTE] Package ocaml is already installed (current version is 5.3.0).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-nnp is already installed (current version is base).
[NOTE] Package base-effects is already installed (current version is base).
[NOTE] Package base-domains is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).

The following system packages will first need to be installed:
    libffi pkgconf

<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>

+ /opt/homebrew/bin/brew "install" "libffi" "pkgconf"
- ==> Downloading https://ghcr.io/v2/homebrew/core/libffi/manifests/3.4.8
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/8898311b301bbcb1a886c89fba2b17479f52778f5a10d4bee0eb0c9ac5805950--libffi-3.4.8.bottle_manifest.json
- ==> Fetching libffi
- ==> Downloading https://ghcr.io/v2/homebrew/core/libffi/blobs/sha256:72cdf45be8925928df2c880faa24261b8a71dda1996caa50f4ce4bdf4d1e95f3
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/2926ea565a4b2a2d73728772b3699ca54dfbc3978a8956412ea56017b553da9d--libffi--3.4.8.arm64_sequoia.bottle.tar.gz
- ==> Downloading https://ghcr.io/v2/homebrew/core/pkgconf/manifests/2.4.3-1
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/f938254e85413ef0d18283c9c932823434b88c0c790e04e7534e2a3e923d0588--pkgconf-2.4.3-1.bottle_manifest.json
- ==> Fetching pkgconf
- ==> Downloading https://ghcr.io/v2/homebrew/core/pkgconf/blobs/sha256:3feba2e952500e4ab9261ac59a19e07c310d1147e31496f62b591e4b21b68683
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/0ce8509e6e69d74b96d152a70f97dab65c83fe0e2e9287fc2ea1292c4512f968--pkgconf--2.4.3.arm64_sequoia.bottle.1.tar.gz
- ==> Pouring libffi--3.4.8.arm64_sequoia.bottle.tar.gz
- ==> Caveats
- libffi is keg-only, which means it was not symlinked into /opt/homebrew,
- because macOS already provides this software and installing another version in
- parallel can cause all kinds of trouble.
- 
- For compilers to find libffi you may need to set:
-   export LDFLAGS="-L/opt/homebrew/opt/libffi/lib"
-   export CPPFLAGS="-I/opt/homebrew/opt/libffi/include"
- ==> Summary
- 🍺  /opt/homebrew/Cellar/libffi/3.4.8: 18 files, 786.6KB
- ==> Running `brew cleanup libffi`...
- Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
- Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
- ==> Pouring pkgconf--2.4.3.arm64_sequoia.bottle.1.tar.gz
- 🍺  /opt/homebrew/Cellar/pkgconf/2.4.3: 27 files, 485.2KB
- ==> Running `brew cleanup pkgconf`...
- ==> Caveats
- ==> libffi
- libffi is keg-only, which means it was not symlinked into /opt/homebrew,
- because macOS already provides this software and installing another version in
- parallel can cause all kinds of trouble.
- 
- For compilers to find libffi you may need to set:
-   export LDFLAGS="-L/opt/homebrew/opt/libffi/lib"
-   export CPPFLAGS="-I/opt/homebrew/opt/libffi/include"
- 
- For pkg-config to find libffi you may need to set:
-   export PKG_CONFIG_PATH="/opt/homebrew/opt/libffi/lib/pkgconfig"
2025-05-22 20:02.11 ---> saved as "6e5e63985cc09475b991121aaa073df4a6e9dfa9457884b306e437b7976e1307"

/: (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
        (network host)
        (shell "opam install $DEPS"))
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 3).
[NOTE] Package ocaml-compiler is already installed (current version is 5.3.0).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.3.0).
[NOTE] Package ocaml is already installed (current version is 5.3.0).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-nnp is already installed (current version is base).
[NOTE] Package base-effects is already installed (current version is base).
[NOTE] Package base-domains is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following actions will be performed:
=== install 77 packages
  - install angstrom                0.16.1
  - install astring                 0.8.5
  - install backoff                 0.1.1
  - install base                    v0.17.2
  - install bigarray-compat         1.1.0
  - install bigstringaf             0.10.0
  - install camlkit-base            0.3.0
  - install camlp-streams           5.0.1
  - install cmdliner                1.3.0
  - install conf-libffi             2.0.0
  - install conf-pkg-config         4
  - install cppo                    1.8.0
  - install csexp                   1.5.2
  - install ctypes                  0.23.0
  - install ctypes-foreign          0.23.0
  - install dune                    3.19.0
  - install dune-configurator       3.19.0
  - install fieldslib               v0.17.0
  - install fmt                     0.10.0
  - install integers                0.7.0
  - install jane-street-headers     v0.17.0
  - install jst-config              v0.17.0
  - install logs                    0.8.0
  - install mdx                     2.5.0
  - install metal                   0.1.0
  - install mtime                   2.1.0
  - install multicore-magic         2.3.1
  - install num                     1.5-1
  - install ocaml-compiler-libs     v0.17.0
  - install ocaml-syntax-shims      1.0.0
  - install ocaml-version           4.0.0
  - install ocaml_intrinsics_kernel v0.17.1
  - install ocamlbuild              0.16.1
  - install ocamlfind               1.9.8
  - install parsexp                 v0.17.0
  - install pprint                  20230830
  - install ppx_assert              v0.17.0
  - install ppx_base                v0.17.0
  - install ppx_cold                v0.17.0
  - install ppx_compare             v0.17.0
  - install ppx_derivers            1.2.1
  - install ppx_deriving            6.0.3
  - install ppx_enumerate           v0.17.0
  - install ppx_expect              v0.17.2
  - install ppx_fields_conv         v0.17.0
  - install ppx_globalize           v0.17.0
  - install ppx_hash                v0.17.0
  - install ppx_here                v0.17.0
  - install ppx_inline_test         v0.17.0
  - install ppx_minidebug           2.2.0
  - install ppx_optcomp             v0.17.0
  - install ppx_sexp_conv           v0.17.0
  - install ppx_string              v0.17.0
  - install ppx_variants_conv       v0.17.0
  - install ppxlib                  0.35.0
  - install ppxlib_jane             v0.17.2
  - install printbox                0.12
  - install printbox-ext-plot       0.12
  - install printbox-html           0.12
  - install printbox-md             0.12
  - install printbox-text           0.12
  - install ptime                   1.2.0
  - install re                      1.12.0
  - install result                  1.5
  - install saturn_lockfree         0.5.0
  - install seq                     base
  - install sexplib                 v0.17.0
  - install sexplib0                v0.17.0
  - install stdio                   v0.17.0
  - install stdlib-shims            0.3.0
  - install thread-local-storage    0.2
  - install time_now                v0.17.0
  - install topkg                   1.0.8
  - install tyxml                   4.6.0
  - install uucp                    16.0.0
  - install uutf                    1.0.4
  - install variantslib             v0.17.0

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved angstrom.0.16.1  (cached)
-> retrieved backoff.0.1.1  (cached)
-> retrieved astring.0.8.5  (cached)
-> retrieved bigarray-compat.1.1.0  (cached)
-> retrieved bigstringaf.0.10.0  (cached)
-> retrieved base.v0.17.2  (cached)
-> retrieved camlp-streams.5.0.1  (cached)
-> retrieved cmdliner.1.3.0  (cached)
-> installed conf-pkg-config.4
-> retrieved csexp.1.5.2  (cached)
-> retrieved cppo.1.8.0  (cached)
-> installed conf-libffi.2.0.0
-> retrieved ctypes.0.23.0, ctypes-foreign.0.23.0  (cached)
-> retrieved fieldslib.v0.17.0  (cached)
-> retrieved fmt.0.10.0  (cached)
-> retrieved integers.0.7.0  (cached)
-> retrieved jane-street-headers.v0.17.0  (cached)
-> retrieved jst-config.v0.17.0  (cached)
-> retrieved logs.0.8.0  (cached)
-> retrieved mdx.2.5.0  (cached)
-> retrieved metal.0.1.0  (cached)
-> retrieved mtime.2.1.0  (cached)
-> retrieved multicore-magic.2.3.1  (cached)
-> retrieved num.1.5-1  (cached)
-> retrieved ocaml-compiler-libs.v0.17.0  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocaml-version.4.0.0  (cached)
-> retrieved ocaml_intrinsics_kernel.v0.17.1  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved parsexp.v0.17.0  (cached)
-> retrieved pprint.20230830  (cached)
-> retrieved ppx_assert.v0.17.0  (cached)
-> retrieved ppx_base.v0.17.0  (cached)
-> retrieved ppx_cold.v0.17.0  (cached)
-> retrieved ppx_compare.v0.17.0  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved ppx_deriving.6.0.3  (cached)
-> retrieved ppx_enumerate.v0.17.0  (cached)
-> retrieved ppx_expect.v0.17.2  (cached)
-> retrieved ppx_fields_conv.v0.17.0  (cached)
-> retrieved ppx_globalize.v0.17.0  (cached)
-> retrieved dune.3.19.0, dune-configurator.3.19.0  (cached)
-> retrieved ppx_here.v0.17.0  (cached)
-> retrieved ppx_hash.v0.17.0  (cached)
-> retrieved ppx_inline_test.v0.17.0  (cached)
-> installed num.1.5-1
-> retrieved ppx_optcomp.v0.17.0  (cached)
-> retrieved ppx_minidebug.2.2.0  (cached)
-> retrieved ppx_sexp_conv.v0.17.0  (cached)
-> retrieved ppx_string.v0.17.0  (cached)
-> retrieved ppx_variants_conv.v0.17.0  (cached)
-> retrieved ppxlib_jane.v0.17.2  (cached)
-> retrieved ppxlib.0.35.0  (cached)
-> retrieved camlkit-base.0.3.0  (cached)
-> retrieved ptime.1.2.0  (cached)
-> retrieved printbox.0.12, printbox-ext-plot.0.12, printbox-html.0.12, printbox-md.0.12, printbox-text.0.12  (cached)
-> installed cmdliner.1.3.0
-> installed ocamlbuild.0.16.1
-> retrieved saturn_lockfree.0.5.0  (cached)
-> retrieved seq.base  (cached)
-> retrieved result.1.5  (cached)
-> retrieved re.1.12.0  (cached)
-> retrieved sexplib0.v0.17.0  (cached)
-> retrieved sexplib.v0.17.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved stdio.v0.17.0  (cached)
-> retrieved thread-local-storage.0.2  (cached)
-> retrieved time_now.v0.17.0  (cached)
-> retrieved topkg.1.0.8  (cached)
-> retrieved tyxml.4.6.0  (cached)
-> retrieved uutf.1.0.4  (cached)
-> retrieved variantslib.v0.17.0  (cached)
-> retrieved uucp.16.0.0  (cached)
-> installed ocamlfind.1.9.8
-> installed seq.base
-> installed topkg.1.0.8
-> installed uutf.1.0.4
-> installed mtime.2.1.0
-> installed astring.0.8.5
-> installed fmt.0.10.0
-> installed ptime.1.2.0
-> installed logs.0.8.0
-> installed dune.3.19.0
-> installed jane-street-headers.v0.17.0
-> installed csexp.1.5.2
-> installed bigarray-compat.1.1.0
-> installed ocaml-compiler-libs.v0.17.0
-> installed multicore-magic.2.3.1
-> installed cppo.1.8.0
-> installed camlp-streams.5.0.1
-> installed backoff.0.1.1
-> installed ppx_derivers.1.2.1
-> installed ocaml-version.4.0.0
-> installed ocaml_intrinsics_kernel.v0.17.1
-> installed pprint.20230830
-> installed printbox.0.12
-> installed ocaml-syntax-shims.1.0.0
-> installed result.1.5
-> installed stdlib-shims.0.3.0
-> installed thread-local-storage.0.2
-> installed dune-configurator.3.19.0
-> installed saturn_lockfree.0.5.0
-> installed sexplib0.v0.17.0
-> installed integers.0.7.0
-> installed bigstringaf.0.10.0
-> installed re.1.12.0
-> installed angstrom.0.16.1
-> installed mdx.2.5.0
-> installed parsexp.v0.17.0
-> installed ctypes.0.23.0
-> installed sexplib.v0.17.0
-> installed tyxml.4.6.0
-> installed base.v0.17.2
-> installed printbox-html.0.12
-> installed variantslib.v0.17.0
-> installed fieldslib.v0.17.0
-> installed stdio.v0.17.0
-> installed ctypes-foreign.0.23.0
-> installed uucp.16.0.0
-> installed printbox-text.0.12
-> installed printbox-md.0.12
-> installed printbox-ext-plot.0.12
-> installed ppxlib.0.35.0
-> installed ppx_cold.v0.17.0
-> installed ppx_here.v0.17.0
-> installed ppx_variants_conv.v0.17.0
-> installed ppx_optcomp.v0.17.0
-> installed ppx_fields_conv.v0.17.0
-> installed ppxlib_jane.v0.17.2
-> installed ppx_deriving.6.0.3
-> installed ppx_globalize.v0.17.0
-> installed ppx_enumerate.v0.17.0
-> installed ppx_compare.v0.17.0
-> installed ppx_sexp_conv.v0.17.0
-> installed ppx_assert.v0.17.0
-> installed ppx_hash.v0.17.0
-> installed ppx_base.v0.17.0
-> installed ppx_minidebug.2.2.0
-> installed jst-config.v0.17.0
-> installed time_now.v0.17.0
-> installed ppx_string.v0.17.0
-> installed ppx_inline_test.v0.17.0
-> installed ppx_expect.v0.17.2
-> installed camlkit-base.0.3.0
-> installed metal.0.1.0
Done.
# To update the current shell environment, run: eval $(opam env)
2025-05-22 20:04.39 ---> saved as "6eee55c2046053b3ce9a92c725fa7d8165570ff1276a02f09dfbd3fdb683be68"

/: (copy (src .) (dst ./src))
2025-05-22 20:04.40 ---> saved as "cfce540214df67fd8d38ae2ea2a7711826cc4cbefa038359cbe842ff0eeaf694"

/: (run (shell "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/test/config && ../../arrayjit/bin/read_config.exe --read=backend)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/default/test/config/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
Wrote value of 'backend' to ocannl_backend.txt
(cd _build/default && /Users/mac1000/.opam/5.3.0/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -o test_ppx/test_ppx_op.exe /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types/base_internalhash_types.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types /Users/mac1000/.opam/5.3.0/lib/sexplib0/sexplib0.cmxa /Users/mac1000/.opam/5.3.0/lib/base/shadow_stdlib/shadow_stdlib.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel/ocaml_intrinsics_kernel.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel /Users/mac1000/.opam/5.3.0/lib/base/base.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base /Users/mac1000/.opam/5.3.0/lib/printbox/printbox.cmxa /Users/mac1000/.opam/5.3.0/lib/uutf/uutf.cmxa /Users/mac1000/.opam/5.3.0/lib/uucp/uucp.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-text/printbox_text.cmxa /Users/mac1000/.opam/5.3.0/lib/re/re.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/functor/tyxml_f.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/tyxml.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-html/printbox_html.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-md/printbox_md.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-ext-plot/printbox_ext_plot.cmxa /Users/mac1000/.opam/5.3.0/lib/bigstringaf/bigstringaf.cmxa -I /Users/mac1000/.opam/5.3.0/lib/bigstringaf /Users/mac1000/.opam/5.3.0/lib/angstrom/angstrom.cmxa /Users/mac1000/.opam/5.3.0/lib/stdio/stdio.cmxa /Users/mac1000/.opam/5.3.0/lib/parsexp/parsexp.cmxa /Users/mac1000/.opam/5.3.0/lib/sexplib/sexplib.cmxa /Users/mac1000/.opam/5.3.0/lib/num/nums.cmxa -I /Users/mac1000/.opam/5.3.0/lib/num -I /Users/mac1000/.opam/5.3.0/lib/num /Users/mac1000/.opam/5.3.0/lib/ocaml/str/str.cmxa /Users/mac1000/.opam/5.3.0/lib/pprint/pprint.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/ptime.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/clock/ptime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock /Users/mac1000/.opam/5.3.0/lib/mtime/mtime.cmxa /Users/mac1000/.opam/5.3.0/lib/mtime/clock/mtime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock /Users/mac1000/.opam/5.3.0/lib/ocaml/unix/unix.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml/threads/threads.cmxa /Users/mac1000/.opam/5.3.0/lib/thread-local-storage/thread_local_storage.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_minidebug/runtime/minidebug_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/variantslib/variantslib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_string/runtime/ppx_string_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_sexp_conv/runtime-lib/ppx_sexp_conv_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_here/runtime-lib/ppx_here_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_compare/runtime-lib/ppx_compare_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_hash/runtime-lib/ppx_hash_lib.cmxa arrayjit/lib/utils.cmxa /Users/mac1000/.opam/5.3.0/lib/stdlib-shims/stdlib_shims.cmxa /Users/mac1000/.opam/5.3.0/lib/integers/integers.cmxa -I /Users/mac1000/.opam/5.3.0/lib/integers /Users/mac1000/.opam/5.3.0/lib/bigarray-compat/bigarray_compat.cmxa /Users/mac1000/.opam/5.3.0/lib/ctypes/ctypes.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign/ctypes_foreign.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign /Users/mac1000/.opam/5.3.0/lib/backoff/backoff.cmxa /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5/multicore_magic_atomic_array_unboxed5.cmxa -I /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5 /Users/mac1000/.opam/5.3.0/lib/multicore-magic/Multicore_magic.cmxa /Users/mac1000/.opam/5.3.0/lib/saturn_lockfree/saturn_lockfree.cmxa arrayjit/lib/ir.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/runtime/runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreFoundation/CoreFoundation.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreGraphics/CoreGraphics.cmxa /Users/mac1000/.opam/5.3.0/lib/metal/metal.cmxa arrayjit/lib/metal_backend.cmxa arrayjit/lib/backends.cmxa /Users/mac1000/.opam/5.3.0/lib/fieldslib/fieldslib.cmxa lib/ocannl.cmxa test_ppx/.test_ppx_op.eobjs/native/dune__exe__Test_ppx_op.cmx)
ld: warning: ignoring duplicate libraries: '-lpthread'
(cd _build/default && /Users/mac1000/.opam/5.3.0/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -o test_ppx/test_ppx_op_expected.exe /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types/base_internalhash_types.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types /Users/mac1000/.opam/5.3.0/lib/sexplib0/sexplib0.cmxa /Users/mac1000/.opam/5.3.0/lib/base/shadow_stdlib/shadow_stdlib.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel/ocaml_intrinsics_kernel.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel /Users/mac1000/.opam/5.3.0/lib/base/base.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base /Users/mac1000/.opam/5.3.0/lib/printbox/printbox.cmxa /Users/mac1000/.opam/5.3.0/lib/uutf/uutf.cmxa /Users/mac1000/.opam/5.3.0/lib/uucp/uucp.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-text/printbox_text.cmxa /Users/mac1000/.opam/5.3.0/lib/re/re.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/functor/tyxml_f.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/tyxml.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-html/printbox_html.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-md/printbox_md.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-ext-plot/printbox_ext_plot.cmxa /Users/mac1000/.opam/5.3.0/lib/bigstringaf/bigstringaf.cmxa -I /Users/mac1000/.opam/5.3.0/lib/bigstringaf /Users/mac1000/.opam/5.3.0/lib/angstrom/angstrom.cmxa /Users/mac1000/.opam/5.3.0/lib/stdio/stdio.cmxa /Users/mac1000/.opam/5.3.0/lib/parsexp/parsexp.cmxa /Users/mac1000/.opam/5.3.0/lib/sexplib/sexplib.cmxa /Users/mac1000/.opam/5.3.0/lib/num/nums.cmxa -I /Users/mac1000/.opam/5.3.0/lib/num -I /Users/mac1000/.opam/5.3.0/lib/num /Users/mac1000/.opam/5.3.0/lib/ocaml/str/str.cmxa /Users/mac1000/.opam/5.3.0/lib/pprint/pprint.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/ptime.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/clock/ptime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock /Users/mac1000/.opam/5.3.0/lib/mtime/mtime.cmxa /Users/mac1000/.opam/5.3.0/lib/mtime/clock/mtime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock /Users/mac1000/.opam/5.3.0/lib/ocaml/unix/unix.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml/threads/threads.cmxa /Users/mac1000/.opam/5.3.0/lib/thread-local-storage/thread_local_storage.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_minidebug/runtime/minidebug_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/variantslib/variantslib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_string/runtime/ppx_string_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_sexp_conv/runtime-lib/ppx_sexp_conv_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_here/runtime-lib/ppx_here_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_compare/runtime-lib/ppx_compare_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_hash/runtime-lib/ppx_hash_lib.cmxa arrayjit/lib/utils.cmxa /Users/mac1000/.opam/5.3.0/lib/stdlib-shims/stdlib_shims.cmxa /Users/mac1000/.opam/5.3.0/lib/integers/integers.cmxa -I /Users/mac1000/.opam/5.3.0/lib/integers /Users/mac1000/.opam/5.3.0/lib/bigarray-compat/bigarray_compat.cmxa /Users/mac1000/.opam/5.3.0/lib/ctypes/ctypes.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign/ctypes_foreign.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign /Users/mac1000/.opam/5.3.0/lib/backoff/backoff.cmxa /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5/multicore_magic_atomic_array_unboxed5.cmxa -I /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5 /Users/mac1000/.opam/5.3.0/lib/multicore-magic/Multicore_magic.cmxa /Users/mac1000/.opam/5.3.0/lib/saturn_lockfree/saturn_lockfree.cmxa arrayjit/lib/ir.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/runtime/runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreFoundation/CoreFoundation.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreGraphics/CoreGraphics.cmxa /Users/mac1000/.opam/5.3.0/lib/metal/metal.cmxa arrayjit/lib/metal_backend.cmxa arrayjit/lib/backends.cmxa /Users/mac1000/.opam/5.3.0/lib/fieldslib/fieldslib.cmxa lib/ocannl.cmxa test_ppx/.test_ppx_op_expected.eobjs/native/dune__exe__Test_ppx_op_expected.cmx)
ld: warning: ignoring duplicate libraries: '-lpthread'
(cd _build/default && /Users/mac1000/.opam/5.3.0/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -o test/moons_demo_parallel_run.exe /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types/base_internalhash_types.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types /Users/mac1000/.opam/5.3.0/lib/sexplib0/sexplib0.cmxa /Users/mac1000/.opam/5.3.0/lib/base/shadow_stdlib/shadow_stdlib.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel/ocaml_intrinsics_kernel.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel /Users/mac1000/.opam/5.3.0/lib/base/base.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base /Users/mac1000/.opam/5.3.0/lib/printbox/printbox.cmxa /Users/mac1000/.opam/5.3.0/lib/uutf/uutf.cmxa /Users/mac1000/.opam/5.3.0/lib/uucp/uucp.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-text/printbox_text.cmxa /Users/mac1000/.opam/5.3.0/lib/re/re.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/functor/tyxml_f.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/tyxml.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-html/printbox_html.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-md/printbox_md.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-ext-plot/printbox_ext_plot.cmxa /Users/mac1000/.opam/5.3.0/lib/bigstringaf/bigstringaf.cmxa -I /Users/mac1000/.opam/5.3.0/lib/bigstringaf /Users/mac1000/.opam/5.3.0/lib/angstrom/angstrom.cmxa /Users/mac1000/.opam/5.3.0/lib/stdio/stdio.cmxa /Users/mac1000/.opam/5.3.0/lib/parsexp/parsexp.cmxa /Users/mac1000/.opam/5.3.0/lib/sexplib/sexplib.cmxa /Users/mac1000/.opam/5.3.0/lib/num/nums.cmxa -I /Users/mac1000/.opam/5.3.0/lib/num -I /Users/mac1000/.opam/5.3.0/lib/num /Users/mac1000/.opam/5.3.0/lib/ocaml/str/str.cmxa /Users/mac1000/.opam/5.3.0/lib/pprint/pprint.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/ptime.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/clock/ptime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock /Users/mac1000/.opam/5.3.0/lib/mtime/mtime.cmxa /Users/mac1000/.opam/5.3.0/lib/mtime/clock/mtime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock /Users/mac1000/.opam/5.3.0/lib/ocaml/unix/unix.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml/threads/threads.cmxa /Users/mac1000/.opam/5.3.0/lib/thread-local-storage/thread_local_storage.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_minidebug/runtime/minidebug_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/variantslib/variantslib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_string/runtime/ppx_string_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_sexp_conv/runtime-lib/ppx_sexp_conv_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_here/runtime-lib/ppx_here_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_compare/runtime-lib/ppx_compare_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_hash/runtime-lib/ppx_hash_lib.cmxa arrayjit/lib/utils.cmxa /Users/mac1000/.opam/5.3.0/lib/stdlib-shims/stdlib_shims.cmxa /Users/mac1000/.opam/5.3.0/lib/integers/integers.cmxa -I /Users/mac1000/.opam/5.3.0/lib/integers /Users/mac1000/.opam/5.3.0/lib/bigarray-compat/bigarray_compat.cmxa /Users/mac1000/.opam/5.3.0/lib/ctypes/ctypes.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign/ctypes_foreign.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign /Users/mac1000/.opam/5.3.0/lib/backoff/backoff.cmxa /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5/multicore_magic_atomic_array_unboxed5.cmxa -I /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5 /Users/mac1000/.opam/5.3.0/lib/multicore-magic/Multicore_magic.cmxa /Users/mac1000/.opam/5.3.0/lib/saturn_lockfree/saturn_lockfree.cmxa arrayjit/lib/ir.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/runtime/runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreFoundation/CoreFoundation.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreGraphics/CoreGraphics.cmxa /Users/mac1000/.opam/5.3.0/lib/metal/metal.cmxa arrayjit/lib/metal_backend.cmxa arrayjit/lib/backends.cmxa /Users/mac1000/.opam/5.3.0/lib/fieldslib/fieldslib.cmxa lib/ocannl.cmxa test/.moons_demo_parallel_run.eobjs/native/dune__exe__Moons_demo_parallel_run.cmx)
ld: warning: ignoring duplicate libraries: '-lpthread'
(cd _build/default && /Users/mac1000/.opam/5.3.0/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -o test/micrograd_demo_logging.exe /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types/base_internalhash_types.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types /Users/mac1000/.opam/5.3.0/lib/sexplib0/sexplib0.cmxa /Users/mac1000/.opam/5.3.0/lib/base/shadow_stdlib/shadow_stdlib.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel/ocaml_intrinsics_kernel.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel /Users/mac1000/.opam/5.3.0/lib/base/base.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base /Users/mac1000/.opam/5.3.0/lib/printbox/printbox.cmxa /Users/mac1000/.opam/5.3.0/lib/uutf/uutf.cmxa /Users/mac1000/.opam/5.3.0/lib/uucp/uucp.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-text/printbox_text.cmxa /Users/mac1000/.opam/5.3.0/lib/re/re.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/functor/tyxml_f.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/tyxml.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-html/printbox_html.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-md/printbox_md.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-ext-plot/printbox_ext_plot.cmxa /Users/mac1000/.opam/5.3.0/lib/bigstringaf/bigstringaf.cmxa -I /Users/mac1000/.opam/5.3.0/lib/bigstringaf /Users/mac1000/.opam/5.3.0/lib/angstrom/angstrom.cmxa /Users/mac1000/.opam/5.3.0/lib/stdio/stdio.cmxa /Users/mac1000/.opam/5.3.0/lib/parsexp/parsexp.cmxa /Users/mac1000/.opam/5.3.0/lib/sexplib/sexplib.cmxa /Users/mac1000/.opam/5.3.0/lib/num/nums.cmxa -I /Users/mac1000/.opam/5.3.0/lib/num -I /Users/mac1000/.opam/5.3.0/lib/num /Users/mac1000/.opam/5.3.0/lib/ocaml/str/str.cmxa /Users/mac1000/.opam/5.3.0/lib/pprint/pprint.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/ptime.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/clock/ptime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock /Users/mac1000/.opam/5.3.0/lib/mtime/mtime.cmxa /Users/mac1000/.opam/5.3.0/lib/mtime/clock/mtime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock /Users/mac1000/.opam/5.3.0/lib/ocaml/unix/unix.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml/threads/threads.cmxa /Users/mac1000/.opam/5.3.0/lib/thread-local-storage/thread_local_storage.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_minidebug/runtime/minidebug_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/variantslib/variantslib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_string/runtime/ppx_string_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_sexp_conv/runtime-lib/ppx_sexp_conv_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_here/runtime-lib/ppx_here_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_compare/runtime-lib/ppx_compare_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_hash/runtime-lib/ppx_hash_lib.cmxa arrayjit/lib/utils.cmxa /Users/mac1000/.opam/5.3.0/lib/stdlib-shims/stdlib_shims.cmxa /Users/mac1000/.opam/5.3.0/lib/integers/integers.cmxa -I /Users/mac1000/.opam/5.3.0/lib/integers /Users/mac1000/.opam/5.3.0/lib/bigarray-compat/bigarray_compat.cmxa /Users/mac1000/.opam/5.3.0/lib/ctypes/ctypes.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign/ctypes_foreign.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign /Users/mac1000/.opam/5.3.0/lib/backoff/backoff.cmxa /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5/multicore_magic_atomic_array_unboxed5.cmxa -I /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5 /Users/mac1000/.opam/5.3.0/lib/multicore-magic/Multicore_magic.cmxa /Users/mac1000/.opam/5.3.0/lib/saturn_lockfree/saturn_lockfree.cmxa arrayjit/lib/ir.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/runtime/runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreFoundation/CoreFoundation.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreGraphics/CoreGraphics.cmxa /Users/mac1000/.opam/5.3.0/lib/metal/metal.cmxa arrayjit/lib/metal_backend.cmxa arrayjit/lib/backends.cmxa /Users/mac1000/.opam/5.3.0/lib/fieldslib/fieldslib.cmxa lib/ocannl.cmxa test/.micrograd_demo_logging.eobjs/native/dune__exe__Micrograd_demo_logging.cmx)
ld: warning: ignoring duplicate libraries: '-lpthread'
(cd _build/default && /Users/mac1000/.opam/5.3.0/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -o bin/moons_benchmark.exe /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types/base_internalhash_types.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types /Users/mac1000/.opam/5.3.0/lib/sexplib0/sexplib0.cmxa /Users/mac1000/.opam/5.3.0/lib/base/shadow_stdlib/shadow_stdlib.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel/ocaml_intrinsics_kernel.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel /Users/mac1000/.opam/5.3.0/lib/base/base.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base /Users/mac1000/.opam/5.3.0/lib/printbox/printbox.cmxa /Users/mac1000/.opam/5.3.0/lib/uutf/uutf.cmxa /Users/mac1000/.opam/5.3.0/lib/uucp/uucp.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-text/printbox_text.cmxa /Users/mac1000/.opam/5.3.0/lib/re/re.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/functor/tyxml_f.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/tyxml.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-html/printbox_html.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-md/printbox_md.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-ext-plot/printbox_ext_plot.cmxa /Users/mac1000/.opam/5.3.0/lib/bigstringaf/bigstringaf.cmxa -I /Users/mac1000/.opam/5.3.0/lib/bigstringaf /Users/mac1000/.opam/5.3.0/lib/angstrom/angstrom.cmxa /Users/mac1000/.opam/5.3.0/lib/stdio/stdio.cmxa /Users/mac1000/.opam/5.3.0/lib/parsexp/parsexp.cmxa /Users/mac1000/.opam/5.3.0/lib/sexplib/sexplib.cmxa /Users/mac1000/.opam/5.3.0/lib/num/nums.cmxa -I /Users/mac1000/.opam/5.3.0/lib/num -I /Users/mac1000/.opam/5.3.0/lib/num /Users/mac1000/.opam/5.3.0/lib/ocaml/str/str.cmxa /Users/mac1000/.opam/5.3.0/lib/pprint/pprint.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/ptime.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/clock/ptime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock /Users/mac1000/.opam/5.3.0/lib/mtime/mtime.cmxa /Users/mac1000/.opam/5.3.0/lib/mtime/clock/mtime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock /Users/mac1000/.opam/5.3.0/lib/ocaml/unix/unix.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml/threads/threads.cmxa /Users/mac1000/.opam/5.3.0/lib/thread-local-storage/thread_local_storage.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_minidebug/runtime/minidebug_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/variantslib/variantslib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_string/runtime/ppx_string_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_sexp_conv/runtime-lib/ppx_sexp_conv_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_here/runtime-lib/ppx_here_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_compare/runtime-lib/ppx_compare_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_hash/runtime-lib/ppx_hash_lib.cmxa arrayjit/lib/utils.cmxa /Users/mac1000/.opam/5.3.0/lib/stdlib-shims/stdlib_shims.cmxa /Users/mac1000/.opam/5.3.0/lib/integers/integers.cmxa -I /Users/mac1000/.opam/5.3.0/lib/integers /Users/mac1000/.opam/5.3.0/lib/bigarray-compat/bigarray_compat.cmxa /Users/mac1000/.opam/5.3.0/lib/ctypes/ctypes.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign/ctypes_foreign.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign /Users/mac1000/.opam/5.3.0/lib/backoff/backoff.cmxa /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5/multicore_magic_atomic_array_unboxed5.cmxa -I /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5 /Users/mac1000/.opam/5.3.0/lib/multicore-magic/Multicore_magic.cmxa /Users/mac1000/.opam/5.3.0/lib/saturn_lockfree/saturn_lockfree.cmxa arrayjit/lib/ir.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/runtime/runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreFoundation/CoreFoundation.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreGraphics/CoreGraphics.cmxa /Users/mac1000/.opam/5.3.0/lib/metal/metal.cmxa arrayjit/lib/metal_backend.cmxa arrayjit/lib/backends.cmxa /Users/mac1000/.opam/5.3.0/lib/fieldslib/fieldslib.cmxa lib/ocannl.cmxa /Users/mac1000/.opam/5.3.0/lib/jane-street-headers/jane_street_headers.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_enumerate/runtime-lib/ppx_enumerate_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/time_now/time_now.cmxa -I /Users/mac1000/.opam/5.3.0/lib/time_now bin/.moons_benchmark.eobjs/native/dune__exe__Moons_benchmark.cmx)
ld: warning: ignoring duplicate libraries: '-lpthread'
(cd _build/default/test_ppx && ./test_ppx_op_expected.exe)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/default/test_ppx/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
Failed to delete directory log_files: (Sys_error "log_files: Directory not empty")
(cd _build/default/test_ppx && ./test_ppx_op.exe)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/default/test_ppx/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/default && /Users/mac1000/.opam/5.3.0/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -w -24 -g -g -o test/.tutorials.inline-tests/inline-test-runner.exe /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types/base_internalhash_types.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base/base_internalhash_types /Users/mac1000/.opam/5.3.0/lib/sexplib0/sexplib0.cmxa /Users/mac1000/.opam/5.3.0/lib/base/shadow_stdlib/shadow_stdlib.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel/ocaml_intrinsics_kernel.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ocaml_intrinsics_kernel /Users/mac1000/.opam/5.3.0/lib/base/base.cmxa -I /Users/mac1000/.opam/5.3.0/lib/base /Users/mac1000/.opam/5.3.0/lib/ocaml/dynlink/dynlink.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox/printbox.cmxa /Users/mac1000/.opam/5.3.0/lib/uutf/uutf.cmxa /Users/mac1000/.opam/5.3.0/lib/uucp/uucp.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-text/printbox_text.cmxa /Users/mac1000/.opam/5.3.0/lib/re/re.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/functor/tyxml_f.cmxa /Users/mac1000/.opam/5.3.0/lib/tyxml/tyxml.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-html/printbox_html.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-md/printbox_md.cmxa /Users/mac1000/.opam/5.3.0/lib/printbox-ext-plot/printbox_ext_plot.cmxa /Users/mac1000/.opam/5.3.0/lib/bigstringaf/bigstringaf.cmxa -I /Users/mac1000/.opam/5.3.0/lib/bigstringaf /Users/mac1000/.opam/5.3.0/lib/angstrom/angstrom.cmxa /Users/mac1000/.opam/5.3.0/lib/stdio/stdio.cmxa /Users/mac1000/.opam/5.3.0/lib/parsexp/parsexp.cmxa /Users/mac1000/.opam/5.3.0/lib/sexplib/sexplib.cmxa /Users/mac1000/.opam/5.3.0/lib/num/nums.cmxa -I /Users/mac1000/.opam/5.3.0/lib/num -I /Users/mac1000/.opam/5.3.0/lib/num /Users/mac1000/.opam/5.3.0/lib/ocaml/str/str.cmxa /Users/mac1000/.opam/5.3.0/lib/pprint/pprint.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/ptime.cmxa /Users/mac1000/.opam/5.3.0/lib/ptime/clock/ptime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock -I /Users/mac1000/.opam/5.3.0/lib/ptime/clock /Users/mac1000/.opam/5.3.0/lib/mtime/mtime.cmxa /Users/mac1000/.opam/5.3.0/lib/mtime/clock/mtime_clock.cmxa -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock -I /Users/mac1000/.opam/5.3.0/lib/mtime/clock /Users/mac1000/.opam/5.3.0/lib/ocaml/unix/unix.cmxa /Users/mac1000/.opam/5.3.0/lib/ocaml/threads/threads.cmxa /Users/mac1000/.opam/5.3.0/lib/thread-local-storage/thread_local_storage.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_minidebug/runtime/minidebug_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/variantslib/variantslib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_string/runtime/ppx_string_runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_sexp_conv/runtime-lib/ppx_sexp_conv_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_here/runtime-lib/ppx_here_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_compare/runtime-lib/ppx_compare_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_hash/runtime-lib/ppx_hash_lib.cmxa arrayjit/lib/utils.cmxa /Users/mac1000/.opam/5.3.0/lib/stdlib-shims/stdlib_shims.cmxa /Users/mac1000/.opam/5.3.0/lib/integers/integers.cmxa -I /Users/mac1000/.opam/5.3.0/lib/integers /Users/mac1000/.opam/5.3.0/lib/bigarray-compat/bigarray_compat.cmxa /Users/mac1000/.opam/5.3.0/lib/ctypes/ctypes.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign/ctypes_foreign.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ctypes-foreign /Users/mac1000/.opam/5.3.0/lib/backoff/backoff.cmxa /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5/multicore_magic_atomic_array_unboxed5.cmxa -I /Users/mac1000/.opam/5.3.0/lib/multicore-magic/__private__/multicore_magic_atomic_array_unboxed5 /Users/mac1000/.opam/5.3.0/lib/multicore-magic/Multicore_magic.cmxa /Users/mac1000/.opam/5.3.0/lib/saturn_lockfree/saturn_lockfree.cmxa arrayjit/lib/ir.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/runtime/runtime.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreFoundation/CoreFoundation.cmxa /Users/mac1000/.opam/5.3.0/lib/camlkit-base/CoreGraphics/CoreGraphics.cmxa /Users/mac1000/.opam/5.3.0/lib/metal/metal.cmxa arrayjit/lib/metal_backend.cmxa arrayjit/lib/backends.cmxa /Users/mac1000/.opam/5.3.0/lib/fieldslib/fieldslib.cmxa lib/ocannl.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_inline_test/config/inline_test_config.cmxa /Users/mac1000/.opam/5.3.0/lib/jane-street-headers/jane_street_headers.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_enumerate/runtime-lib/ppx_enumerate_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/time_now/time_now.cmxa -I /Users/mac1000/.opam/5.3.0/lib/time_now /Users/mac1000/.opam/5.3.0/lib/ppx_inline_test/runtime-lib/ppx_inline_test_lib.cmxa /Users/mac1000/.opam/5.3.0/lib/ppxlib/print_diff/ppxlib_print_diff.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_expect/make_corrected_file/make_corrected_file.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_expect/config_types/expect_test_config_types.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_expect/config/expect_test_config.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_expect/runtime/ppx_expect_runtime.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ppx_expect/runtime test/tutorials.cmxa /Users/mac1000/.opam/5.3.0/lib/ppx_inline_test/runner/lib/ppx_inline_test_runner_lib.cmxa -I /Users/mac1000/.opam/5.3.0/lib/ppx_inline_test/runner/lib /Users/mac1000/.opam/5.3.0/lib/ppx_expect/evaluator/ppx_expect_evaluator.cmxa test/.tutorials.inline-tests/.t.eobjs/native/dune__exe__Main.cmx -linkall)
ld: warning: ignoring duplicate libraries: '-lpthread'
(cd _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test && .tutorials.inline-tests/inline-test-runner.exe inline-test-runner tutorials -partition '' -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test && .tutorials.inline-tests/inline-test-runner.exe inline-test-runner tutorials -partition 'Found 0, in the config file' -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test && .tutorials.inline-tests/inline-test-runner.exe inline-test-runner tutorials -partition 'Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/c315f31d24b42c390c6a074c587af4d7/default/test/ocannl_config.' -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test && .tutorials.inline-tests/inline-test-runner.exe inline-test-runner tutorials -partition 'Retrieving commandline, environment, or config file variable ocannl_log_level' -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
File "test/dune", lines 30-40, characters 0-281:
30 | (rule
31 |  (alias runtest)
32 |  (target
33 |   (dir log_files))
34 |  (action
35 |   (run
36 |    %{dep:micrograd_demo_logging.exe}
37 |    "--ocannl_debug_backend=text"
38 |    "--ocannl_log_file_stem=micrograd_demo_logging"
39 |    "--ocannl_log_main_domain_to_stdout=false"
40 |    "--ocannl_debug_log_to_stream_files=true")))
(cd _build/default/test && ./micrograd_demo_logging.exe --ocannl_debug_backend=text --ocannl_log_file_stem=micrograd_demo_logging --ocannl_log_main_domain_to_stdout=false --ocannl_debug_log_to_stream_files=true)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
Retrieving commandline, environment, or config file variable ocannl_backend
Found multicore_cc, in the config file
Retrieving commandline, environment, or config file variable ocannl_cd_ident_style
Not found, using default heuristic
Retrieving commandline, environment, or config file variable ocannl_ll_ident_style
Not found, using default heuristic
Retrieving commandline, environment, or config file variable ocannl_prefer_backend_uniformity
Found true, in the config file
Retrieving commandline, environment, or config file variable ocannl_debug_log_to_stream_files
Found true, commandline --ocannl_debug_log_to_stream_files=true
Retrieving commandline, environment, or config file variable ocannl_cc_backend_optimization_level
Not found, using default 3
Retrieving commandline, environment, or config file variable ocannl_cc_backend_compiler_command
Not found, using default cc
Fatal error: exception File "src/printbox-text/PrintBox_text.ml", line 212, characters 6-12: Assertion failed
Raised at PrintBox_text.Output.Make_out.to_buf_aux_ in file "src/printbox-text/PrintBox_text.ml", line 212, characters 6-50
Called from Stdlib__Map.Make.fold in file "map.ml", line 329, characters 19-42
Called from Stdlib__Map.Make.fold in file "map.ml", line 329, characters 26-41
Called from Stdlib__Map.Make.fold in file "map.ml", line 329, characters 26-41
Called from Stdlib__Map.Make.fold in file "map.ml", line 329, characters 26-41
Called from PrintBox_text.Output.Make_out.render in file "src/printbox-text/PrintBox_text.ml", line 242, characters 14-64
Called from PrintBox_text.output in file "src/printbox-text/PrintBox_text.ml", line 851, characters 2-31
Called from Minidebug_runtime.PrintBox.output_box in file "minidebug_runtime.ml", line 1527, characters 19-59
Called from Minidebug_runtime.PrintBox.close_log_impl.close_tree in file "minidebug_runtime.ml", line 1572, characters 6-38
Called from Backends.Add_buffer_retrieval_and_syncing.sync_routine in file "arrayjit/lib/backends.ml", lines 144-172, characters 31-82
Called from Backends.Raise_backend.link in file "arrayjit/lib/backends.ml", lines 454-455, characters 4-92
Re-raised at Backends.Raise_backend.link in file "arrayjit/lib/backends.ml", lines 441-455, characters 23-92
Called from Dune__exe__Micrograd_demo_logging in file "test/micrograd_demo_logging.ml", line 34, characters 13-77
(cd _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test && .tutorials.inline-tests/inline-test-runner.exe inline-test-runner tutorials -partition primitive_ops.ml -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test && .tutorials.inline-tests/inline-test-runner.exe inline-test-runner tutorials -partition zero2hero_1of7.ml -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test && .tutorials.inline-tests/inline-test-runner.exe inline-test-runner tutorials -partition hello_world_op.ml -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test && .tutorials.inline-tests/inline-test-runner.exe inline-test-runner tutorials -partition moons_demo_parallel.ml -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test && .tutorials.inline-tests/inline-test-runner.exe inline-test-runner tutorials -partition einsum_trivia.ml -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/default/test && ./moons_demo_parallel_run.exe)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
("Set log_level to" 1)
└─{orphaned from #2}
Retrieving commandline, environment, or config file variable ocannl_backend
Found multicore_cc, in the config file
Properties of devices:
(multicore_devices
 (device ((device_name CPU) (device_ordinal 0) (num_domains 8))))
@!Retrieving commandline, environment, or config file variable ocannl_prefer_backend_uniformity
Found true, in the config file
Retrieving commandline, environment, or config file variable ocannl_debug_log_to_stream_files
Not found, using default false
Retrieving commandline, environment, or config file variable ocannl_ll_ident_style
Not found, using default heuristic
Retrieving commandline, environment, or config file variable ocannl_cc_backend_optimization_level
Not found, using default 3
Retrieving commandline, environment, or config file variable ocannl_cc_backend_compiler_command
Not found, using default cc
Retrieving commandline, environment, or config file variable ocannl_never_capture_stdout
Not found, using default false
Batch=59, step=60, lr=0.197750, batch loss=1.064855, epoch loss=37.558885
Batch=119, step=120, lr=0.195000, batch loss=0.262098, epoch loss=41.299107
Epoch=0, step=120, lr=0.195000, epoch loss=41.299107
Batch=59, step=180, lr=0.192500, batch loss=0.250088, epoch loss=2.658323
Batch=119, step=240, lr=0.190250, batch loss=0.211315, epoch loss=5.792934
Epoch=1, step=240, lr=0.190250, epoch loss=5.792934
Batch=59, step=300, lr=0.187500, batch loss=0.238838, epoch loss=2.457628
Batch=119, step=360, lr=0.185000, batch loss=0.197979, epoch loss=5.221130
Epoch=2, step=360, lr=0.185000, epoch loss=5.221130
Batch=59, step=420, lr=0.182750, batch loss=0.242264, epoch loss=2.390371
Batch=119, step=480, lr=0.180250, batch loss=0.191062, epoch loss=5.252084
Epoch=3, step=480, lr=0.180250, epoch loss=5.252084
Batch=59, step=540, lr=0.177500, batch loss=0.232067, epoch loss=2.330159
Batch=119, step=600, lr=0.175250, batch loss=0.187203, epoch loss=5.085617
Epoch=4, step=600, lr=0.175250, epoch loss=5.085617
Batch=59, step=660, lr=0.172500, batch loss=0.232444, epoch loss=2.338119
Batch=119, step=720, lr=0.170250, batch loss=0.181132, epoch loss=4.934208
Epoch=5, step=720, lr=0.170250, epoch loss=4.934208
Batch=59, step=780, lr=0.167750, batch loss=0.220117, epoch loss=2.225625
Batch=119, step=840, lr=0.165250, batch loss=0.174501, epoch loss=4.848840
Epoch=6, step=840, lr=0.165250, epoch loss=4.848840
Batch=59, step=900, lr=0.162500, batch loss=0.213442, epoch loss=2.148298
Batch=119, step=960, lr=0.160250, batch loss=0.167936, epoch loss=4.676315
Epoch=7, step=960, lr=0.160250, epoch loss=4.676315
Batch=59, step=1020, lr=0.157750, batch loss=0.200167, epoch loss=2.029772
Batch=119, step=1080, lr=0.155250, batch loss=0.155055, epoch loss=4.438766
Epoch=8, step=1080, lr=0.155250, epoch loss=4.438766
Batch=59, step=1140, lr=0.152750, batch loss=0.184931, epoch loss=1.905937
Batch=119, step=1200, lr=0.150250, batch loss=0.140413, epoch loss=4.069140
Epoch=9, step=1200, lr=0.150250, epoch loss=4.069140
Batch=59, step=1260, lr=0.147750, batch loss=0.148572, epoch loss=1.687227
Batch=119, step=1320, lr=0.145000, batch loss=0.118869, epoch loss=3.656482
Epoch=10, step=1320, lr=0.145000, epoch loss=3.656482
Batch=59, step=1380, lr=0.142500, batch loss=0.121068, epoch loss=1.405702
Batch=119, step=1440, lr=0.140250, batch loss=0.087956, epoch loss=2.960439
Epoch=11, step=1440, lr=0.140250, epoch loss=2.960439
Batch=59, step=1500, lr=0.137500, batch loss=0.097430, epoch loss=1.124434
Batch=119, step=1560, lr=0.135250, batch loss=0.060749, epoch loss=2.386761
Epoch=12, step=1560, lr=0.135250, epoch loss=2.386761
Batch=59, step=1620, lr=0.132750, batch loss=0.167804, epoch loss=0.951345
Batch=119, step=1680, lr=0.130250, batch loss=0.035738, epoch loss=1.870331
Epoch=13, step=1680, lr=0.130250, epoch loss=1.870331
Batch=59, step=1740, lr=0.127750, batch loss=0.035736, epoch loss=0.437306
Batch=119, step=1800, lr=0.125000, batch loss=0.015836, epoch loss=0.939844
Epoch=14, step=1800, lr=0.125000, epoch loss=0.939844
Batch=59, step=1860, lr=0.122500, batch loss=0.028165, epoch loss=0.285633
Batch=119, step=1920, lr=0.120250, batch loss=0.009395, epoch loss=0.658206
Epoch=15, step=1920, lr=0.120250, epoch loss=0.658206
Batch=59, step=1980, lr=0.117500, batch loss=0.021350, epoch loss=0.176139
Batch=119, step=2040, lr=0.115000, batch loss=0.006073, epoch loss=0.413166
Epoch=16, step=2040, lr=0.115000, epoch loss=0.413166
Batch=59, step=2100, lr=0.112500, batch loss=0.018742, epoch loss=0.132181
Batch=119, step=2160, lr=0.110000, batch loss=0.005541, epoch loss=0.364643
Epoch=17, step=2160, lr=0.110000, epoch loss=0.364643
Batch=59, step=2220, lr=0.107500, batch loss=0.017534, epoch loss=0.102991
Batch=119, step=2280, lr=0.105000, batch loss=0.004640, epoch loss=0.270439
Epoch=18, step=2280, lr=0.105000, epoch loss=0.270439
Batch=59, step=2340, lr=0.102750, batch loss=0.014304, epoch loss=0.092059
Batch=119, step=2400, lr=0.100000, batch loss=0.005012, epoch loss=0.220874
Epoch=19, step=2400, lr=0.100000, epoch loss=0.220874

Half-moons scatterplot and decision boundary:
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚********************************#*******************************************************************β”‚
β”‚**********************#*#*#######*###*#####*********************************************************β”‚
β”‚**********************#########################*****************************************************β”‚
β”‚*****************#**########*######*###########*###*************************************************β”‚
β”‚***************#################*###################************************************************β”‚
β”‚************######*#################*#################**********************************************β”‚
β”‚**********#*#####*########*#**************##*#########*#********************************************β”‚
β”‚***********########*##*#******************#*****##########*****************************************.β”‚
β”‚***********###########*************************############*************************************....β”‚
β”‚********######*####*********************************###*###*#*********************************......β”‚
β”‚*******######**##*************....*****************#*######*#******************************.........β”‚
β”‚*******##*##**##***********..........***************########*##**************************...........β”‚
β”‚*****#######************.......%...%%...***************#########***********************...........%.β”‚
β”‚******######***********.........%.........**************##*#####**********************........%.%.%.β”‚
β”‚***#########**********.........%%%.%%......*************#*#######********************........%.%%%%.β”‚
β”‚****#######**********..........%%%%.........************#########*******************.........%%.%%.%β”‚
β”‚**#######************..........%%%%%%%........*************###*###*****************..........%%%%%%.β”‚
β”‚*##*####************...........%%%%%%%.........***********########***************............%%%%%%.β”‚
β”‚*#######************...........%%%%%%%..........************#######*************.............%%%%%%.β”‚
β”‚*##*####***********............%%.%%%%%...........***********####**************.............%%%%%%%.β”‚
β”‚*#####*#***********.............%%%%%%%............**********##*###***********...............%%%%%..β”‚
β”‚#######***********.............%.%%%%%%..............********#######*********..............%%%%.%%..β”‚
β”‚#####*#**********...............%%%%%%%...............*******#######********...............%%%%%%%%.β”‚
β”‚###*#*#**********...............%%%%%%%%%..............*******######******.................%%%%%%...β”‚
β”‚#######*********.................%%%%%%%%................****###*###*****.................%%%%%%....β”‚
β”‚######**********.................%%%%%%%%%................***#*###******................%%%%%%%%%...β”‚
β”‚*#*##*#********...................%%%%%%%%%%...............***######***..................%%%%%%.....β”‚
β”‚#****##********....................%%%%%%%%%.................**###*#**................%.%%%%%%%.....β”‚
β”‚**************.....................%.%%%%%%...................******...................%.%%.%%......β”‚
β”‚**************.......................%..%%%%%%%.................***...............%.%%%%%%%%%.......β”‚
β”‚*************.........................%.%%%.%%%%.................*................%%%%%%%.%.%.......β”‚
β”‚************............................%..%%%%..%................................%%%%%%%%..........β”‚
β”‚************.............................%%%%%%%%%%%........................%%..%%%%%%%%.%..........β”‚
β”‚***********..............................%%.%%%%%%%%..%....................%..%%%.%%%%%%%...........β”‚
β”‚***********.................................%%%%.%%%%%%%%...............%.%%%%%%%%%%%%.%............β”‚
β”‚**********...................................%%%%%%%%%%%%%%%%%%%%%%.%%%%.%%%%%%%%%%%%%..............β”‚
β”‚**********....................................%%.%%%%%%%%%%%%%%%%%%%%%%.%%%%%%%%%%%.................β”‚
β”‚*********.........................................%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%...................β”‚
β”‚*********............................................%%%.%%%%%%%%%%%%%%%%%%%%%......................β”‚
β”‚********................................................%...%%%%.%%.%%%%..%.........................β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
(cd _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test && .tutorials.inline-tests/inline-test-runner.exe inline-test-runner tutorials -partition micrograd_demo.ml -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
File "test/micrograd_demo.ml", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/micrograd_demo.ml _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/micrograd_demo.ml.corrected
diff --git a/_build/default/test/micrograd_demo.ml b/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/micrograd_demo.ml.corrected
index 77e46c6..ab81526 100644
--- a/_build/default/test/micrograd_demo.ml
+++ b/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/micrograd_demo.ml.corrected
@@ -52,15 +52,14 @@ let%expect_test "Micrograd README basic example" =
     β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€β”€       β”‚
     β”‚β”‚β”‚ -4.00 β”‚       β”‚
     β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”€β”˜       β”‚
-    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
-    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-                                                              β”‚[0]: a shape 0:1  grad_aβ”‚
-                                                              β”‚β”Œβ”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚
-                                                              β”‚β”‚β”‚axis 0   β”‚            β”‚
-                                                              β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€            β”‚
-                                                              β”‚β”‚β”‚ 1.38e+2 β”‚            β”‚
-                                                              β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β”‚
-                                                              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
+    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
+    β”‚[0]: a shape 0:1  grad_aβ”‚
+    β”‚β”Œβ”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚
+    β”‚β”‚β”‚axis 0   β”‚            β”‚
+    β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€            β”‚
+    β”‚β”‚β”‚ 1.38e+2 β”‚            β”‚
+    β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β”‚
+    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
     |}];
   Tensor.print ~with_code:false ~with_grad:true `Default b;
   [%expect
@@ -72,15 +71,14 @@ let%expect_test "Micrograd README basic example" =
     β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€        β”‚
     β”‚β”‚β”‚ 2.00 β”‚        β”‚
     β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”˜        β”‚
-    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
-    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-                                                              β”‚[2]: b shape 0:1  grad_bβ”‚
-                                                              β”‚β”Œβ”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚
-                                                              β”‚β”‚β”‚axis 0   β”‚            β”‚
-                                                              β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€            β”‚
-                                                              β”‚β”‚β”‚ 6.45e+2 β”‚            β”‚
-                                                              β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β”‚
-                                                              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
+    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
+    β”‚[2]: b shape 0:1  grad_bβ”‚
+    β”‚β”Œβ”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚
+    β”‚β”‚β”‚axis 0   β”‚            β”‚
+    β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€            β”‚
+    β”‚β”‚β”‚ 6.45e+2 β”‚            β”‚
+    β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β”‚
+    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
     |}]
 
 let%expect_test "Micrograd half-moons example" =
File "test/hello_world_op.ml", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/hello_world_op.ml _build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/hello_world_op.ml.corrected
diff --git a/_build/default/test/hello_world_op.ml b/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/hello_world_op.ml.corrected
index ba9d7ef..6bfa309 100644
--- a/_build/default/test/hello_world_op.ml
+++ b/_build/.sandbox/e7317b9d5fb72b6e9167e44669af6023/default/test/hello_world_op.ml.corrected
@@ -102,36 +102,46 @@ let%expect_test "Print constant tensor" =
   let%op hey = [ (1, 2, 3); (4, 5, 6) ] in
   Train.forward_and_forget backend ctx hey;
   Tensor.print ~with_code:false ~with_grad:false `Inline @@ hey;
-  [%expect {| [1.00, 2.00, 3.00; 4.00, 5.00, 6.00] |}];
+  [%expect {|
+    [0]: [  1.00 , 2.00 , 3.00  ;  4.00 , 5.00 , 6.00  ]_hey shape 1:3->0:2  [
+       1.00 , 2.00 , 3.00
+      ;  4.00 , 5.00 , 6.00
+    ]
+    |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ hey;
   [%expect
     {|
-    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-    β”‚[0]: [1.00, 2.00, 3.00; 4.00, 5.00, 6.00]_hey shape 1:3->0:2 β”‚
-    β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                                  β”‚
-    β”‚β”‚      β”‚axis 1            β”‚                                  β”‚
-    β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€                                  β”‚
-    β”‚β”‚axis 0β”‚ 1.00  2.00  3.00 β”‚                                  β”‚
-    β”‚β”‚      β”‚ 4.00  5.00  6.00 β”‚                                  β”‚
-    β”‚β””β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                  β”‚
-    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
+    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
+    β”‚[0]: [  1.00 , 2.00 , 3.00  ;  4.00 , 5.00 , 6.00  ]_hey shape 1:3->0:2 β”‚
+    β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                                             β”‚
+    β”‚β”‚      β”‚axis 1            β”‚                                             β”‚
+    β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€                                             β”‚
+    β”‚β”‚axis 0β”‚ 1.00  2.00  3.00 β”‚                                             β”‚
+    β”‚β”‚      β”‚ 4.00  5.00  6.00 β”‚                                             β”‚
+    β”‚β””β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                             β”‚
+    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
     |}];
   let%op hoo = [| [ 1; 2; 3 ]; [ 4; 5; 6 ] |] in
   Train.forward_and_forget backend ctx hoo;
   Tensor.print ~with_code:false ~with_grad:false `Inline @@ hoo;
-  [%expect {| [|[1.00; 2.00; 3.00]; [4.00; 5.00; 6.00]|] |}];
+  [%expect {|
+    [1]: [| [ 1.00 ; 2.00 ; 3.00 ] ; [ 4.00 ; 5.00 ; 6.00 ] |]_hoo shape 0:2|1:3  [|
+      [ 1.00 ; 2.00 ; 3.00 ]
+      ; [ 4.00 ; 5.00 ; 6.00 ]
+    |]
+    |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ hoo;
   [%expect
     {|
-    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-    β”‚[1]: [|[1.00; 2.00; 3.00]; [4.00; 5.00; 6.00]|]_hoo shape 0:2|1:3 β”‚
-    β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                                       β”‚
-    β”‚β”‚      β”‚axis 1            β”‚                                       β”‚
-    β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€                                       β”‚
-    β”‚β”‚axis 0β”‚ 1.00  2.00  3.00 β”‚                                       β”‚
-    β”‚β”‚      β”‚ 4.00  5.00  6.00 β”‚                                       β”‚
-    β”‚β””β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                       β”‚
-    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
+    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
+    β”‚[1]: [| [ 1.00 ; 2.00 ; 3.00 ] ; [ 4.00 ; 5.00 ; 6.00 ] |]_hoo shape 0:2|1:3 β”‚
+    β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                                                  β”‚
+    β”‚β”‚      β”‚axis 1            β”‚                                                  β”‚
+    β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€                                                  β”‚
+    β”‚β”‚axis 0β”‚ 1.00  2.00  3.00 β”‚                                                  β”‚
+    β”‚β”‚      β”‚ 4.00  5.00  6.00 β”‚                                                  β”‚
+    β”‚β””β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                                  β”‚
+    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
     |}];
   let%op hey2 =
     [
@@ -145,10 +155,12 @@ let%expect_test "Print constant tensor" =
   Tensor.print ~with_code:false ~with_grad:false `Inline @@ hey2;
   [%expect
     {|
-    [(1.00, 2.00, 3.00), (4.00, 5.00, 6.00);
-      (7.00, 8.00, 9.00), (10.00, 11.00, 12.00);
-      (13.00, 14.00, 15.00), (16.00, 17.00, 18.00);
-      (19.00, 20.00, 21.00), (22.00, 23.00, 24.00)]
+    [2]: c4x2x3_hey2 shape 1:2,2:3->0:4  [
+       ( 1.00 , 2.00 , 3.00 ) , ( 4.00 , 5.00 , 6.00 )
+      ;  ( 7.00 , 8.00 , 9.00 ) , ( 10.00 , 11.00 , 12.00 )
+      ;  ( 13.00 , 14.00 , 15.00 ) , ( 16.00 , 17.00 , 18.00 )
+      ;  ( 19.00 , 20.00 , 21.00 ) , ( 22.00 , 23.00 , 24.00 )
+    ]
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ hey2;
   [%expect
@@ -178,10 +190,12 @@ let%expect_test "Print constant tensor" =
   Tensor.print ~with_code:false ~with_grad:false `Inline @@ hoo2;
   [%expect
     {|
-    [|[[1.00; 2.00; 3.00]; [4.00; 5.00; 6.00]];
-      [[7.00; 8.00; 9.00]; [10.00; 11.00; 12.00]];
-      [[13.00; 14.00; 15.00]; [16.00; 17.00; 18.00]];
-      [[19.00; 20.00; 21.00]; [22.00; 23.00; 24.00]]|]
+    [3]: c4x2x3_hoo2 shape 0:4|1:2,2:3  [|
+      [ [ 1.00 ; 2.00 ; 3.00 ] ; [ 4.00 ; 5.00 ; 6.00 ] ]
+      ; [ [ 7.00 ; 8.00 ; 9.00 ] ; [ 10.00 ; 11.00 ; 12.00 ] ]
+      ; [ [ 13.00 ; 14.00 ; 15.00 ] ; [ 16.00 ; 17.00 ; 18.00 ] ]
+      ; [ [ 19.00 ; 20.00 ; 21.00 ] ; [ 22.00 ; 23.00 ; 24.00 ] ]
+    |]
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ hoo2;
   [%expect
@@ -209,10 +223,12 @@ let%expect_test "Print constant tensor" =
   Tensor.print ~with_code:false ~with_grad:false `Inline @@ heyhoo;
   [%expect
     {|
-    [|[|[1.00; 2.00; 3.00]; [4.00; 5.00; 6.00]|];
-      [|[7.00; 8.00; 9.00]; [10.00; 11.00; 12.00]|];
-      [|[13.00; 14.00; 15.00]; [16.00; 17.00; 18.00]|];
-      [|[19.00; 20.00; 21.00]; [22.00; 23.00; 24.00]|]|]
+    [4]: c4x2x3_heyhoo shape 0:4,1:2|2:3  [|
+      [| [ 1.00 ; 2.00 ; 3.00 ] ; [ 4.00 ; 5.00 ; 6.00 ] |]
+      ; [| [ 7.00 ; 8.00 ; 9.00 ] ; [ 10.00 ; 11.00 ; 12.00 ] |]
+      ; [| [ 13.00 ; 14.00 ; 15.00 ] ; [ 16.00 ; 17.00 ; 18.00 ] |]
+      ; [| [ 19.00 ; 20.00 ; 21.00 ] ; [ 22.00 ; 23.00 ; 24.00 ] |]
+    |]
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ heyhoo;
   [%expect
@@ -240,15 +256,24 @@ let%expect_test "Print constant tensor" =
   Tensor.print ~with_code:false ~with_grad:false `Inline @@ heyhoo2;
   [%expect
     {|
-    [|
-      [|[[1.00; 31.00]; [2.00; 32.00]; [3.00; 33.00]];
-        [[4.00; 34.00]; [5.00; 35.00]; [6.00; 36.00]]|];
-      [|[[7.00; 37.00]; [8.00; 38.00]; [9.00; 39.00]];
-        [[10.00; 40.00]; [11.00; 41.00]; [12.00; 42.00]]|];
-      [|[[13.00; 43.00]; [14.00; 44.00]; [15.00; 45.00]];
-        [[16.00; 46.00]; [17.00; 47.00]; [18.00; 48.00]]|];
-      [|[[19.00; 49.00]; [20.00; 50.00]; [21.00; 51.00]];
-        [[22.00; 52.00]; [23.00; 53.00]; [24.00; 54.00]]|]|]
+    [5]: c4x2x3x2_heyhoo2 shape 0:4,1:2|2:3,3:2  [|
+      [|
+        [ [ 1.00 ; 31.00 ] ; [ 2.00 ; 32.00 ] ; [ 3.00 ; 33.00 ] ]
+        ; [ [ 4.00 ; 34.00 ] ; [ 5.00 ; 35.00 ] ; [ 6.00 ; 36.00 ] ]
+      |]
+      ; [|
+        [ [ 7.00 ; 37.00 ] ; [ 8.00 ; 38.00 ] ; [ 9.00 ; 39.00 ] ]
+        ; [ [ 10.00 ; 40.00 ] ; [ 11.00 ; 41.00 ] ; [ 12.00 ; 42.00 ] ]
+      |]
+      ; [|
+        [ [ 13.00 ; 43.00 ] ; [ 14.00 ; 44.00 ] ; [ 15.00 ; 45.00 ] ]
+        ; [ [ 16.00 ; 46.00 ] ; [ 17.00 ; 47.00 ] ; [ 18.00 ; 48.00 ] ]
+      |]
+      ; [|
+        [ [ 19.00 ; 49.00 ] ; [ 20.00 ; 50.00 ] ; [ 21.00 ; 51.00 ] ]
+        ; [ [ 22.00 ; 52.00 ] ; [ 23.00 ; 53.00 ] ; [ 24.00 ; 54.00 ] ]
+      |]
+    |]
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ heyhoo2;
   [%expect
@@ -293,17 +318,28 @@ let%expect_test "Print constant tensor" =
   Tensor.print ~with_code:false ~with_grad:false `Inline @@ heyhoo3;
   [%expect
     {|
-    [|
+    [6]: c2x2x2x3x2_heyhoo3 shape 0:2,1:2|2:2,3:3,4:2  [|
       [|
-        [[[1.00; 31.00]; [2.00; 32.00]; [3.00; 33.00]];
-          [[4.00; 34.00]; [5.00; 35.00]; [6.00; 36.00]]];
-        [[[7.00; 37.00]; [8.00; 38.00]; [9.00; 39.00]];
-          [[10.00; 40.00]; [11.00; 41.00]; [12.00; 42.00]]]|];
-      [|
-        [[[13.00; 43.00]; [14.00; 44.00]; [15.00; 45.00]];
-          [[16.00; 46.00]; [17.00; 47.00]; [18.00; 48.00]]];
-        [[[19.00; 49.00]; [20.00; 50.00]; [21.00; 51.00]];
-          [[22.00; 52.00]; [23.00; 53.00]; [24.00; 54.00]]]|]|]
+        [
+          [ [ 1.00 ; 31.00 ] ; [ 2.00 ; 32.00 ] ; [ 3.00 ; 33.00 ] ]
+          ; [ [ 4.00 ; 34.00 ] ; [ 5.00 ; 35.00 ] ; [ 6.00 ; 36.00 ] ]
+        ]
+        ; [
+          [ [ 7.00 ; 37.00 ] ; [ 8.00 ; 38.00 ] ; [ 9.00 ; 39.00 ] ]
+          ; [ [ 10.00 ; 40.00 ] ; [ 11.00 ; 41.00 ] ; [ 12.00 ; 42.00 ] ]
+        ]
+      |]
+      ; [|
+        [
+          [ [ 13.00 ; 43.00 ] ; [ 14.00 ; 44.00 ] ; [ 15.00 ; 45.00 ] ]
+          ; [ [ 16.00 ; 46.00 ] ; [ 17.00 ; 47.00 ] ; [ 18.00 ; 48.00 ] ]
+        ]
+        ; [
+          [ [ 19.00 ; 49.00 ] ; [ 20.00 ; 50.00 ] ; [ 21.00 ; 51.00 ] ]
+          ; [ [ 22.00 ; 52.00 ] ; [ 23.00 ; 53.00 ] ; [ 24.00 ; 54.00 ] ]
+        ]
+      |]
+    |]
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ heyhoo3;
   [%expect
@@ -353,17 +389,28 @@ let%expect_test "Print constant tensor" =
   Tensor.print ~with_code:false ~with_grad:false `Inline @@ heyhoo4;
   [%expect
     {|
-    [|
-      [
-        [[1.00, 31.00; 2.00, 32.00; 3.00, 33.00];
-          [4.00, 34.00; 5.00, 35.00; 6.00, 36.00]];
-        [[7.00, 37.00; 8.00, 38.00; 9.00, 39.00];
-          [10.00, 40.00; 11.00, 41.00; 12.00, 42.00]]];
+    [7]: c2x2x2x3x2_heyhoo4 shape 0:2|4:2->1:2,2:2,3:3  [|
       [
-        [[13.00, 43.00; 14.00, 44.00; 15.00, 45.00];
-          [16.00, 46.00; 17.00, 47.00; 18.00, 48.00]];
-        [[19.00, 49.00; 20.00, 50.00; 21.00, 51.00];
-          [22.00, 52.00; 23.00, 53.00; 24.00, 54.00]]]|]
+        [
+          [  1.00 , 31.00  ;  2.00 , 32.00  ;  3.00 , 33.00  ]
+          ; [  4.00 , 34.00  ;  5.00 , 35.00  ;  6.00 , 36.00  ]
+        ]
+        ; [
+          [  7.00 , 37.00  ;  8.00 , 38.00  ;  9.00 , 39.00  ]
+          ; [  10.00 , 40.00  ;  11.00 , 41.00  ;  12.00 , 42.00  ]
+        ]
+      ]
+      ; [
+        [
+          [  13.00 , 43.00  ;  14.00 , 44.00  ;  15.00 , 45.00  ]
+          ; [  16.00 , 46.00  ;  17.00 , 47.00  ;  18.00 , 48.00  ]
+        ]
+        ; [
+          [  19.00 , 49.00  ;  20.00 , 50.00  ;  21.00 , 51.00  ]
+          ; [  22.00 , 52.00  ;  23.00 , 53.00  ;  24.00 , 54.00  ]
+        ]
+      ]
+    |]
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ heyhoo4;
   [%expect
@@ -462,8 +509,29 @@ let%expect_test "Big matrix" =
   Tensor.print ~with_code:false ~with_grad:false `Inline zero_to_twenty;
   [%expect
     {|
-    [0.00; 1.00; 2.00; 3.00; 4.00; 5.00; 6.00; 7.00; 8.00; 9.00; 10.00; 11.00;
-      12.00; 13.00; 14.00; 15.00; 16.00; 17.00; 18.00; 19.00; 20.00]
+    [2]: 0...20 shape 0:21  [
+      0.00
+      ; 1.00
+      ; 2.00
+      ; 3.00
+      ; 4.00
+      ; 5.00
+      ; 6.00
+      ; 7.00
+      ; 8.00
+      ; 9.00
+      ; 10.00
+      ; 11.00
+      ; 12.00
+      ; 13.00
+      ; 14.00
+      ; 15.00
+      ; 16.00
+      ; 17.00
+      ; 18.00
+      ; 19.00
+      ; 20.00
+    ]
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default zero_to_twenty;
   [%expect
"/usr/bin/env" "bash" "-c" "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1
2025-05-22 20:04.55: Job failed: Failed: Build failed