Packages and Projects
Quick Start¶
To install a package, you must sure that you have created the Package.juvix
file. You can run juvix init
to get a template Package.juvix
file. A more
detailed description on the usage of Package.juvix
can be found in How to
setup a Juvix project. For now, one example is
provided below. Put the following in your Package.juvix
file within
the directory of your project.
Package.juvix
module Package;
import PackageDescription.V2 open;
package : Package := defaultPackage
{ dependencies := [
github "anoma" "juvix-stdlib" "f68b0614ad695eaa13ead42f3466e0a78219f826"
]
}
;
-
Immutable container types for Juvix.
-
BinaryTree, Map, Queue, Set, Tree, UnbalancedSet, and much more to come.
-
Tests using anoma/juvix-test.
Add the following to your
Package.juvix
file in thedependencies
field:github "anoma" "juvix-containers" "v0.12.1"
-
-
This package provides property-based testing for the Juvix programming language inspired by the popular Haskell library, QuickCheck.
- Automated testing: Generate random test cases to validate properties of Juvix code.
Add the following to your
Package.juvix
file in thedependencies
field:github "anoma" "juvix-quickcheck" "v0.12.0" --8-- [end:juvix-quickcheck] ; github "anoma" "juvix-stdlib" "v0.4.0" ]};
-
Shipped with Juvix, the standard library provides a set of useful functions and types for writing Juvix programs.
Add the following to your
Package.juvix
file in thedependencies
field:github "anoma" "juvix-stdlib" "v0.4.0"
-
A unit testing framework for Juvix programs.
Add the following to your
Package.juvix
file in thedependencies
field:github "anoma" "juvix-test" "v0.11.0"
Projects using Juvix¶
-
anoma/abstract-resource-machine-simulator
-
A project for demonstrating the process of generating arithmetic circuits from high-level specifications. This CodeSpace includes all the necessary compilers for circuit generation, such as Juvix, GEB, and VampIR. Furthermore, it features the Juvix VSCode extension to simplify writing Juvix programs and allows users to interact with and evaluate the resulting GEB/VampIR programs.
Please let us know if you are using Juvix in your project. Opening an issue or a pull request to add it to this list.
Check out other examples of Juvix programs in the examples/milestone.