Organisationsahrefsocannl9afb61 ()macos-homebrew-5.3_opam-2.3

macos-homebrew-5.3_opam-2.3

Logs

Show full logs
2025-05-22 12:20.03: New job: test ahrefs/ocannl https://github.com/ahrefs/ocannl.git#refs/heads/master (9afb61d245b2724d2132450805c8b080ac7e0c9a) (macos-x86_64:macos-homebrew-5.3_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 9afb61d2
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM macos-homebrew-ocaml-5.3
# macos-homebrew-5.3_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 c7d6d1d2aa1bf00c8e6ec9dff2030cd39d493e47 || git fetch origin master) && git reset -q --hard c7d6d1d2aa1bf00c8e6ec9dff2030cd39d493e47 && 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.18.2 dune-configurator.3.18.2 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 12:20.03: Using cache hint "ahrefs/ocannl-macos-homebrew-ocaml-5.3-macos-homebrew-5.3_opam-2.3-605328e0946a34090ab929de1c328f31"
2025-05-22 12:20.03: Using OBuilder spec:
((from macos-homebrew-ocaml-5.3)
 (comment macos-homebrew-5.3_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 c7d6d1d2aa1bf00c8e6ec9dff2030cd39d493e47 || git fetch origin master) && git reset -q --hard c7d6d1d2aa1bf00c8e6ec9dff2030cd39d493e47 && 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.18.2 dune-configurator.3.18.2 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 12:20.03: Waiting for resource in pool OCluster
2025-05-22 12:20.03: Waiting for worker…
2025-05-22 12:20.03: Got resource from pool OCluster
Building on i7-worker-01
HEAD is now at 657f596d Migrate `Staged_compilation` to `PPrint.document`
HEAD is now at 9afb61d2 In progress / broken: Format -> PPrint migration first pass by Claude

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

/: (comment macos-homebrew-5.3_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 12:20.05 ---> 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 12:20.05 ---> 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 12:20.05 ---> 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 c7d6d1d2aa1bf00c8e6ec9dff2030cd39d493e47 || git fetch origin master) && git reset -q --hard c7d6d1d2aa1bf00c8e6ec9dff2030cd39d493e47 && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
 * branch                  master     -> FETCH_HEAD
   67e940587b..c7d6d1d2aa  master     -> origin/master
c7d6d1d2aa Merge pull request #27880 from MisterDA/os-family-fedora

<><> 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 12:20.06 ---> using "fc5f985d8247bdc4337903e76c751fd2a0c4fe6a78de9cddf9b71609c77e98d0" from cache

/: (copy (src neural_nets_lib.opam arrayjit.opam) (dst ./src/./))
2025-05-22 12:20.06 ---> using "1467a17911ee5da50df76b5e6cb57ee89f4c33596eca0bdc2a952533eb39dbcc" from cache

/: (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 12:20.06 ---> using "624f6cc338332787ad2e8301114904c53e9405fcb3e48c0c2c5217010d565780" from cache

/: (run (network host)
        (shell "echo '(lang dune 3.0)' > './src/./dune-project'"))
2025-05-22 12:20.06 ---> using "b09ace9f3d426aad45630f3382ced4af7714ba03dd0e437a62e74085b603ecf3" from cache

/: (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.18.2 dune-configurator.3.18.2 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"))
+ /usr/local/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 <><><><><><><><><><><><><><><><><><><><><><>

+ /usr/local/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:d90b539a53c4e58aca72ba735b7f25bcaa5b631b049ab4f49482e379210823ef
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/218e78a31a327d7c99a595bd29b1a0e636aff07f5a2bff82c773ce6a3efc8c27--libffi--3.4.8.sonoma.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:60803149fa486b8da14591ce5c016e37c9388c1ded2a88d9167a84926cc74957
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/abf6c9afe2a21080057d3d7a2508d5df4c40b6a56c8145f904f1d518a48814d9--pkgconf--2.4.3.sequoia.bottle.1.tar.gz
- ==> Pouring libffi--3.4.8.sonoma.bottle.tar.gz
- ==> Caveats
- libffi is keg-only, which means it was not symlinked into /usr/local,
- 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/usr/local/opt/libffi/lib"
-   export CPPFLAGS="-I/usr/local/opt/libffi/include"
- ==> Summary
- 🍺  /usr/local/Cellar/libffi/3.4.8: 18 files, 679.8KB
- ==> 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.sequoia.bottle.1.tar.gz
- 🍺  /usr/local/Cellar/pkgconf/2.4.3: 27 files, 339.8KB
- ==> Running `brew cleanup pkgconf`...
- ==> Caveats
- ==> libffi
- libffi is keg-only, which means it was not symlinked into /usr/local,
- 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/usr/local/opt/libffi/lib"
-   export CPPFLAGS="-I/usr/local/opt/libffi/include"
- 
- For pkg-config to find libffi you may need to set:
-   export PKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig"
2025-05-22 12:20.07 ---> using "1480ff6e4d812679ddb893066d6a3af455416824a6350ba10423a45574bfaec3" from cache

/: (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.18.2
  - install dune-configurator       3.18.2
  - 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 backoff.0.1.1  (cached)
-> retrieved astring.0.8.5  (cached)
-> retrieved angstrom.0.16.1  (cached)
-> retrieved bigarray-compat.1.1.0  (cached)
-> retrieved bigstringaf.0.10.0  (cached)
-> retrieved camlp-streams.5.0.1  (cached)
-> retrieved base.v0.17.2  (cached)
-> retrieved cmdliner.1.3.0  (cached)
-> retrieved cppo.1.8.0  (cached)
-> installed conf-pkg-config.4
-> retrieved csexp.1.5.2  (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 ppx_hash.v0.17.0  (cached)
-> retrieved ppx_here.v0.17.0  (cached)
-> retrieved ppx_inline_test.v0.17.0  (cached)
-> retrieved ppx_minidebug.2.2.0  (cached)
-> retrieved ppx_optcomp.v0.17.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 dune.3.18.2, dune-configurator.3.18.2  (cached)
-> retrieved ppxlib_jane.v0.17.2  (cached)
-> retrieved ppxlib.0.35.0  (cached)
-> retrieved printbox.0.12, printbox-ext-plot.0.12, printbox-html.0.12, printbox-md.0.12, printbox-text.0.12  (cached)
-> retrieved ptime.1.2.0  (cached)
-> installed ocamlbuild.0.16.1
-> retrieved result.1.5  (cached)
-> retrieved re.1.12.0  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> installed num.1.5-1
-> retrieved sexplib.v0.17.0  (cached)
-> retrieved saturn_lockfree.0.5.0  (cached)
-> retrieved sexplib0.v0.17.0  (cached)
-> retrieved stdio.v0.17.0  (cached)
-> retrieved thread-local-storage.0.2  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved camlkit-base.0.3.0  (cached)
-> retrieved topkg.1.0.8  (cached)
-> retrieved time_now.v0.17.0  (cached)
-> retrieved uutf.1.0.4  (cached)
-> retrieved variantslib.v0.17.0  (cached)
-> retrieved tyxml.4.6.0  (cached)
-> installed cmdliner.1.3.0
-> retrieved uucp.16.0.0  (cached)
-> installed ocamlfind.1.9.8
-> installed topkg.1.0.8
-> installed uutf.1.0.4
-> installed mtime.2.1.0
-> installed ptime.1.2.0
-> installed fmt.0.10.0
-> installed astring.0.8.5
-> installed logs.0.8.0
-> installed dune.3.18.2
-> installed jane-street-headers.v0.17.0
-> installed csexp.1.5.2
-> installed bigarray-compat.1.1.0
-> installed pprint.20230830
-> installed ocaml_intrinsics_kernel.v0.17.1
-> installed ocaml-version.4.0.0
-> installed ocaml-syntax-shims.1.0.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 printbox.0.12
-> installed result.1.5
-> installed stdlib-shims.0.3.0
-> installed thread-local-storage.0.2
-> installed sexplib0.v0.17.0
-> installed integers.0.7.0
-> installed saturn_lockfree.0.5.0
-> installed re.1.12.0
-> installed dune-configurator.3.18.2
-> installed bigstringaf.0.10.0
-> installed parsexp.v0.17.0
-> installed angstrom.0.16.1
-> installed mdx.2.5.0
-> installed sexplib.v0.17.0
-> installed tyxml.4.6.0
-> installed printbox-html.0.12
-> installed base.v0.17.2
-> installed fieldslib.v0.17.0
-> installed ctypes.0.23.0
-> installed variantslib.v0.17.0
-> installed stdio.v0.17.0
-> installed uucp.16.0.0
-> installed ctypes-foreign.0.23.0
-> installed printbox-text.0.12
-> installed ppxlib.0.35.0
-> installed printbox-md.0.12
-> installed printbox-ext-plot.0.12
-> installed ppx_cold.v0.17.0
-> installed ppx_here.v0.17.0
-> installed ppx_variants_conv.v0.17.0
-> installed ppxlib_jane.v0.17.2
-> installed ppx_optcomp.v0.17.0
-> installed ppx_fields_conv.v0.17.0
-> installed ppx_deriving.6.0.3
-> installed ppx_enumerate.v0.17.0
-> installed ppx_globalize.v0.17.0
-> installed ppx_compare.v0.17.0
-> installed ppx_sexp_conv.v0.17.0
-> installed ppx_hash.v0.17.0
-> installed ppx_assert.v0.17.0
-> installed ppx_minidebug.2.2.0
-> installed ppx_base.v0.17.0
-> installed jst-config.v0.17.0
-> installed ppx_string.v0.17.0
-> installed time_now.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 12:20.07 ---> using "1badb6bc029db16ce3cd36396be6a7a023c71857776c7b5b9515811f380cd643" from cache

/: (copy (src .) (dst ./src))
2025-05-22 12:20.09 ---> saved as "810f1a66b14fc767ea57f8168ceb860764b65cdf7d935216144eb2909562f41b"

/: (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/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 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/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/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
(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 && /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/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/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/35ccf7b29ee470ec7bb92bac282b0e0d/default/test/ocannl_config.' -source-tree-root .. -diff-cmd -)

Welcome to OCANNL! Reading configuration defaults from /Users/mac1000/src/_build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/default/test/ocannl_config.
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/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 12))))
@!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=19, step=20, lr=0.199750, batch loss=8.539632, epoch loss=29.858758
Batch=39, step=40, lr=0.199250, batch loss=0.849657, epoch loss=33.334711
Batch=59, step=60, lr=0.198750, batch loss=1.329296, epoch loss=36.111184
Batch=79, step=80, lr=0.198250, batch loss=0.822060, epoch loss=37.551814
Batch=99, step=100, lr=0.197750, batch loss=1.063879, epoch loss=39.305936
Batch=119, step=120, lr=0.197000, batch loss=0.411299, epoch loss=40.200575
Batch=139, step=140, lr=0.196750, batch loss=0.446680, epoch loss=41.117392
Batch=159, step=160, lr=0.196250, batch loss=0.245134, epoch loss=41.745260
Batch=179, step=180, lr=0.195500, batch loss=0.248776, epoch loss=42.460569
Batch=199, step=200, lr=0.195250, batch loss=0.263729, epoch loss=43.041571
Epoch=0, step=200, lr=0.195250, epoch loss=43.041571
Batch=19, step=220, lr=0.194750, batch loss=0.205244, epoch loss=0.467416
Batch=39, step=240, lr=0.194250, batch loss=0.347906, epoch loss=1.058982
Batch=59, step=260, lr=0.193750, batch loss=0.316595, epoch loss=1.622944
Batch=79, step=280, lr=0.193250, batch loss=0.276285, epoch loss=2.211961
Batch=99, step=300, lr=0.192750, batch loss=0.250432, epoch loss=2.672226
Batch=119, step=320, lr=0.192250, batch loss=0.354931, epoch loss=3.394340
Batch=139, step=340, lr=0.191750, batch loss=0.339645, epoch loss=4.115342
Batch=159, step=360, lr=0.191250, batch loss=0.214027, epoch loss=4.624611
Batch=179, step=380, lr=0.190750, batch loss=0.208298, epoch loss=5.163865
Batch=199, step=400, lr=0.190250, batch loss=0.220833, epoch loss=5.663038
Epoch=1, step=400, lr=0.190250, epoch loss=5.663038
Batch=19, step=420, lr=0.189750, batch loss=0.195946, epoch loss=0.426334
Batch=39, step=440, lr=0.189000, batch loss=0.328088, epoch loss=0.975585
Batch=59, step=460, lr=0.188750, batch loss=0.288263, epoch loss=1.466799
Batch=79, step=480, lr=0.188250, batch loss=0.251478, epoch loss=1.998460
Batch=99, step=500, lr=0.187750, batch loss=0.224949, epoch loss=2.414706
Batch=119, step=520, lr=0.187000, batch loss=0.331373, epoch loss=3.081873
Batch=139, step=540, lr=0.186750, batch loss=0.325609, epoch loss=3.765416
Batch=159, step=560, lr=0.186250, batch loss=0.244915, epoch loss=4.302722
Batch=179, step=580, lr=0.185750, batch loss=0.222001, epoch loss=4.886682
Batch=199, step=600, lr=0.185250, batch loss=0.199913, epoch loss=5.350680
Epoch=2, step=600, lr=0.185250, epoch loss=5.350680
Batch=19, step=620, lr=0.184750, batch loss=0.185029, epoch loss=0.406170
Batch=39, step=640, lr=0.184250, batch loss=0.316893, epoch loss=0.934481
Batch=59, step=660, lr=0.183750, batch loss=0.285498, epoch loss=1.429372
Batch=79, step=680, lr=0.183250, batch loss=0.254849, epoch loss=1.962585
Batch=99, step=700, lr=0.182750, batch loss=0.242413, epoch loss=2.405120
Batch=119, step=720, lr=0.182250, batch loss=0.330707, epoch loss=3.063702
Batch=139, step=740, lr=0.181750, batch loss=0.317659, epoch loss=3.731285
Batch=159, step=760, lr=0.181250, batch loss=0.239282, epoch loss=4.256617
Batch=179, step=780, lr=0.180750, batch loss=0.195395, epoch loss=4.785423
Batch=199, step=800, lr=0.180250, batch loss=0.191227, epoch loss=5.205875
Epoch=3, step=800, lr=0.180250, epoch loss=5.205875
Batch=19, step=820, lr=0.179750, batch loss=0.187105, epoch loss=0.411298
Batch=39, step=840, lr=0.179250, batch loss=0.307573, epoch loss=0.924153
Batch=59, step=860, lr=0.178750, batch loss=0.270146, epoch loss=1.400637
Batch=79, step=880, lr=0.178000, batch loss=0.243125, epoch loss=1.908658
Batch=99, step=900, lr=0.177750, batch loss=0.239453, epoch loss=2.341231
Batch=119, step=920, lr=0.177250, batch loss=0.324019, epoch loss=2.984428
Batch=139, step=940, lr=0.176750, batch loss=0.313169, epoch loss=3.635074
Batch=159, step=960, lr=0.176250, batch loss=0.218657, epoch loss=4.131078
Batch=179, step=980, lr=0.175750, batch loss=0.196066, epoch loss=4.660001
Batch=199, step=1000, lr=0.175250, batch loss=0.184464, epoch loss=5.073200
Epoch=4, step=1000, lr=0.175250, epoch loss=5.073200
Batch=19, step=1020, lr=0.174750, batch loss=0.184540, epoch loss=0.407999
Batch=39, step=1040, lr=0.174250, batch loss=0.299573, epoch loss=0.908014
Batch=59, step=1060, lr=0.173750, batch loss=0.272646, epoch loss=1.393223
Batch=79, step=1080, lr=0.173250, batch loss=0.242077, epoch loss=1.901928
Batch=99, step=1100, lr=0.172750, batch loss=0.233288, epoch loss=2.331132
Batch=119, step=1120, lr=0.172250, batch loss=0.318070, epoch loss=2.962024
Batch=139, step=1140, lr=0.171750, batch loss=0.305545, epoch loss=3.597515
Batch=159, step=1160, lr=0.171250, batch loss=0.217776, epoch loss=4.080405
Batch=179, step=1180, lr=0.170750, batch loss=0.178851, epoch loss=4.581981
Batch=199, step=1200, lr=0.170250, batch loss=0.181066, epoch loss=4.979774
Epoch=5, step=1200, lr=0.170250, epoch loss=4.979774
Batch=19, step=1220, lr=0.169750, batch loss=0.188844, epoch loss=0.414308
Batch=39, step=1240, lr=0.169250, batch loss=0.287887, epoch loss=0.897237
Batch=59, step=1260, lr=0.168750, batch loss=0.257411, epoch loss=1.348220
Batch=79, step=1280, lr=0.168250, batch loss=0.232826, epoch loss=1.833363
Batch=99, step=1300, lr=0.167750, batch loss=0.226663, epoch loss=2.252328
Batch=119, step=1320, lr=0.167250, batch loss=0.310492, epoch loss=2.868788
Batch=139, step=1340, lr=0.166750, batch loss=0.290979, epoch loss=3.489005
Batch=159, step=1360, lr=0.166250, batch loss=0.209247, epoch loss=3.961228
Batch=179, step=1380, lr=0.165750, batch loss=0.169810, epoch loss=4.448966
Batch=199, step=1400, lr=0.165250, batch loss=0.179610, epoch loss=4.835671
Epoch=6, step=1400, lr=0.165250, epoch loss=4.835671
Batch=19, step=1420, lr=0.164750, batch loss=0.176472, epoch loss=0.402875
Batch=39, step=1440, lr=0.164250, batch loss=0.275704, epoch loss=0.865109
Batch=59, step=1460, lr=0.163750, batch loss=0.252805, epoch loss=1.320300
Batch=79, step=1480, lr=0.163250, batch loss=0.228663, epoch loss=1.793557
Batch=99, step=1500, lr=0.162750, batch loss=0.217849, epoch loss=2.189635
Batch=119, step=1520, lr=0.162250, batch loss=0.293869, epoch loss=2.776297
Batch=139, step=1540, lr=0.161750, batch loss=0.286625, epoch loss=3.377368
Batch=159, step=1560, lr=0.161250, batch loss=0.190924, epoch loss=3.819131
Batch=179, step=1580, lr=0.160750, batch loss=0.201946, epoch loss=4.337614
Batch=199, step=1600, lr=0.160250, batch loss=0.167071, epoch loss=4.715951
Epoch=7, step=1600, lr=0.160250, epoch loss=4.715951
Batch=19, step=1620, lr=0.159750, batch loss=0.164793, epoch loss=0.364974
Batch=39, step=1640, lr=0.159250, batch loss=0.262319, epoch loss=0.805176
Batch=59, step=1660, lr=0.158750, batch loss=0.241418, epoch loss=1.227619
Batch=79, step=1680, lr=0.158250, batch loss=0.212931, epoch loss=1.672868
Batch=99, step=1700, lr=0.157750, batch loss=0.201142, epoch loss=2.045396
Batch=119, step=1720, lr=0.157250, batch loss=0.278860, epoch loss=2.604410
Batch=139, step=1740, lr=0.156750, batch loss=0.271968, epoch loss=3.172968
Batch=159, step=1760, lr=0.156250, batch loss=0.189029, epoch loss=3.598957
Batch=179, step=1780, lr=0.155750, batch loss=0.182434, epoch loss=4.069662
Batch=199, step=1800, lr=0.155250, batch loss=0.154919, epoch loss=4.421762
Epoch=8, step=1800, lr=0.155250, epoch loss=4.421762
Batch=19, step=1820, lr=0.154750, batch loss=0.150801, epoch loss=0.330596
Batch=39, step=1840, lr=0.154250, batch loss=0.240116, epoch loss=0.736664
Batch=59, step=1860, lr=0.153750, batch loss=0.218621, epoch loss=1.128692
Batch=79, step=1880, lr=0.153250, batch loss=0.208329, epoch loss=1.553542
Batch=99, step=1900, lr=0.152750, batch loss=0.176634, epoch loss=1.889589
Batch=119, step=1920, lr=0.152250, batch loss=0.259624, epoch loss=2.414685
Batch=139, step=1940, lr=0.151750, batch loss=0.256438, epoch loss=2.943680
Batch=159, step=1960, lr=0.151250, batch loss=0.168423, epoch loss=3.324895
Batch=179, step=1980, lr=0.150750, batch loss=0.144425, epoch loss=3.736472
Batch=199, step=2000, lr=0.150250, batch loss=0.139132, epoch loss=4.066232
Epoch=9, step=2000, lr=0.150250, epoch loss=4.066232
Batch=19, step=2020, lr=0.149750, batch loss=0.137113, epoch loss=0.297740
Batch=39, step=2040, lr=0.149250, batch loss=0.218113, epoch loss=0.666392
Batch=59, step=2060, lr=0.148750, batch loss=0.195598, epoch loss=1.004879
Batch=79, step=2080, lr=0.148250, batch loss=0.178154, epoch loss=1.389959
Batch=99, step=2100, lr=0.147750, batch loss=0.148799, epoch loss=1.681606
Batch=119, step=2120, lr=0.147250, batch loss=0.231996, epoch loss=2.140461
Batch=139, step=2140, lr=0.146750, batch loss=0.232474, epoch loss=2.629754
Batch=159, step=2160, lr=0.146250, batch loss=0.154374, epoch loss=2.996325
Batch=179, step=2180, lr=0.145750, batch loss=0.112543, epoch loss=3.371742
Batch=199, step=2200, lr=0.145250, batch loss=0.117798, epoch loss=3.643147
Epoch=10, step=2200, lr=0.145250, epoch loss=3.643147
Batch=19, step=2220, lr=0.144750, batch loss=0.124402, epoch loss=0.269335
Batch=39, step=2240, lr=0.144250, batch loss=0.190755, epoch loss=0.590794
Batch=59, step=2260, lr=0.143750, batch loss=0.162196, epoch loss=0.865285
Batch=79, step=2280, lr=0.143250, batch loss=0.147738, epoch loss=1.173797
Batch=99, step=2300, lr=0.142750, batch loss=0.120689, epoch loss=1.411659
Batch=119, step=2320, lr=0.142250, batch loss=0.172920, epoch loss=1.761327
Batch=139, step=2340, lr=0.141750, batch loss=0.203603, epoch loss=2.144953
Batch=159, step=2360, lr=0.141250, batch loss=0.107682, epoch loss=2.466880
Batch=179, step=2380, lr=0.140750, batch loss=0.083225, epoch loss=2.739823
Batch=199, step=2400, lr=0.140250, batch loss=0.086768, epoch loss=2.961135
Epoch=11, step=2400, lr=0.140250, epoch loss=2.961135
Batch=19, step=2420, lr=0.139750, batch loss=0.102375, epoch loss=0.211414
Batch=39, step=2440, lr=0.139250, batch loss=0.143626, epoch loss=0.455593
Batch=59, step=2460, lr=0.138750, batch loss=0.123342, epoch loss=0.653098
Batch=79, step=2480, lr=0.138250, batch loss=0.100617, epoch loss=0.882887
Batch=99, step=2500, lr=0.137750, batch loss=0.084461, epoch loss=1.076761
Batch=119, step=2520, lr=0.137250, batch loss=0.126881, epoch loss=1.332453
Batch=139, step=2540, lr=0.136750, batch loss=0.165126, epoch loss=1.654726
Batch=159, step=2560, lr=0.136250, batch loss=0.061253, epoch loss=1.998543
Batch=179, step=2580, lr=0.135750, batch loss=0.043659, epoch loss=2.176104
Batch=199, step=2600, lr=0.135250, batch loss=0.058083, epoch loss=2.327394
Epoch=12, step=2600, lr=0.135250, epoch loss=2.327394
Batch=19, step=2620, lr=0.134750, batch loss=0.120616, epoch loss=0.199752
Batch=39, step=2640, lr=0.134250, batch loss=0.095494, epoch loss=0.387543
Batch=59, step=2660, lr=0.133750, batch loss=0.083578, epoch loss=0.510932
Batch=79, step=2680, lr=0.133250, batch loss=0.054251, epoch loss=0.642859
Batch=99, step=2700, lr=0.132750, batch loss=0.172574, epoch loss=0.894802
Batch=119, step=2720, lr=0.132250, batch loss=0.125828, epoch loss=1.118115
Batch=139, step=2740, lr=0.131750, batch loss=0.093260, epoch loss=1.498229
Batch=159, step=2760, lr=0.131250, batch loss=0.032026, epoch loss=1.615000
Batch=179, step=2780, lr=0.130750, batch loss=0.060459, epoch loss=1.734961
Batch=199, step=2800, lr=0.130250, batch loss=0.046999, epoch loss=1.886158
Epoch=13, step=2800, lr=0.130250, epoch loss=1.886158
Batch=19, step=2820, lr=0.129750, batch loss=0.037633, epoch loss=0.074188
Batch=39, step=2840, lr=0.129250, batch loss=0.059947, epoch loss=0.178655
Batch=59, step=2860, lr=0.128750, batch loss=0.042909, epoch loss=0.240241
Batch=79, step=2880, lr=0.128250, batch loss=0.023126, epoch loss=0.307853
Batch=99, step=2900, lr=0.127750, batch loss=0.034700, epoch loss=0.371846
Batch=119, step=2920, lr=0.127250, batch loss=0.054698, epoch loss=0.474888
Batch=139, step=2940, lr=0.126750, batch loss=0.175811, epoch loss=0.730963
Batch=159, step=2960, lr=0.126000, batch loss=0.024256, epoch loss=0.817872
Batch=179, step=2980, lr=0.125750, batch loss=0.019395, epoch loss=0.875419
Batch=199, step=3000, lr=0.125250, batch loss=0.020102, epoch loss=0.944615
Epoch=14, step=3000, lr=0.125250, epoch loss=0.944615
Batch=19, step=3020, lr=0.124750, batch loss=0.018390, epoch loss=0.030356
Batch=39, step=3040, lr=0.124250, batch loss=0.034956, epoch loss=0.095969
Batch=59, step=3060, lr=0.123750, batch loss=0.023347, epoch loss=0.131270
Batch=79, step=3080, lr=0.123250, batch loss=0.030230, epoch loss=0.195892
Batch=99, step=3100, lr=0.122750, batch loss=0.026812, epoch loss=0.274232
Batch=119, step=3120, lr=0.122250, batch loss=0.033467, epoch loss=0.339858
Batch=139, step=3140, lr=0.121750, batch loss=0.051570, epoch loss=0.475264
Batch=159, step=3160, lr=0.121250, batch loss=0.016724, epoch loss=0.543452
Batch=179, step=3180, lr=0.120750, batch loss=0.012388, epoch loss=0.583372
Batch=199, step=3200, lr=0.120250, batch loss=0.009783, epoch loss=0.616656
Epoch=15, step=3200, lr=0.120250, epoch loss=0.616656
Batch=19, step=3220, lr=0.119750, batch loss=0.020417, epoch loss=0.025220
Batch=39, step=3240, lr=0.119250, batch loss=0.022833, epoch loss=0.102358
Batch=59, step=3260, lr=0.118750, batch loss=0.032950, epoch loss=0.152311
Batch=79, step=3280, lr=0.118250, batch loss=0.007096, epoch loss=0.180222
Batch=99, step=3300, lr=0.117750, batch loss=0.021651, epoch loss=0.220501
Batch=119, step=3320, lr=0.117250, batch loss=0.031625, epoch loss=0.269182
Batch=139, step=3340, lr=0.116750, batch loss=0.031275, epoch loss=0.364113
Batch=159, step=3360, lr=0.116250, batch loss=0.016880, epoch loss=0.414094
Batch=179, step=3380, lr=0.115750, batch loss=0.003136, epoch loss=0.434259
Batch=199, step=3400, lr=0.115250, batch loss=0.006101, epoch loss=0.455723
Epoch=16, step=3400, lr=0.115250, epoch loss=0.455723
Batch=19, step=3420, lr=0.114750, batch loss=0.010566, epoch loss=0.013654
Batch=39, step=3440, lr=0.114250, batch loss=0.014072, epoch loss=0.054072
Batch=59, step=3460, lr=0.113750, batch loss=0.013495, epoch loss=0.071568
Batch=79, step=3480, lr=0.113250, batch loss=0.005723, epoch loss=0.094069
Batch=99, step=3500, lr=0.112750, batch loss=0.018729, epoch loss=0.128771
Batch=119, step=3520, lr=0.112250, batch loss=0.042268, epoch loss=0.185861
Batch=139, step=3540, lr=0.111750, batch loss=0.025603, epoch loss=0.283411
Batch=159, step=3560, lr=0.111250, batch loss=0.010225, epoch loss=0.321654
Batch=179, step=3580, lr=0.110750, batch loss=0.001624, epoch loss=0.334185
Batch=199, step=3600, lr=0.110250, batch loss=0.005169, epoch loss=0.352394
Epoch=17, step=3600, lr=0.110250, epoch loss=0.352394
Batch=19, step=3620, lr=0.109750, batch loss=0.006856, epoch loss=0.009111
Batch=39, step=3640, lr=0.109250, batch loss=0.011500, epoch loss=0.033554
Batch=59, step=3660, lr=0.108750, batch loss=0.013008, epoch loss=0.058944
Batch=79, step=3680, lr=0.108250, batch loss=0.002758, epoch loss=0.075019
Batch=99, step=3700, lr=0.107750, batch loss=0.015779, epoch loss=0.107171
Batch=119, step=3720, lr=0.107250, batch loss=0.018889, epoch loss=0.137787
Batch=139, step=3740, lr=0.106750, batch loss=0.027397, epoch loss=0.189835
Batch=159, step=3760, lr=0.106250, batch loss=0.008909, epoch loss=0.224244
Batch=179, step=3780, lr=0.105750, batch loss=0.001935, epoch loss=0.235025
Batch=199, step=3800, lr=0.105250, batch loss=0.004943, epoch loss=0.250741
Epoch=18, step=3800, lr=0.105250, epoch loss=0.250741
Batch=19, step=3820, lr=0.104750, batch loss=0.005358, epoch loss=0.007157
Batch=39, step=3840, lr=0.104250, batch loss=0.008861, epoch loss=0.026935
Batch=59, step=3860, lr=0.103750, batch loss=0.012353, epoch loss=0.046445
Batch=79, step=3880, lr=0.103250, batch loss=0.004327, epoch loss=0.061752
Batch=99, step=3900, lr=0.102750, batch loss=0.014776, epoch loss=0.090873
Batch=119, step=3920, lr=0.102250, batch loss=0.019284, epoch loss=0.124948
Batch=139, step=3940, lr=0.101750, batch loss=0.028921, epoch loss=0.179287
Batch=159, step=3960, lr=0.101250, batch loss=0.009519, epoch loss=0.210219
Batch=179, step=3980, lr=0.100750, batch loss=0.001089, epoch loss=0.218881
Batch=199, step=4000, lr=0.100250, batch loss=0.004791, epoch loss=0.232657
Epoch=19, step=4000, lr=0.100250, epoch loss=0.232657

Half-moons scatterplot and decision boundary:
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚********************************#*******************************************************************β”‚
β”‚**********************#*#*#######*###*#####*********************************************************β”‚
β”‚**********************#########################*****************************************************β”‚
β”‚*****************#**########*######*###########*###*************************************************β”‚
β”‚***************#################*###################************************************************β”‚
β”‚************######*#################*#################**********************************************β”‚
β”‚**********#*#####*########*#**************##*#########*#********************************************β”‚
β”‚***********########*##*#******************#*****##########******************************************β”‚
β”‚***********###########*************************############**************************************...β”‚
β”‚********######*####*********************************###*###*#**********************************.....β”‚
β”‚*******######**##*************...******************#*######*#*******************************........β”‚
β”‚*******##*##**##**********...........***************########*##***************************..........β”‚
β”‚*****#######************.......%...%%...***************#########************************..........%.β”‚
β”‚******######**********..........%........***************##*#####***********************.......%.%.%.β”‚
β”‚***#########**********.........%%%.%%......*************#*#######*********************.......%.%%%%.β”‚
β”‚****#######**********..........%%%%.........************#########*******************.........%%.%%.%β”‚
β”‚**#######************..........%%%%%%%........*************###*###*****************..........%%%%%%.β”‚
β”‚*##*####************...........%%%%%%%.........***********########****************...........%%%%%%.β”‚
β”‚*#######************...........%%%%%%%..........************#######**************............%%%%%%.β”‚
β”‚*##*####***********............%%.%%%%%...........***********####***************............%%%%%%%.β”‚
β”‚*#####*#**********..............%%%%%%%............**********##*###***********...............%%%%%..β”‚
β”‚#######***********.............%.%%%%%%.............*********#######*********..............%%%%.%%..β”‚
β”‚#####*#**********...............%%%%%%%...............*******#######********...............%%%%%%%%.β”‚
β”‚###*#*#**********...............%%%%%%%%%..............*******######*******................%%%%%%...β”‚
β”‚#######*********.................%%%%%%%%................****###*###*****.................%%%%%%....β”‚
β”‚######**********.................%%%%%%%%%................***#*###******................%%%%%%%%%...β”‚
β”‚*#*##*#********...................%%%%%%%%%%...............***######***..................%%%%%%.....β”‚
β”‚#****##*******.....................%%%%%%%%%.................**###*#**................%.%%%%%%%.....β”‚
β”‚**************.....................%.%%%%%%...................******...................%.%%.%%......β”‚
β”‚*************........................%..%%%%%%%................****...............%.%%%%%%%%%.......β”‚
β”‚*************.........................%.%%%.%%%%.................*................%%%%%%%.%.%.......β”‚
β”‚************............................%..%%%%..%................................%%%%%%%%..........β”‚
β”‚************.............................%%%%%%%%%%%........................%%..%%%%%%%%.%..........β”‚
β”‚***********..............................%%.%%%%%%%%..%....................%..%%%.%%%%%%%...........β”‚
β”‚**********..................................%%%%.%%%%%%%%...............%.%%%%%%%%%%%%.%............β”‚
β”‚**********...................................%%%%%%%%%%%%%%%%%%%%%%.%%%%.%%%%%%%%%%%%%..............β”‚
β”‚*********.....................................%%.%%%%%%%%%%%%%%%%%%%%%%.%%%%%%%%%%%.................β”‚
β”‚*********.........................................%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%...................β”‚
β”‚********.............................................%%%.%%%%%%%%%%%%%%%%%%%%%......................β”‚
β”‚********................................................%...%%%%.%%.%%%%..%.........................β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
(cd _build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/default/test/micrograd_demo.ml.corrected
diff --git a/_build/default/test/micrograd_demo.ml b/_build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/default/test/micrograd_demo.ml.corrected
index 77e46c6..3cb470c 100644
--- a/_build/default/test/micrograd_demo.ml
+++ b/_build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/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/bfd4d940d8ded60ca6dce205d2afe44f/default/test/hello_world_op.ml.corrected
diff --git a/_build/default/test/hello_world_op.ml b/_build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/default/test/hello_world_op.ml.corrected
index ba9d7ef..6b90c44 100644
--- a/_build/default/test/hello_world_op.ml
+++ b/_build/.sandbox/bfd4d940d8ded60ca6dce205d2afe44f/default/test/hello_world_op.ml.corrected
@@ -102,36 +102,39 @@ 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 {| [  1.00 , 2.00 , 3.00  ;  4.00 , 5.00 , 6.00  ][0]: c2x3_hey shape 1:3->0:2 |}];
   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]: c2x3_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.00 ; 2.00 ; 3.00 ] ; [ 4.00 ; 5.00 ; 6.00 ] |][1]: c2x3_hoo shape
