Add block pushing and wireworld simulation.
This commit is contained in:
parent
b9f9e81381
commit
a34a7e9b7a
12 changed files with 379 additions and 39 deletions
|
@ -23,6 +23,7 @@
|
|||
(define-module (goblins core-types)
|
||||
#:use-module (hoot hashtables)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (srfi srfi-9)
|
||||
#:export (<actormap>
|
||||
_make-actormap
|
||||
actormap?
|
||||
|
@ -89,10 +90,6 @@
|
|||
live-refr?
|
||||
promise-refr?))
|
||||
|
||||
;; hoot hacks
|
||||
|
||||
(define *unspecified* (if #f #f))
|
||||
|
||||
;; Actormaps, etc
|
||||
;; ==============
|
||||
(define-record-type <actormap>
|
||||
|
|
|
@ -102,24 +102,22 @@
|
|||
near-resolved-promise-value
|
||||
|
||||
;; test-core.scm needs these; they are not otherwise exported
|
||||
*unspecified*
|
||||
transactormap-set!
|
||||
transactormap-ref
|
||||
mactor:local-link?)
|
||||
#:pure
|
||||
#:use-module ((hoot errors) #:select (raise-exception))
|
||||
#:use-module (hoot bytevectors)
|
||||
#:use-module ((hoot error-handling) #:select (format-exception))
|
||||
#:use-module (hoot exceptions)
|
||||
#:use-module ((hoot exceptions) #:select (make-exception-with-irritants))
|
||||
#:use-module (hoot hashtables)
|
||||
#:use-module (hoot match)
|
||||
#:use-module ((hoot syntax) #:select (define*))
|
||||
#:use-module (ice-9 control)
|
||||
#:use-module (ice-9 vlist)
|
||||
#:use-module ((hoot ports) #:select (flush-output-port))
|
||||
#:use-module ((ice-9 control) #:select (call/ec))
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (ice-9 q)
|
||||
#:use-module (ice-9 vlist)
|
||||
#:use-module (goblins core-types)
|
||||
#:use-module (goblins ghash)
|
||||
#:use-module (scheme base)
|
||||
#:use-module (scheme write))
|
||||
#:use-module (srfi srfi-9)
|
||||
#:use-module (srfi srfi-11))
|
||||
|
||||
|
||||
;;; Utilities (which should be moved to their own modules)
|
||||
|
@ -128,8 +126,6 @@
|
|||
;;; hoot hacks
|
||||
|
||||
|
||||
(define *unspecified* (if #f #f))
|
||||
|
||||
;;; Here's basically your pre-goblins area.
|
||||
|
||||
;; mimic Racket's seteq
|
||||
|
@ -2110,7 +2106,8 @@ Type: Actormap (-> Any) (Optioan (#:reckless? Boolean)) -> Any"
|
|||
(display msg (current-error-port)) (newline (current-error-port))
|
||||
(display ";; exception: " (current-error-port))
|
||||
(format-exception err (current-error-port))
|
||||
(newline (current-error-port)) (flush-output-port (current-error-port)))
|
||||
(newline (current-error-port))
|
||||
(flush-output-port (current-error-port)))
|
||||
|
||||
(define (make-no-op msg)
|
||||
(lambda _ *unspecified*))
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
#:use-module (hoot hashtables)
|
||||
#:use-module ((hoot lists) #:select (fold))
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (scheme write)
|
||||
#:use-module (srfi srfi-9)
|
||||
#:export (make-ghash
|
||||
ghash?
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue