Code Monkey home page Code Monkey logo

feynman's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

feynman's Issues

I can't run Feynman successfully

cabal.exe: Could not resolve dependencies:
[__0] trying: Feynman-0.1.0.0 (user goal)
[__1] unknown package: old-time (dependency of Feynman)
[__1] fail (backjumping, conflict set: Feynman, old-time)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: Feynman, old-time

Above is the error information. I have used stack to install ghc-8.0.2 and base-4.9.1.0. Whether i install or uninstall the old-time library, it just report these dependency problem above. I used to try the Sandboxes tutorial, but i was trapped in "Downloading the latest package list from hackage.haskell.org".

Installation errors

Hi

I tried to install the latest version but ran into some errors. Here is what I tried, in a Dockerfile:

FROM ubuntu:22.04

# Install prerequisites
RUN apt-get update && \
    apt-get install -y \
        ghc \
        cabal-install \
        libstdc++6 \
        gcc \
        build-essential \
        git

# ghc: 8.8.4
# cabal: 3.0.0.0
RUN ghc --version && cabal --version

# Set the working directory
WORKDIR /app

# Copy the Feynman project source code to the container
RUN git clone https://github.com/meamy/feynman.git . && \
    git checkout 57f6933
# 57f6933 is the latest version
# Using an earlier version works: cfc93b1aa57eff977e6c8e25cfa43df2b752de8b

# Prevent Warning: The package list for 'hackage.haskell.org' does not exist
RUN cabal update

# Install executables for feynopt and feynver
RUN cabal configure
RUN cabal build
RUN cabal install

Note the comments in the Dockerfile, which show that an earlier version seems to work, and that I needed to additionally run "cabal update".

I got this error:

