Below is a list of 'core' modules that comes included with the Carp compiler. Modules marked with the symbol '⦁' are imported by default, other modules must be imported by loading their file. For example, to get access to the Bench module, do the following:
(load "Bench.carp")
Using the functions in the Bench module still requires pre-pending them with the module name, i.e. (Bench.bench fib)
. To avoid that, also do (use Bench)
.
To see what functions a certain module contains, use the info
command:
(info Bench)
External librares can be loaded by using their relative or absolute location in your file system as the path. To make a library publically available in a more general way you can add it to your Carp project's search path:s (found by running :p
in the repl). For instance, here's how you would add the NCurses library so that it can be loaded with just (load "NCurses.carp")
.
(Project.config "search-path" "~/Projects/carp-ncurses")
This line of configuration can be put into a ~/.carp/profile.carp
file to make it apply in all your projects.
- Macros ⦁
- Interfaces ⦁
- Dynamic ⦁ (only available in the repl and at compile time)