bsl/semantics.rkt
#lang racket/base

#|

File: semantics.rkt
Author: Bill Turtle (wrturtle)

Provides the semantics of the Pyret/BSL language

|#

;; -----------------------------------------------------------------------------
;; Hash-percents

(require "../semantics/hash-percents.rkt")
(provide (all-from-out "../semantics/hash-percents.rkt"))

;; -----------------------------------------------------------------------------
;; Pre-defined variables

(require "../semantics/pre-defined.rkt")
(provide (all-from-out "../semantics/pre-defined.rkt"))

;; -----------------------------------------------------------------------------
;; Template Variables
(require "../semantics/templates.rkt")
(provide (all-from-out "../semantics/templates.rkt"))


;; -----------------------------------------------------------------------------

;; Syntax

; `define'
(require "../semantics/define.rkt")
(provide (rename-out [beginner-fun fun] [beginner-def def]))

; `define-struct'
(require "../semantics/structures.rkt")
(provide (rename-out [beginner-define-struct define-struct]
                     [pyret-struct? struct?]))

; `lookup'
(require "../semantics/lookup.rkt")
(provide (rename-out [beginner-lookup lookup]))

; other
(require "../semantics/beginner-syntax.rkt")
(provide (all-from-out "../semantics/beginner-syntax.rkt"))

;; ------------------------------------------------------------------------------
;; Built-ins

(require "../semantics/first-order-beginner-funs.rkt")
(provide (all-from-out "../semantics/first-order-beginner-funs.rkt"))
(require "../teachpacks/first-order-batch-io.rkt")
(provide (all-from-out "../teachpacks/first-order-batch-io.rkt"))
(require "../teachpacks/first-order-image.rkt")
(provide (all-from-out "../teachpacks/first-order-image.rkt"))
(require "../teachpacks/first-order-universe.rkt")
(provide (all-from-out "../teachpacks/first-order-universe.rkt"))