Skip to content

Latest commit

 

History

History
77 lines (60 loc) · 3.33 KB

Libraries.md

File metadata and controls

77 lines (60 loc) · 3.33 KB

Working with libraries and modules

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.

Core Modules

Basics

Numerics

Text

Collections

System

Development

Graphics, sound and interaction

External Libraries