+    0:2|1:3
+    |}];
   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]: c2x3_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 +148,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)]
+    [
+       ( 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
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ hey2;
   [%expect
@@ -178,10 +183,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]]|]
+    [|
+      [ [ 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
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ hoo2;
   [%expect
@@ -209,10 +216,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]|]|]
+    [|
+      [| [ 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
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ heyhoo;
   [%expect
@@ -241,14 +250,23 @@ let%expect_test "Print constant tensor" =
   [%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]]|]|]
+      [|
+        [ [ 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
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ heyhoo2;
   [%expect
@@ -295,15 +313,26 @@ let%expect_test "Print constant tensor" =
     {|
     [|
       [|
-        [[[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 ] ]
+        ]
+      |]
+    |][6]: c2x2x2x3x2_heyhoo3 shape 0:2,1:2|2:2,3:3,4:2
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ heyhoo3;
   [%expect
@@ -355,15 +384,26 @@ let%expect_test "Print constant tensor" =
     {|
     [|
       [
-        [[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  ]
+        ]
+      ]
+    |][7]: c2x2x2x3x2_heyhoo4 shape 0:2|4:2->1:2,2:2,3:3
     |}];
   Tensor.print ~with_code:false ~with_grad:false `Default @@ heyhoo4;
   [%expect
@@ -462,8 +502,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]
+    [
+      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
     |}];
   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 12:20.27: Job failed: Failed: Build failed