Update of /cvsroot/scsh/scsh-0.6/scheme
In directory usw-pr-cvs1:/tmp/cvs-serv3825/scheme
Modified Files:
interfaces.scm more-interfaces.scm more-packages.scm
rts-packages.scm
Log Message:
New implementation of (no-inheritance) thread-local cells and thread
fluids.
New implementation of syslog.
Both are to be compatible with what's actually probably going into
Scheme 48.
Index: interfaces.scm
===================================================================
RCS file: /cvsroot/scsh/scsh-0.6/scheme/interfaces.scm,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -r1.17 -r1.18
*** interfaces.scm 2001/10/25 07:24:42 1.17
--- interfaces.scm 2001/12/03 15:21:45 1.18
***************
*** 391,404 ****
string->integer))
- (define-interface thread-cells-interface
- (export make-thread-cell
- thread-cell-ref
- thread-cell-set!))
-
- (define-interface thread-cells-internal-interface
- (export get-cell-values
- empty-cell-values ; env/command-level.scm
- initialize-dynamic-state!))
-
(define-interface fluids-interface
(export make-fluid
--- 391,394 ----
***************
*** 409,419 ****
(define-interface fluids-internal-interface
! (export current-thread
set-current-thread!
get-dynamic-env ; wind.scm, env/command-level.scm
set-dynamic-env! ; wind.scm
get-dynamic-point ; wind.scm
! set-dynamic-point! ; wind.scm
! empty-dynamic-env)) ; thread-cell.scm
(define-interface enumerated-interface
--- 399,419 ----
(define-interface fluids-internal-interface
! (export initialize-dynamic-state!
! current-thread
set-current-thread!
get-dynamic-env ; wind.scm, env/command-level.scm
set-dynamic-env! ; wind.scm
get-dynamic-point ; wind.scm
! set-dynamic-point!)) ; wind.scm
!
! (define-interface thread-cells-internal-interface
! (export get-thread-cell-env
! set-thread-cell-env!
! empty-thread-cell-env))
!
! (define-interface thread-cells-interface
! (export make-thread-cell
! thread-cell-ref
! thread-cell-set!))
(define-interface enumerated-interface
Index: more-interfaces.scm
===================================================================
RCS file: /cvsroot/scsh/scsh-0.6/scheme/more-interfaces.scm,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** more-interfaces.scm 2001/05/28 13:44:48 1.7
--- more-interfaces.scm 2001/12/03 15:21:45 1.8
***************
*** 328,331 ****
--- 328,347 ----
array)) ; <bounds> . <elements>
+ (define-interface enum-sets-interface
+ (export (define-enum-set-type :syntax)
+ enum-set->list
+ enum-set-member?
+ enum-set=?
+ enum-set-union
+ enum-set-intersection
+ enum-set-negation))
+
+ (define-interface enum-sets-internal-interface
+ (export enum-set-has-type?
+ enum-set?
+ enum-set-type
+ enum-set->integer
+ integer->enum-set))
+
(define-interface thread-fluids-interface
(export make-thread-fluid
***************
*** 333,337 ****
let-thread-fluid
let-thread-fluids
! set-thread-fluid!))
(define-interface search-trees-interface
--- 349,355 ----
let-thread-fluid
let-thread-fluids
! set-thread-fluid!
! make-preserved-thread-fluid
! fork-thread))
(define-interface search-trees-interface
Index: more-packages.scm
===================================================================
RCS file: /cvsroot/scsh/scsh-0.6/scheme/more-packages.scm,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** more-packages.scm 2001/05/28 13:44:48 1.4
--- more-packages.scm 2001/12/03 15:21:45 1.5
***************
*** 73,77 ****
channel-i/o ; steal-channel-port
fluids-internal ; get-dynamic-env, set-dynamic-env!
- thread-cells-internal ; empty-cell-values
root-scheduler ; call-when-deadlocked!
conditions) ; define-condition-type
--- 73,76 ----
***************
*** 478,486 ****
(files (big defrecord)))
(define general-tables tables) ; backward compatibility
(define-structure thread-fluids thread-fluids-interface
! (open scheme define-record-types thread-cells fluids)
! (files (big thread-fluids)))
(define-structure big-util big-util-interface
--- 477,497 ----
(files (big defrecord)))
+ (define-structures ((enum-sets enum-sets-interface)
+ (enum-sets-internal enum-sets-internal-interface))
+ (open scheme define-record-types
+ finite-types
+ bitwise
+ util
+ signals
+ external-calls)
+ (optimize auto-integrate)
+ (files (big enum-set)))
+
(define general-tables tables) ; backward compatibility
(define-structure thread-fluids thread-fluids-interface
! (open scheme define-record-types weak
! threads thread-cells fluids)
! (files (big thread-fluid)))
(define-structure big-util big-util-interface
***************
*** 688,691 ****
--- 699,703 ----
dynamic-externals
enum-case
+ enum-sets
extended-numbers
extended-ports
Index: rts-packages.scm
===================================================================
RCS file: /cvsroot/scsh/scsh-0.6/scheme/rts-packages.scm,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** rts-packages.scm 2001/10/18 09:02:52 1.7
--- rts-packages.scm 2001/12/03 15:21:45 1.8
***************
*** 50,64 ****
(define-structures ((fluids fluids-interface)
! (fluids-internal fluids-internal-interface))
(open scheme-level-1 define-record-types primitives)
! (files (rts fluid))
(optimize auto-integrate))
- (define-structures ((thread-cells thread-cells-interface)
- (thread-cells-internal thread-cells-internal-interface))
- (open scheme-level-1 define-record-types primitives fluids-internal)
- (files (rts thread-cell))
- (optimize auto-integrate))
-
(define-structure wind wind-interface
(open scheme-level-1 signals define-record-types
--- 50,60 ----
(define-structures ((fluids fluids-interface)
! (fluids-internal fluids-internal-interface)
! (thread-cells thread-cells-interface)
! (thread-cells-internal thread-cells-internal-interface))
(open scheme-level-1 define-record-types primitives)
! (files (rts thread-env))
(optimize auto-integrate))
(define-structure wind wind-interface
(open scheme-level-1 signals define-record-types
***************
*** 246,250 ****
fluids
fluids-internal ;get-dynamic-env
! thread-cells-internal ;get-cell-values
escapes ;primitive-cwcc
conditions ;error?
--- 242,246 ----
fluids
fluids-internal ;get-dynamic-env
! thread-cells-internal ;get-thread-cell-env, empty-thread-cell-env
escapes ;primitive-cwcc
conditions ;error?
***************
*** 261,266 ****
(define-structure scheduler scheduler-interface
! (open scheme-level-1 threads threads-internal thread-cells-internal
! enumerated enum-case
debug-messages
signals) ;error
--- 257,261 ----
(define-structure scheduler scheduler-interface
! (open scheme-level-1 threads threads-internal enumerated enum-case
debug-messages
signals) ;error
***************
*** 280,284 ****
i/o-internal ;output-port-forcer, output-forcer-id
fluids-internal ;get-dynamic-env
- thread-cells-internal ;get-cell-values
interrupts ;with-interrupts-inhibited
wind ;call-with-current-continuation
--- 275,278 ----
***************
*** 329,333 ****
channel-i/o ;{in,out}put-channel->port, initialize-channel-i/o
session-data ;initialize-session-data!
! thread-cells-internal ;initialize-dynamic-state!
exceptions ;initialize-exceptions!
interrupts ;initialize-interrupts!
--- 323,327 ----
channel-i/o ;{in,out}put-channel->port, initialize-channel-i/o
session-data ;initialize-session-data!
! fluids-internal ;initialize-dynamic-state!
exceptions ;initialize-exceptions!
interrupts ;initialize-interrupts!
|