7.8

6 Reference

Modules and Prefixes

When you run raco pkg install plisqin, you get the following modules. Please note the conventional prefixes, which are used throughout this documentation. Also note that when you (require plisqin), you get all the modules listed below (prefixed) except for plisqin-examples/adventure-works.

plisqin-lib

Prefix: none

Example: from

Contains essential functionality.

plisqin-lib/types

Prefix: none

Example: String?

Contains data types, which are normal Racket values. You can use them as predicates and contracts.

plisqin-lib/dialect

Prefix: none

Example: mssql

Allows you to control which dialect of SQL gets generated.

plisqin-lib/strict

Prefix: none

Example: where

Contains the strict variant of Plisqin.

plisqin-lib/strict/operators

Prefix: |.|

Example: .<=

Contains the strict operators (comparison and arithmetic). Note that these identifiers would conflict with frequently-used Racket identifiers, so they are prefixed with a period by convention. For example or vs .or and + vs .+

plisqin-lib/unsafe

Prefix: %%

Example: %%where

Contains the unsafe variant of Plisqin.

plisqin-lib/unsafe/operators

Prefix: %%

Example: %%<=

Contains the unsafe operators (comparison and arithmetic).

plisqin-examples/adventure-works

Prefix: aw:

Example: aw:show-table

Allows you to access the AdventureWorks sample SQLite database. AdventureWorks is an imaginary company that sells bicycles and related products.

    6.1 plisqin-lib

      6.1.1 Nullability

      6.1.2 Token Types

      6.1.3 Dialects

    6.2 plisqin-lib/unsafe

      6.2.1 Clauses

      6.2.2 Aggregates

      6.2.3 Misc

      6.2.4 Date Math

      6.2.5 Operators

    6.3 plisqin-lib/loose

    6.4 plisqin-lib/strict

      6.4.1 Clauses

      6.4.2 Aggregates

      6.4.3 Misc

      6.4.4 Date Math

      6.4.5 Operators

    6.5 plisqin-examples/adventure-works