#11 [8/9] RUN cabal build
#11 0.627 Build profile: -w ghc-8.8.4 -O1
#11 0.627 In order, the following will be built (use -v for more details):
#11 0.627  - StateVar-1.2.2 (lib) (requires download & build)
#11 0.627  - alex-3.4.0.0 (exe:alex) (requires download & build)
#11 0.627  - base-orphans-0.9.0 (lib) (requires download & build)
#11 0.628  - bv-0.5 (lib:bv) (requires download & build)
#11 0.628  - colour-2.3.6 (lib) (requires download & build)
#11 0.628  - containers-0.6.7 (lib) (requires download & build)
#11 0.628  - data-array-byte-0.1.0.1 (lib) (requires download & build)
#11 0.628  - exceptions-0.10.7 (lib) (requires download & build)
#11 0.628  - fast-digits-0.3.1.0 (lib:fast-digits-internal) (requires download & build)
#11 0.628  - happy-1.20.1.1 (exe:happy) (requires download & build)
#11 0.628  - semigroups-0.20 (lib) (requires download & build)
#11 0.628  - some-1.0.5 (lib) (requires download & build)
#11 0.628  - splitmix-0.1.0.4 (lib) (requires download & build)
#11 0.628  - tagged-0.8.8 (lib) (requires download & build)
#11 0.628  - transformers-compat-0.7.2 (lib) (requires download & build)
#11 0.628  - void-0.7.3 (lib) (requires download & build)
#11 0.628  - contravariant-1.5.5 (lib) (requires download & build)
#11 0.628  - ansi-terminal-types-0.11.5 (lib) (requires download & build)
#11 0.628  - th-abstraction-0.6.0.0 (lib) (requires download & build)
#11 0.628  - indexed-traversable-0.1.2.1 (lib) (requires download & build)
#11 0.628  - binary-0.8.9.1 (lib) (requires download & build)
#11 0.628  - fast-digits-0.3.1.0 (lib) (requires download & build)
#11 0.628  - random-1.2.1.1 (lib) (requires download & build)
#11 0.629  - foldable1-classes-compat-0.1 (lib) (requires download & build)
#11 0.629  - distributive-0.6.2.1 (lib) (requires download & build)
#11 0.629  - boring-0.2.1 (lib) (requires download & build)
#11 0.629  - assoc-1.1 (lib) (requires download & build)
#11 0.629  - transformers-base-0.4.6 (lib) (requires download & build)
#11 0.629  - ansi-terminal-1.0 (lib) (requires download & build)
#11 0.629  - text-2.0.2 (lib) (requires download & build)
#11 0.629  - QuickCheck-2.14.3 (lib) (requires download & build)
#11 0.629  - comonad-5.0.8 (lib) (requires download & build)
#11 0.629  - dec-0.0.5 (lib) (requires download & build)
#11 0.629  - parsec-3.1.16.1 (lib) (requires download & build)
#11 0.629  - hashable-1.4.3.0 (lib) (requires download & build)
#11 0.629  - bifunctors-5.6.1 (lib) (requires download & build)
#11 0.629  - parsec3-numbers-0.1.0 (lib:parsec3-numbers) (requires download & build)
#11 0.629  - unordered-containers-0.2.19.1 (lib) (requires download & build)
#11 0.629  - OneTuple-0.4.1.1 (lib) (requires download & build)
#11 0.629  - profunctors-5.6.2 (lib) (requires download & build)
#11 0.629  - semigroupoids-6.0.0.1 (lib) (requires download & build)
#11 0.629  - universe-base-1.1.3.1 (lib) (requires download & build)
#11 0.629  - free-5.2 (lib) (requires download & build)
#11 0.629  - fin-0.3 (lib) (requires download & build)
#11 0.630  - adjunctions-4.4.2 (lib) (requires download & build)
#11 0.630  - vec-0.5 (lib) (requires download & build)
#11 0.630  - Feynman-0.1.0.0 (lib) (first run)
#11 0.630  - Feynman-0.1.0.0 (exe:qc2qasm) (first run)
#11 0.630  - Feynman-0.1.0.0 (exe:hs) (first run)
#11 0.630  - Feynman-0.1.0.0 (exe:feynver) (first run)
#11 0.630  - Feynman-0.1.0.0 (exe:feynopt) (first run)
#11 0.630  - Feynman-0.1.0.0 (exe:ar21) (first run)
#11 0.630  - Feynman-0.1.0.0 (exe:abr22) (first run)
#11 0.664 Downloading  base-orphans-0.9.0
#11 0.762 Downloaded   base-orphans-0.9.0
#11 0.762 Downloading  bv-0.5
#11 0.797 Starting     base-orphans-0.9.0 (lib)
#11 0.852 Downloaded   bv-0.5
#11 0.852 Downloading  colour-2.3.6
#11 0.854 Starting     bv-0.5 (all, legacy fallback)
#11 0.954 Downloaded   colour-2.3.6
#11 0.954 Downloading  fast-digits-0.3.1.0
#11 0.971 Starting     colour-2.3.6 (lib)
#11 1.075 Downloaded   fast-digits-0.3.1.0
#11 1.078 Downloading  semigroups-0.20
#11 1.186 Downloaded   semigroups-0.20
#11 1.186 Downloading  transformers-compat-0.7.2
#11 1.286 Downloaded   transformers-compat-0.7.2
#11 1.286 Downloading  void-0.7.3
#11 1.391 Downloaded   void-0.7.3
#11 1.391 Downloading  containers-0.6.7
#11 1.507 Downloaded   containers-0.6.7
#11 1.507 Downloading  binary-0.8.9.1
#11 1.510 Building     base-orphans-0.9.0 (lib)
#11 1.572 Building     bv-0.5 (all, legacy fallback)
#11 1.599 Starting     containers-0.6.7 (lib)
#11 1.668 Downloaded   binary-0.8.9.1
#11 1.668 Downloading  data-array-byte-0.1.0.1
#11 1.759 Building     colour-2.3.6 (lib)
#11 1.800 Downloaded   data-array-byte-0.1.0.1
#11 1.800 Downloading  th-abstraction-0.6.0.0
#11 1.842 Starting     data-array-byte-0.1.0.1 (lib)
#11 1.956 Downloaded   th-abstraction-0.6.0.0
#11 1.956 Downloading  some-1.0.5
#11 2.058 Downloaded   some-1.0.5
#11 2.058 Downloading  splitmix-0.1.0.4
#11 2.214 Downloaded   splitmix-0.1.0.4
#11 2.214 Downloading  random-1.2.1.1
#11 2.356 Downloaded   random-1.2.1.1
#11 2.356 Downloading  tagged-0.8.8
#11 2.472 Downloaded   tagged-0.8.8
#11 2.472 Downloading  assoc-1.1
#11 2.608 Building     containers-0.6.7 (lib)
#11 2.620 Downloaded   assoc-1.1
#11 2.620 Downloading  boring-0.2.1
#11 2.737 Downloaded   boring-0.2.1
#11 2.742 Downloading  dec-0.0.5
#11 2.862 Downloaded   dec-0.0.5
#11 2.862 Downloading  distributive-0.6.2.1
#11 2.954 Building     data-array-byte-0.1.0.1 (lib)
#11 3.071 Downloaded   distributive-0.6.2.1
#11 3.071 Downloading  foldable1-classes-compat-0.1
#11 3.184 Downloaded   foldable1-classes-compat-0.1
#11 3.184 Downloading  happy-1.20.1.1
#11 3.342 Downloaded   happy-1.20.1.1
#11 3.342 Downloading  indexed-traversable-0.1.2.1
#11 3.442 Downloaded   indexed-traversable-0.1.2.1
#11 3.442 Downloading  comonad-5.0.8
#11 3.546 Downloaded   comonad-5.0.8
#11 3.546 Downloading  bifunctors-5.6.1
#11 3.646 Downloaded   bifunctors-5.6.1
#11 3.646 Downloading  exceptions-0.10.7
#11 3.804 Downloaded   exceptions-0.10.7
#11 3.804 Downloading  transformers-base-0.4.6
#11 3.829 Starting     exceptions-0.10.7 (lib)
#11 3.931 Downloaded   transformers-base-0.4.6
#11 3.931 Downloading  text-2.0.2
#11 4.102 Downloaded   text-2.0.2
#11 4.102 Downloading  hashable-1.4.3.0
#11 4.202 Downloaded   hashable-1.4.3.0
#11 4.202 Downloading  unordered-containers-0.2.19.1
#11 4.307 Downloaded   unordered-containers-0.2.19.1
#11 4.308 Downloading  parsec-3.1.16.1
#11 4.424 Downloaded   parsec-3.1.16.1
#11 4.427 Downloading  parsec3-numbers-0.1.0
#11 4.526 Downloaded   parsec3-numbers-0.1.0
#11 4.526 Downloading  ansi-terminal-types-0.11.5
#11 4.686 Downloaded   ansi-terminal-types-0.11.5
#11 4.686 Downloading  ansi-terminal-1.0
#11 4.786 Building     exceptions-0.10.7 (lib)
#11 4.831 Installing   data-array-byte-0.1.0.1 (lib)
#11 4.857 Downloaded   ansi-terminal-1.0
#11 4.857 Downloading  alex-3.4.0.0
#11 4.994 Downloaded   alex-3.4.0.0
#11 4.994 Downloading  StateVar-1.2.2
#11 5.061 Starting     alex-3.4.0.0 (exe:alex)
#11 5.210 Downloaded   StateVar-1.2.2
#11 5.210 Downloading  contravariant-1.5.5
#11 5.254 Starting     StateVar-1.2.2 (lib)
#11 5.290 Completed    data-array-byte-0.1.0.1 (lib)
#11 5.299 Starting     fast-digits-0.3.1.0 (lib:fast-digits-internal)
#11 5.336 Downloaded   contravariant-1.5.5
#11 5.336 Downloading  profunctors-5.6.2
#11 5.495 Downloaded   profunctors-5.6.2
#11 5.496 Downloading  semigroupoids-6.0.0.1
#11 5.686 Downloaded   semigroupoids-6.0.0.1
#11 5.686 Downloading  free-5.2
#11 5.822 Downloaded   free-5.2
#11 5.822 Downloading  adjunctions-4.4.2
#11 6.046 Downloaded   adjunctions-4.4.2
#11 6.046 Downloading  QuickCheck-2.14.3
#11 6.202 Downloaded   QuickCheck-2.14.3
#11 6.202 Downloading  OneTuple-0.4.1.1
#11 6.294 Downloaded   OneTuple-0.4.1.1
#11 6.294 Downloading  universe-base-1.1.3.1
#11 6.389 Building     alex-3.4.0.0 (exe:alex)
#11 6.442 Downloaded   universe-base-1.1.3.1
#11 6.442 Downloading  fin-0.3
#11 6.592 Building     StateVar-1.2.2 (lib)
#11 6.612 Downloaded   fin-0.3
#11 6.612 Downloading  vec-0.5
#11 6.732 Building     fast-digits-0.3.1.0 (lib:fast-digits-internal)
#11 6.787 Downloaded   vec-0.5
#11 7.531 Installing   fast-digits-0.3.1.0 (lib:fast-digits-internal)
#11 7.956 Completed    fast-digits-0.3.1.0 (lib:fast-digits-internal)
#11 7.988 Starting     happy-1.20.1.1 (exe:happy)
#11 8.012 Installing   StateVar-1.2.2 (lib)
#11 8.314 Installing   bv-0.5 (all, legacy fallback)
#11 8.366 Completed    StateVar-1.2.2 (lib)
#11 8.371 Starting     semigroups-0.20 (lib)
#11 8.789 Completed    bv-0.5 (all, legacy fallback)
#11 8.790 Starting     some-1.0.5 (lib)
#11 9.131 Building     happy-1.20.1.1 (exe:happy)
#11 9.462 Installing   base-orphans-0.9.0 (lib)
#11 9.476 Building     semigroups-0.20 (lib)
#11 9.893 Completed    base-orphans-0.9.0 (lib)
#11 9.901 Starting     splitmix-0.1.0.4 (lib)
#11 9.946 Building     some-1.0.5 (lib)
#11 10.13 Installing   colour-2.3.6 (lib)
#11 10.45 Installing   semigroups-0.20 (lib)
#11 10.55 Completed    colour-2.3.6 (lib)
#11 10.56 Starting     tagged-0.8.8 (lib)
#11 10.88 Completed    semigroups-0.20 (lib)
#11 10.89 Starting     transformers-compat-0.7.2 (lib)
#11 10.94 Installing   exceptions-0.10.7 (lib)
#11 11.06 Building     splitmix-0.1.0.4 (lib)
#11 11.51 Completed    exceptions-0.10.7 (lib)
#11 11.51 Starting     void-0.7.3 (lib)
#11 11.88 Building     tagged-0.8.8 (lib)
#11 12.01 Building     transformers-compat-0.7.2 (lib)
#11 12.56 Building     void-0.7.3 (lib)
#11 13.20 Installing   void-0.7.3 (lib)
#11 13.59 Completed    void-0.7.3 (lib)
#11 13.59 Starting     fast-digits-0.3.1.0 (lib)
#11 13.75 Installing   splitmix-0.1.0.4 (lib)
#11 13.78 Installing   some-1.0.5 (lib)
#11 14.19 Completed    some-1.0.5 (lib)
#11 14.20 Starting     contravariant-1.5.5 (lib)
#11 14.37 Completed    splitmix-0.1.0.4 (lib)
#11 14.38 Starting     ansi-terminal-types-0.11.5 (lib)
#11 14.68 Building     fast-digits-0.3.1.0 (lib)
#11 15.26 Installing   tagged-0.8.8 (lib)
#11 15.40 Building     contravariant-1.5.5 (lib)
#11 15.46 Building     ansi-terminal-types-0.11.5 (lib)
#11 15.70 Completed    tagged-0.8.8 (lib)
#11 15.71 Starting     random-1.2.1.1 (lib)
#11 16.20 Installing   fast-digits-0.3.1.0 (lib)
#11 16.74 Completed    fast-digits-0.3.1.0 (lib)
#11 16.74 Starting     distributive-0.6.2.1 (lib)
#11 17.12 Building     random-1.2.1.1 (lib)
#11 17.80 Installing   transformers-compat-0.7.2 (lib)
#11 17.82 Building     distributive-0.6.2.1 (lib)
#11 18.19 Completed    transformers-compat-0.7.2 (lib)
#11 18.20 Starting     boring-0.2.1 (lib)
#11 18.25 Installing   contravariant-1.5.5 (lib)
#11 18.87 Completed    contravariant-1.5.5 (lib)
#11 18.87 Starting     assoc-1.1 (lib)
#11 19.60 Building     boring-0.2.1 (lib)
#11 19.88 Installing   distributive-0.6.2.1 (lib)
#11 20.13 Building     assoc-1.1 (lib)
#11 20.40 Completed    distributive-0.6.2.1 (lib)
#11 20.41 Starting     transformers-base-0.4.6 (lib)
#11 20.94 Installing   boring-0.2.1 (lib)
#11 21.48 Completed    boring-0.2.1 (lib)
#11 21.49 Starting     dec-0.0.5 (lib)
#11 21.51 Installing   ansi-terminal-types-0.11.5 (lib)
#11 21.52 Installing   assoc-1.1 (lib)
#11 21.86 Completed    assoc-1.1 (lib)
#11 21.88 Building     transformers-base-0.4.6 (lib)
#11 22.06 Completed    ansi-terminal-types-0.11.5 (lib)
#11 22.06 Starting     ansi-terminal-1.0 (lib)
#11 22.73 Building     dec-0.0.5 (lib)
#11 23.30 Building     ansi-terminal-1.0 (lib)
#11 23.57 Installing   transformers-base-0.4.6 (lib)
#11 23.70 Installing   dec-0.0.5 (lib)
#11 23.83 Installing   alex-3.4.0.0 (exe:alex)
#11 23.93 Completed    alex-3.4.0.0 (exe:alex)
#11 23.96 Completed    transformers-base-0.4.6 (lib)
#11 24.18 Completed    dec-0.0.5 (lib)
#11 25.55 Installing   ansi-terminal-1.0 (lib)
#11 25.88 Completed    ansi-terminal-1.0 (lib)
#11 31.14 Installing   happy-1.20.1.1 (exe:happy)
#11 31.18 Completed    happy-1.20.1.1 (exe:happy)
#11 34.95 Installing   random-1.2.1.1 (lib)
#11 35.25 Completed    random-1.2.1.1 (lib)
#11 62.04 Installing   containers-0.6.7 (lib)
#11 62.36 Completed    containers-0.6.7 (lib)
#11 62.38 Starting     indexed-traversable-0.1.2.1 (lib)
#11 62.38 Starting     th-abstraction-0.6.0.0 (lib)
#11 62.38 Starting     foldable1-classes-compat-0.1 (lib)
#11 62.40 Starting     binary-0.8.9.1 (lib)
#11 62.41 Starting     QuickCheck-2.14.3 (lib)
#11 63.08 Building     indexed-traversable-0.1.2.1 (lib)
#11 63.10 Building     binary-0.8.9.1 (lib)
#11 63.11 Building     th-abstraction-0.6.0.0 (lib)
#11 63.12 Building     foldable1-classes-compat-0.1 (lib)
#11 63.13 Building     QuickCheck-2.14.3 (lib)
#11 65.72 Installing   foldable1-classes-compat-0.1 (lib)
#11 66.09 Completed    foldable1-classes-compat-0.1 (lib)
#11 67.37 Installing   indexed-traversable-0.1.2.1 (lib)
#11 67.66 Completed    indexed-traversable-0.1.2.1 (lib)
#11 67.67 Starting     comonad-5.0.8 (lib)
#11 68.29 Building     comonad-5.0.8 (lib)
#11 70.03 Installing   th-abstraction-0.6.0.0 (lib)
#11 70.34 Completed    th-abstraction-0.6.0.0 (lib)
#11 71.32 Installing   comonad-5.0.8 (lib)
#11 71.57 Completed    comonad-5.0.8 (lib)
#11 71.58 Starting     bifunctors-5.6.1 (lib)
#11 72.35 Building     bifunctors-5.6.1 (lib)
#11 77.69 Installing   binary-0.8.9.1 (lib)
#11 77.97 Completed    binary-0.8.9.1 (lib)
#11 78.00 Starting     text-2.0.2 (lib)
#11 78.64 Building     text-2.0.2 (lib)
#11 81.86 Installing   QuickCheck-2.14.3 (lib)
#11 82.16 Completed    QuickCheck-2.14.3 (lib)
#11 83.72 Installing   bifunctors-5.6.1 (lib)
#11 84.03 Completed    bifunctors-5.6.1 (lib)
#11 84.04 Starting     profunctors-5.6.2 (lib)
#11 84.62 Building     profunctors-5.6.2 (lib)
#11 91.53 Installing   profunctors-5.6.2 (lib)
#11 91.80 Completed    profunctors-5.6.2 (lib)
#11 138.3 Installing   text-2.0.2 (lib)
#11 138.6 Completed    text-2.0.2 (lib)
#11 138.6 Starting     hashable-1.4.3.0 (lib)
#11 138.6 Starting     parsec-3.1.16.1 (lib)
#11 139.2 Building     hashable-1.4.3.0 (lib)
#11 139.2 Building     parsec-3.1.16.1 (lib)
#11 142.3 Installing   hashable-1.4.3.0 (lib)
#11 142.5 Completed    hashable-1.4.3.0 (lib)
#11 142.5 Starting     OneTuple-0.4.1.1 (lib)
#11 142.5 Starting     unordered-containers-0.2.19.1 (lib)
#11 143.1 Building     OneTuple-0.4.1.1 (lib)
#11 143.1 Building     unordered-containers-0.2.19.1 (lib)
#11 144.6 Installing   OneTuple-0.4.1.1 (lib)
#11 144.8 Completed    OneTuple-0.4.1.1 (lib)
#11 144.8 Starting     universe-base-1.1.3.1 (lib)
#11 145.5 Building     universe-base-1.1.3.1 (lib)
#11 147.3 Installing   universe-base-1.1.3.1 (lib)
#11 147.5 Completed    universe-base-1.1.3.1 (lib)
#11 147.6 Starting     fin-0.3 (lib)
#11 148.1 Building     fin-0.3 (lib)
#11 150.6 Installing   fin-0.3 (lib)
#11 150.9 Completed    fin-0.3 (lib)
#11 152.2 Installing   parsec-3.1.16.1 (lib)
#11 152.5 Completed    parsec-3.1.16.1 (lib)
#11 152.5 Starting     parsec3-numbers-0.1.0 (all, legacy fallback)
#11 153.1 Building     parsec3-numbers-0.1.0 (all, legacy fallback)
#11 154.9 Installing   parsec3-numbers-0.1.0 (all, legacy fallback)
#11 155.1 Completed    parsec3-numbers-0.1.0 (all, legacy fallback)
#11 159.4 Installing   unordered-containers-0.2.19.1 (lib)
#11 159.7 Completed    unordered-containers-0.2.19.1 (lib)
#11 159.7 Starting     semigroupoids-6.0.0.1 (lib)
#11 160.4 Building     semigroupoids-6.0.0.1 (lib)
#11 168.3 Installing   semigroupoids-6.0.0.1 (lib)
#11 168.7 Completed    semigroupoids-6.0.0.1 (lib)
#11 168.7 Starting     free-5.2 (lib)
#11 169.3 Building     free-5.2 (lib)
#11 183.5 Installing   free-5.2 (lib)
#11 183.8 Completed    free-5.2 (lib)
#11 183.9 Starting     adjunctions-4.4.2 (lib)
#11 184.5 Building     adjunctions-4.4.2 (lib)
#11 188.0 Installing   adjunctions-4.4.2 (lib)
#11 188.3 Completed    adjunctions-4.4.2 (lib)
#11 188.3 Starting     vec-0.5 (lib)
#11 188.8 Building     vec-0.5 (lib)
#11 192.8 Installing   vec-0.5 (lib)
#11 193.1 Completed    vec-0.5 (lib)
#11 193.1 Configuring library for Feynman-0.1.0.0..
#11 193.8 Preprocessing library for Feynman-0.1.0.0..
#11 193.9 Building library for Feynman-0.1.0.0..
#11 194.1 [ 1 of 26] Compiling Feynman.Algebra.Matroid ( src/Feynman/Algebra/Matroid.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Algebra/Matroid.o )
#11 194.3 [ 2 of 26] Compiling Feynman.Algebra.Linear ( src/Feynman/Algebra/Linear.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Algebra/Linear.o )
#11 199.1 [ 3 of 26] Compiling Feynman.Algebra.Polynomial ( src/Feynman/Algebra/Polynomial.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Algebra/Polynomial.o )
#11 199.2 [ 4 of 26] Compiling Feynman.Frontend.OpenQASM.Lexer ( /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Frontend/OpenQASM/Lexer.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Frontend/OpenQASM/Lexer.o )
#11 199.7 [ 5 of 26] Compiling Feynman.Util.Unicode ( src/Feynman/Util/Unicode.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Util/Unicode.o )
#11 199.8 [ 6 of 26] Compiling Feynman.Algebra.Base ( src/Feynman/Algebra/Base.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Algebra/Base.o )
#11 200.3 [ 7 of 26] Compiling Feynman.Core     ( src/Feynman/Core.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Core.o )
#11 201.1 [ 8 of 26] Compiling Feynman.Synthesis.Phase ( src/Feynman/Synthesis/Phase.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Synthesis/Phase.o )
#11 201.2 [ 9 of 26] Compiling Feynman.Synthesis.Reversible ( src/Feynman/Synthesis/Reversible.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Synthesis/Reversible.o )
#11 201.7 [10 of 26] Compiling Feynman.Synthesis.Reversible.Parallel ( src/Feynman/Synthesis/Reversible/Parallel.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Synthesis/Reversible/Parallel.o )
#11 202.2 [11 of 26] Compiling Feynman.Synthesis.Reversible.Gray ( src/Feynman/Synthesis/Reversible/Gray.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Synthesis/Reversible/Gray.o )
#11 203.2 [12 of 26] Compiling Feynman.Optimization.Swaps ( src/Feynman/Optimization/Swaps.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Optimization/Swaps.o )
#11 203.3 [13 of 26] Compiling Feynman.Optimization.TPar ( src/Feynman/Optimization/TPar.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Optimization/TPar.o )
#11 205.2 [14 of 26] Compiling Feynman.Optimization.PhaseFold ( src/Feynman/Optimization/PhaseFold.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Optimization/PhaseFold.o )
#11 206.9 [15 of 26] Compiling Feynman.Algebra.Polynomial.Univariate ( src/Feynman/Algebra/Polynomial/Univariate.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Algebra/Polynomial/Univariate.o )
#11 207.5 [16 of 26] Compiling Feynman.Algebra.Polynomial.Multilinear ( src/Feynman/Algebra/Polynomial/Multilinear.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Algebra/Polynomial/Multilinear.o )
#11 208.7 [17 of 26] Compiling Feynman.Algebra.Polynomial.Multilinear.Groebner ( src/Feynman/Algebra/Polynomial/Multilinear/Groebner.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Algebra/Polynomial/Multilinear/Groebner.o )
#11 209.4 [18 of 26] Compiling Feynman.Algebra.Pathsum.Balanced ( src/Feynman/Algebra/Pathsum/Balanced.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Algebra/Pathsum/Balanced.o )
#11 215.0 [19 of 26] Compiling Feynman.Optimization.StateFold ( src/Feynman/Optimization/StateFold.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Optimization/StateFold.o )
#11 216.5 [20 of 26] Compiling Feynman.Verification.Symbolic ( src/Feynman/Verification/Symbolic.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Verification/Symbolic.o )
#11 217.9 [21 of 26] Compiling Feynman.Synthesis.Pathsum.Clifford ( src/Feynman/Synthesis/Pathsum/Clifford.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Synthesis/Pathsum/Clifford.o )
#11 219.2 [22 of 26] Compiling Feynman.Synthesis.Pathsum.Unitary ( src/Feynman/Synthesis/Pathsum/Unitary.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Synthesis/Pathsum/Unitary.o )
#11 222.8 [23 of 26] Compiling Feynman.Frontend.DotQC ( src/Feynman/Frontend/DotQC.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Frontend/DotQC.o )
#11 225.3 [24 of 26] Compiling Feynman.Frontend.OpenQASM.Syntax ( src/Feynman/Frontend/OpenQASM/Syntax.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Frontend/OpenQASM/Syntax.o )
#11 227.9 [25 of 26] Compiling Feynman.Frontend.OpenQASM.Parser ( /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Frontend/OpenQASM/Parser.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Frontend/OpenQASM/Parser.o )
#11 228.9 [26 of 26] Compiling Feynman.Optimization.Clifford ( src/Feynman/Optimization/Clifford.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/build/Feynman/Optimization/Clifford.o )
#11 229.5 Configuring executable 'qc2qasm' for Feynman-0.1.0.0..
#11 229.5 Configuring executable 'hs' for Feynman-0.1.0.0..
#11 229.5 Configuring executable 'feynver' for Feynman-0.1.0.0..
#11 229.5 Configuring executable 'ar21' for Feynman-0.1.0.0..
#11 229.5 Configuring executable 'feynopt' for Feynman-0.1.0.0..
#11 229.5 Configuring executable 'abr22' for Feynman-0.1.0.0..
#11 230.5 Preprocessing executable 'abr22' for Feynman-0.1.0.0..
#11 230.5 Building executable 'abr22' for Feynman-0.1.0.0..
#11 230.5 Preprocessing executable 'feynopt' for Feynman-0.1.0.0..
#11 230.5 Building executable 'feynopt' for Feynman-0.1.0.0..
#11 230.5 Preprocessing executable 'qc2qasm' for Feynman-0.1.0.0..
#11 230.5 Building executable 'qc2qasm' for Feynman-0.1.0.0..
#11 230.5 Preprocessing executable 'feynver' for Feynman-0.1.0.0..
#11 230.5 Building executable 'feynver' for Feynman-0.1.0.0..
#11 230.6 Preprocessing executable 'hs' for Feynman-0.1.0.0..
#11 230.6 Building executable 'hs' for Feynman-0.1.0.0..
#11 230.6 [1 of 1] Compiling Main             ( scripts/abr22.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/abr22/build/abr22/abr22-tmp/Main.o )
#11 230.6 [1 of 1] Compiling Main             ( tools/QC2Qasm.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/qc2qasm/build/qc2qasm/qc2qasm-tmp/Main.o )
#11 230.7 Preprocessing executable 'ar21' for Feynman-0.1.0.0..
#11 230.7 Building executable 'ar21' for Feynman-0.1.0.0..
#11 230.7 [1 of 1] Compiling Main             ( tools/FeynVerify.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/feynver/build/feynver/feynver-tmp/Main.o )
#11 230.7 [1 of 2] Compiling Benchmarks       ( tools/Benchmarks.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/feynopt/build/feynopt/feynopt-tmp/Benchmarks.o )
#11 230.7 [1 of 1] Compiling Main             ( scripts/hs.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/hs/build/hs/hs-tmp/Main.o )
#11 230.8 [1 of 1] Compiling Main             ( scripts/ar21.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/ar21/build/ar21/ar21-tmp/Main.o )
#11 231.1 
#11 231.1 scripts/ar21.hs:42:31: error:
#11 231.1     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.1                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.1                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.1                              (Map.Map [Char] Integer)
#11 231.1                              Data.Functor.Identity.Identity
#11 231.1                              (Pathsum g)'
#11 231.1       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.1             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.1           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.1             is defined in `Control.Monad.Trans.State.Strict'
#11 231.1       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.1                        (Map.Map [Char] Integer) (Pathsum g)
#11 231.1         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.1                        Context (Pathsum DMod2)
#11 231.1     * In the first argument of `evalState', namely
#11 231.1         `(computeAction circ)'
#11 231.1       In the second argument of `($)', namely
#11 231.1         `evalState (computeAction circ) ctx'
#11 231.1       In the expression: grind $ evalState (computeAction circ) ctx
#11 231.1     * Relevant bindings include
#11 231.1         action :: Pathsum g (bound at scripts/ar21.hs:42:3)
#11 231.1    |
#11 231.1 42 |   action = grind $ evalState (computeAction circ) ctx
#11 231.1    |                               ^^^^^^^^^^^^^^^^^^
#11 231.1 
#11 231.1 scripts/ar21.hs:155:23: error:
#11 231.1     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer) Data.Functor.Identity.Identity a'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) a
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ circ)'
#11 231.2       In the expression: evalState (computeAction $ circ) istate
#11 231.2       In an equation for `sop':
#11 231.2           sop = evalState (computeAction $ circ) istate
#11 231.2     * Relevant bindings include
#11 231.2         sop :: a (bound at scripts/ar21.hs:155:3)
#11 231.2     |
#11 231.2 155 |   sop    = evalState (computeAction $ circ) istate
#11 231.2     |                       ^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:162:23: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer) Data.Functor.Identity.Identity a'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) a
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ circ)'
#11 231.2       In the expression: evalState (computeAction $ circ) istate
#11 231.2       In an equation for `sop':
#11 231.2           sop = evalState (computeAction $ circ) istate
#11 231.2     * Relevant bindings include
#11 231.2         sop :: a (bound at scripts/ar21.hs:162:3)
#11 231.2     |
#11 231.2 162 |   sop    = evalState (computeAction $ circ) istate
#11 231.2     |                       ^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:169:23: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer) Data.Functor.Identity.Identity a'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) a
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ circ)'
#11 231.2       In the expression: evalState (computeAction $ circ) istate
#11 231.2       In an equation for `sop':
#11 231.2           sop = evalState (computeAction $ circ) istate
#11 231.2     * Relevant bindings include
#11 231.2         sop :: a (bound at scripts/ar21.hs:169:3)
#11 231.2     |
#11 231.2 169 |   sop    = evalState (computeAction $ circ) istate
#11 231.2     |                       ^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:176:23: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer) Data.Functor.Identity.Identity a'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) a
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ circ)'
#11 231.2       In the expression: evalState (computeAction $ circ) istate
#11 231.2       In an equation for `sop':
#11 231.2           sop = evalState (computeAction $ circ) istate
#11 231.2     * Relevant bindings include
#11 231.2         sop :: a (bound at scripts/ar21.hs:176:3)
#11 231.2     |
#11 231.2 176 |   sop    = evalState (computeAction $ circ) istate
#11 231.2     |                       ^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:183:23: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer) Data.Functor.Identity.Identity a'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) a
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ circ)'
#11 231.2       In the expression: evalState (computeAction $ circ) istate
#11 231.2       In an equation for `sop':
#11 231.2           sop = evalState (computeAction $ circ) istate
#11 231.2     * Relevant bindings include
#11 231.2         sop :: a (bound at scripts/ar21.hs:183:3)
#11 231.2     |
#11 231.2 183 |   sop    = evalState (computeAction $ circ) istate
#11 231.2     |                       ^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:190:23: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer) Data.Functor.Identity.Identity a'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) a
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ circ)'
#11 231.2       In the expression: evalState (computeAction $ circ) istate
#11 231.2       In an equation for `sop':
#11 231.2           sop = evalState (computeAction $ circ) istate
#11 231.2     * Relevant bindings include
#11 231.2         sop :: a (bound at scripts/ar21.hs:190:3)
#11 231.2     |
#11 231.2 190 |   sop    = evalState (computeAction $ circ) istate
#11 231.2     |                       ^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:198:43: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum g)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum g)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ circ)'
#11 231.2       In the second argument of `($)', namely
#11 231.2         `evalState (computeAction $ circ) istate'
#11 231.2       In the expression:
#11 231.2         dropPhase . grind $ evalState (computeAction $ circ) istate
#11 231.2     * Relevant bindings include
#11 231.2         sop :: Pathsum g (bound at scripts/ar21.hs:198:3)
#11 231.2     |
#11 231.2 198 |   sop    = dropPhase . grind $ evalState (computeAction $ circ) istate
#11 231.2     |                                           ^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:207:19: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum DMod2)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum DMod2)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ cccXStar "a" "b" "c" "d")'
#11 231.2       In the first argument of `(.>)', namely
#11 231.2         `evalState (computeAction $ cccXStar "a" "b" "c" "d") ctx'
#11 231.2       In the second argument of `(.>)', namely
#11 231.2         `evalState (computeAction $ cccXStar "a" "b" "c" "d") ctx
#11 231.2            .> sdggate <> identity 3'
#11 231.2     |
#11 231.2 207 |        evalState (computeAction $ cccXStar "a" "b" "c" "d") ctx .>
#11 231.2     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:230:21: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum DMod2)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum DMod2)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ controllediX ctrls tgt)'
#11 231.2       In the first argument of `(.>)', namely
#11 231.2         `evalState (computeAction $ controllediX ctrls tgt) ctx'
#11 231.2       In the second argument of `(.>)', namely
#11 231.2         `evalState (computeAction $ controllediX ctrls tgt) ctx
#11 231.2            .> sdggate <> identity k'
#11 231.2     |
#11 231.2 230 |          evalState (computeAction $ controllediX ctrls tgt) ctx .>
#11 231.2     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:240:56: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum DMod2)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum DMod2)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction corr)'
#11 231.2       In the second argument of `($)', namely
#11 231.2         `evalState (computeAction corr) ctx'
#11 231.2       In the second argument of `($)', namely
#11 231.2         `grind $ evalState (computeAction corr) ctx'
#11 231.2     |
#11 231.2 240 |            channelize (controlled $ grind $ evalState (computeAction corr) ctx) .>
#11 231.2     |                                                        ^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:259:28: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum DMod2)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum DMod2)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ controlledXStar ctrls tgt)'
#11 231.2       In the first argument of `grind', namely
#11 231.2         `(evalState (computeAction $ controlledXStar ctrls tgt) ctx)'
#11 231.2       In the first argument of `(.>)', namely
#11 231.2         `grind (evalState (computeAction $ controlledXStar ctrls tgt) ctx)'
#11 231.2     |
#11 231.2 259 |          grind (evalState (computeAction $ controlledXStar ctrls tgt) ctx) .>
#11 231.2     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:268:45: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum DMod2)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum DMod2)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ ccX x y anc)'
#11 231.2       In the second argument of `($)', namely
#11 231.2         `evalState (computeAction $ ccX x y anc) ctx'
#11 231.2       In the first argument of `(.>)', namely
#11 231.2         `(controlled . grind
#11 231.2             $ evalState (computeAction $ ccX x y anc) ctx)'
#11 231.2     |
#11 231.2 268 |            (controlled . grind $ evalState (computeAction $ ccX x y anc) ctx) .>
#11 231.2     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:269:46: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum DMod2)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum DMod2)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ corr)'
#11 231.2       In the second argument of `(<>)', namely
#11 231.2         `evalState (computeAction $ corr) ctx'
#11 231.2       In the second argument of `($)', namely
#11 231.2         `identity 1 <> evalState (computeAction $ corr) ctx'
#11 231.2     |
#11 231.2 269 |            (grind $ identity 1 <> evalState (computeAction $ corr) ctx) .>
#11 231.2     |                                              ^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:270:45: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum DMod2)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum DMod2)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction . dagger $ ccX x y anc)'
#11 231.2       In the second argument of `($)', namely
#11 231.2         `evalState (computeAction . dagger $ ccX x y anc) ctx'
#11 231.2       In the second argument of `(.>)', namely
#11 231.2         `(controlled . grind
#11 231.2             $ evalState (computeAction . dagger $ ccX x y anc) ctx)'
#11 231.2     |
#11 231.2 270 |            (controlled . grind $ evalState (computeAction . dagger $ ccX x y anc) ctx)
#11 231.2     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:282:56: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum DMod2)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum DMod2)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ cciX x y anc)'
#11 231.2       In the second argument of `($)', namely
#11 231.2         `evalState (computeAction $ cciX x y anc) ctx'
#11 231.2       In the first argument of `channelize', namely
#11 231.2         `(controlled . grind
#11 231.2             $ evalState (computeAction $ cciX x y anc) ctx)'
#11 231.2     |
#11 231.2 282 |            channelize (controlled . grind $ evalState (computeAction $ cciX x y anc) ctx) .>
#11 231.2     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:283:57: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum DMod2)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum DMod2)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction $ corr)'
#11 231.2       In the second argument of `(<>)', namely
#11 231.2         `evalState (computeAction $ corr) ctx'
#11 231.2       In the second argument of `($)', namely
#11 231.2         `identity 1 <> evalState (computeAction $ corr) ctx'
#11 231.2     |
#11 231.2 283 |            channelize (grind $ identity 1 <> evalState (computeAction $ corr) ctx) .>
#11 231.2     |                                                         ^^^^^^^^^^^^^^^^^^^^
#11 231.2 
#11 231.2 scripts/ar21.hs:284:56: error:
#11 231.2     * Couldn't match type `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT
#11 231.2                              Context Data.Functor.Identity.Identity (Pathsum DMod2)'
#11 231.2                      with `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT
#11 231.2                              (Map.Map [Char] Integer)
#11 231.2                              Data.Functor.Identity.Identity
#11 231.2                              (Pathsum DMod2)'
#11 231.2       NB: `transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Lazy'
#11 231.2           `transformers-0.5.6.2:Control.Monad.Trans.State.Strict.StateT'
#11 231.2             is defined in `Control.Monad.Trans.State.Strict'
#11 231.2       Expected type: transformers-0.5.6.2:Control.Monad.Trans.State.Lazy.State
#11 231.2                        (Map.Map [Char] Integer) (Pathsum DMod2)
#11 231.2         Actual type: transformers-0.5.6.2:Control.Monad.Trans.State.Strict.State
#11 231.2                        Context (Pathsum DMod2)
#11 231.2     * In the first argument of `evalState', namely
#11 231.2         `(computeAction . dagger $ cciX x y anc)'
#11 231.2       In the second argument of `($)', namely
#11 231.2         `evalState (computeAction . dagger $ cciX x y anc) ctx'
#11 231.2       In the first argument of `channelize', namely
#11 231.2         `(controlled . grind
#11 231.2             $ evalState (computeAction . dagger $ cciX x y anc) ctx)'
#11 231.2     |
#11 231.2 284 |            channelize (controlled . grind $ evalState (computeAction . dagger $ cciX x y anc) ctx) .>
#11 231.2     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#11 231.3 Linking /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/qc2qasm/build/qc2qasm/qc2qasm ...
#11 231.6 Linking /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/abr22/build/abr22/abr22 ...
#11 231.7 Linking /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/feynver/build/feynver/feynver ...
#11 232.3 Linking /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/hs/build/hs/hs ...
#11 233.8 [2 of 2] Compiling Main             ( tools/FeynOpt.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/feynopt/build/feynopt/feynopt-tmp/Main.o )
#11 234.5 Linking /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/feynopt/build/feynopt/feynopt ...
#11 235.0 cabal: Failed to build exe:ar21 from Feynman-0.1.0.0.
#11 235.0 
#11 ERROR: process "/bin/sh -c cabal build" did not complete successfully: exit code: 1
------
 > [8/9] RUN cabal build:
231.2 284 |            channelize (controlled . grind $ evalState (computeAction . dagger $ cciX x y anc) ctx) .>
231.2     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
231.3 Linking /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/qc2qasm/build/qc2qasm/qc2qasm ...
231.6 Linking /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/abr22/build/abr22/abr22 ...
231.7 Linking /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/feynver/build/feynver/feynver ...
232.3 Linking /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/hs/build/hs/hs ...
233.8 [2 of 2] Compiling Main             ( tools/FeynOpt.hs, /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/feynopt/build/feynopt/feynopt-tmp/Main.o )
234.5 Linking /app/dist-newstyle/build/x86_64-linux/ghc-8.8.4/Feynman-0.1.0.0/x/feynopt/build/feynopt/feynopt ...
235.0 cabal: Failed to build exe:ar21 from Feynman-0.1.0.0.
235.0 
------
Dockerfile:28
--------------------
  26 |     RUN cabal update
  27 |     RUN cabal configure
  28 | >>> RUN cabal build
  29 |     RUN cabal install
  30 |     
--------------------

Thanks!

missing file

Hi Matt

On the current master, I get:

❯ cabal install
cabal: abr22.hs doesn't exist

Of course, commenting out

feynman/Feynman.cabal

Lines 141 to 151 in 12ab309

executable abr22
main-is: abr22.hs
buildable: True
ghc-options: -O2
hs-source-dirs: scripts
build-depends: Feynman,
base,
mtl,
containers >= 0.5.8.1,
QuickCheck >= 2.8.2
default-language: Haskell2010
works just fine.

Internal measurements

Does Feynver support internal measurements?

I can use Feynopt with internal measurements, such as

OPENQASM 2.0;
include "qelib1.inc";
qreg q[1];
creg c[1];

measure q[0] -> c[0];
h q[0];

But I was unable to figure out how to specify measurements in .qc files expected by Feynver.

Support for 9.x GHC compiler

The library does not build with GHC 9.x. I tried to build with GHC 9.8.2, and the compiler throws multiple errors, generally saying things similar to: it is unable to find the function foldM on line 143 of Synthesis/Reversible.hs (with similar errors in the file Reversible).

This is fixed by importing Control.Monad in the files.

It seems to be working with the earlier versions of GHC because it is imported in Feynman.Core, which in turn is imported in Symbolic and Reversible, and GHC might have changed its nested visibility rules between these versions.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.