Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions csug/system.stex
Original file line number Diff line number Diff line change
Expand Up @@ -5306,12 +5306,17 @@ This parameter is initially false.
%----------------------------------------------------------------------------
\entryheader
\formdef{make-cost-center}{\categoryprocedure}{(make-cost-center)}
\formdef{make-cost-center}{\categoryprocedure}{(make-cost-center \var{name})}
\returns a new cost center
\listlibraries
\endentryheader

The recorded costs of the new cost center are initialized to zero.

\var{name}, if supplied, must be a symbol which identifies the cost center, or
\scheme{#f} for no name. The name is printed every time the cost center is
printed.

%----------------------------------------------------------------------------
\entryheader
\formdef{cost-center?}{\categoryprocedure}{(cost-center? \var{obj})}
Expand Down Expand Up @@ -5365,6 +5370,13 @@ code.

The cpu time is returned as a time object with time-type \scheme{time-duration}.

%----------------------------------------------------------------------------
\entryheader
\formdef{cost-center-name}{\categoryprocedure}{(cost-center-name \var{cost-center})}
\returns the name associated with \var{cost-center}, if any; otherwise \scheme{#f}
\listlibraries
\endentryheader

%----------------------------------------------------------------------------
\entryheader
\formdef{reset-cost-center!}{\categoryprocedure}{(reset-cost-center! \var{cost-center})}
Expand Down
12 changes: 10 additions & 2 deletions mats/misc.ms
Original file line number Diff line number Diff line change
Expand Up @@ -2102,7 +2102,7 @@

(mat cost-center
(error? ; wrong number of arguments
(make-cost-center 'foo))
(make-cost-center 'foo 'bar))

(error? ; foo is not a cost center
(with-cost-center 'foo (lambda () 5)))
Expand All @@ -2122,8 +2122,16 @@
(error? ; #\c is not a cost center
(reset-cost-center! #\c))

(error? ; "test" is not a cost center
(cost-center-name "test"))

(let ([cc (make-cost-center)])
(cost-center? cc))
(cost-center? cc)
(string=? (format "~a" cc) "#<cost center>"))

(let ([cc (make-cost-center 'foo)])
(eq? (cost-center-name cc) 'foo)
(string=? (format "~a" cc) "#<cost center foo>"))

;;; instruction cost center tests
((lambda (x)
Expand Down
16 changes: 8 additions & 8 deletions mats/patch-compile-0-f-f-t
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
*** output-compile-0-f-f-f-experr/errors-compile-0-f-f-f Wed Feb 4 08:08:05 2026
--- output-compile-0-f-f-t-experr/errors-compile-0-f-f-t Wed Feb 4 08:08:01 2026
*** output-compile-0-f-f-f-experr/errors-compile-0-f-f-f 2026-03-10 17:14:12.556278673 -0700
--- output-compile-0-f-f-t-experr/errors-compile-0-f-f-t 2026-03-10 17:13:59.572271365 -0700
***************
*** 4070,4076 ****
*** 4074,4080 ****
misc.mo:Expected error in mat compute-composition: "compute-composition: invalid generation -1".
misc.mo:Expected error in mat compute-composition: "compute-composition: invalid generation "static"".
misc.mo:Expected error in mat make-object-finder: "make-object-finder: 17 is not a procedure".
! misc.mo:Expected error in mat make-object-finder: "make-object-finder: invalid generation 5".
misc.mo:Expected error in mat make-object-finder: "make-object-finder: invalid generation oldgen".
misc.mo:Expected error in mat make-object-finder: "make-object-finder: invalid generation -1".
misc.mo:Expected error in mat make-object-finder: "incorrect number of arguments 1 to #<procedure find-next>".
--- 4070,4076 ----
--- 4074,4080 ----
misc.mo:Expected error in mat compute-composition: "compute-composition: invalid generation -1".
misc.mo:Expected error in mat compute-composition: "compute-composition: invalid generation "static"".
misc.mo:Expected error in mat make-object-finder: "make-object-finder: 17 is not a procedure".
Expand All @@ -18,7 +18,7 @@
misc.mo:Expected error in mat make-object-finder: "make-object-finder: invalid generation -1".
misc.mo:Expected error in mat make-object-finder: "incorrect number of arguments 1 to #<procedure find-next>".
***************
*** 8055,8065 ****
*** 8060,8070 ****
7.mo:Expected error in mat sstats: "set-sstats-gc-bytes!: twelve is not an exact integer".
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid generation yuk".
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid generation -1".
Expand All @@ -30,7 +30,7 @@
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
--- 8055,8065 ----
--- 8060,8070 ----
7.mo:Expected error in mat sstats: "set-sstats-gc-bytes!: twelve is not an exact integer".
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid generation yuk".
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid generation -1".
Expand All @@ -43,7 +43,7 @@
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
***************
*** 9596,9608 ****
*** 9601,9613 ****
fx.mo:Expected error in mat fx-/wraparound: "fx-: <-int> is not a fixnum".
fx.mo:Expected error in mat fx-/wraparound: "fx-: <-int> is not a fixnum".
fx.mo:Expected error in mat fx*: "fx*: (a . b) is not a fixnum".
Expand All @@ -57,7 +57,7 @@
fx.mo:Expected error in mat r6rs:fx*: "fx*: <int> is not a fixnum".
fx.mo:Expected error in mat r6rs:fx*: "fx*: <-int> is not a fixnum".
fx.mo:Expected error in mat r6rs:fx*: "fx*: #f is not a fixnum".
--- 9596,9608 ----
--- 9601,9613 ----
fx.mo:Expected error in mat fx-/wraparound: "fx-: <-int> is not a fixnum".
fx.mo:Expected error in mat fx-/wraparound: "fx-: <-int> is not a fixnum".
fx.mo:Expected error in mat fx*: "fx*: (a . b) is not a fixnum".
Expand Down
38 changes: 18 additions & 20 deletions mats/patch-compile-0-f-t-f
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
*** output-compile-0-f-f-f-experr/errors-compile-0-f-f-f Wed Feb 4 08:08:05 2026
--- output-compile-0-f-t-f-experr/errors-compile-0-f-t-f Wed Feb 4 08:08:02 2026
*** output-compile-0-f-f-f-experr/errors-compile-0-f-f-f 2026-03-10 17:14:12.556278673 -0700
--- output-compile-0-f-t-f-experr/errors-compile-0-f-t-f 2026-03-10 17:14:08.862276807 -0700
***************
*** 212,218 ****
3.mo:Expected error in mat dipa-letrec: "attempt to reference undefined variable a".
Expand All @@ -18,24 +18,22 @@
3.mo:Expected error in mat dipa-letrec: "attempt to reference undefined variable a".
3.mo:Expected error in mat dipa-letrec: "attempt to reference undefined variable a".
***************
*** 231,238 ****
*** 231,237 ****
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable b".
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable a".
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable g".
! 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable f".
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable f".
- 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable f".
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable c".
3.mo:Expected warning in mat cpvalid: "possible attempt to reference undefined variable x".
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable x".
--- 231,238 ----
--- 231,237 ----
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable b".
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable a".
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable g".
+ 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable g".
! 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable g".
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable f".
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable c".
3.mo:Expected warning in mat cpvalid: "possible attempt to reference undefined variable x".
3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable x".
***************
*** 278,287 ****
3.mo:Expected error in mat mrvs: "returned 3 values to single value return context".
Expand All @@ -60,15 +58,15 @@
3.mo:Expected error in mat mrvs: "attempt to apply non-procedure 17".
3.mo:Expected error in mat mrvs: "returned 2 values to single value return context".
***************
*** 4114,4120 ****
*** 4118,4124 ****
misc.mo:Expected error in mat cpletrec: "foreign-procedure: no entry for "foo"".
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable q".
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable bar".
! misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable foo at line 1, char 108 of testfile.ss".
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable b".
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable b".
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable a".
--- 4114,4120 ----
--- 4118,4124 ----
misc.mo:Expected error in mat cpletrec: "foreign-procedure: no entry for "foo"".
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable q".
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable bar".
Expand All @@ -77,7 +75,7 @@
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable b".
misc.mo:Expected error in mat cpletrec: "attempt to reference undefined variable a".
***************
*** 8065,8072 ****
*** 8070,8077 ****
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
7.mo:Expected error in mat error: "a: hit me!".
7.mo:Expected error in mat error: "f: n is 0".
Expand All @@ -86,7 +84,7 @@
record.mo:Expected error in mat record2: "invalid value 3 for foreign type double-float".
record.mo:Expected error in mat record2: "3 is not of type #<record type fudge>".
record.mo:Expected error in mat record2: "make-record-type: invalid field list ((immutable double-float a) . b)".
--- 8065,8072 ----
--- 8070,8077 ----
7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu".
7.mo:Expected error in mat error: "a: hit me!".
7.mo:Expected error in mat error: "f: n is 0".
Expand All @@ -96,7 +94,7 @@
record.mo:Expected error in mat record2: "3 is not of type #<record type fudge>".
record.mo:Expected error in mat record2: "make-record-type: invalid field list ((immutable double-float a) . b)".
***************
*** 8074,8088 ****
*** 8079,8093 ****
record.mo:Expected error in mat type-descriptor: "invalid syntax (type-descriptor 3)".
record.mo:Expected error in mat type-descriptor: "type-descriptor: unrecognized record car".
record.mo:Expected error in mat record3: "variable set-fudge-a! is not bound".
Expand All @@ -112,7 +110,7 @@
record.mo:Expected error in mat record9: "record-reader: invalid input #f".
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
--- 8074,8088 ----
--- 8079,8093 ----
record.mo:Expected error in mat type-descriptor: "invalid syntax (type-descriptor 3)".
record.mo:Expected error in mat type-descriptor: "type-descriptor: unrecognized record car".
record.mo:Expected error in mat record3: "variable set-fudge-a! is not bound".
Expand All @@ -129,7 +127,7 @@
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
record.mo:Expected error in mat record9: "record-reader: invalid second argument fudge".
***************
*** 8095,8120 ****
*** 8100,8125 ****
record.mo:Expected error in mat record10: "read: unresolvable cycle constructing record of type #<record type bar> at char 3 of #<input port string>".
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
Expand All @@ -156,7 +154,7 @@
record.mo:Expected error in mat foreign-data: "foreign-alloc: 0 is not a positive fixnum".
record.mo:Expected error in mat foreign-data: "foreign-alloc: <int> is not a positive fixnum".
record.mo:Expected error in mat foreign-data: "foreign-alloc: -5 is not a positive fixnum".
--- 8095,8120 ----
--- 8100,8125 ----
record.mo:Expected error in mat record10: "read: unresolvable cycle constructing record of type #<record type bar> at char 3 of #<input port string>".
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
record.mo:Expected error in mat record16: "read: unresolvable cycle constructing record of type #<record type bazar> at char 3 of #<input port string>".
Expand Down Expand Up @@ -184,7 +182,7 @@
record.mo:Expected error in mat foreign-data: "foreign-alloc: <int> is not a positive fixnum".
record.mo:Expected error in mat foreign-data: "foreign-alloc: -5 is not a positive fixnum".
***************
*** 8257,8295 ****
*** 8262,8300 ****
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
record.mo:Expected error in mat record23: "make-record-type: cannot extend sealed record type #<record type foo> as bar".
Expand Down Expand Up @@ -224,7 +222,7 @@
record.mo:Expected error in mat record?: "record?: 4 is not a record type descriptor".
record.mo:Expected error in mat record?: "record?: a is not a record type descriptor".
record.mo:Expected error in mat record?: "record?: #(1) is not a record type descriptor".
--- 8257,8295 ----
--- 8262,8300 ----
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
record.mo:Expected error in mat record22: "invalid field specifier (immutable creepy q)".
record.mo:Expected error in mat record23: "make-record-type: cannot extend sealed record type #<record type foo> as bar".
Expand Down Expand Up @@ -265,7 +263,7 @@
record.mo:Expected error in mat record?: "record?: a is not a record type descriptor".
record.mo:Expected error in mat record?: "record?: #(1) is not a record type descriptor".
***************
*** 8306,8363 ****
*** 8311,8368 ****
record.mo:Expected error in mat r6rs-records-procedural: "make-record-constructor-descriptor: invalid protocol flimflam".
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure not-a-procedure".
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure spam".
Expand Down Expand Up @@ -324,7 +322,7 @@
record.mo:Expected error in mat r6rs-records-syntactic: "define-record-type: incompatible record type cpoint - different parent".
record.mo:Expected error in mat r6rs-records-syntactic: "define-record-type: incompatible record type cpoint - different parent".
record.mo:Expected error in mat r6rs-records-syntactic: "cannot extend define-record-type parent fratrat".
--- 8306,8363 ----
--- 8311,8368 ----
record.mo:Expected error in mat r6rs-records-procedural: "make-record-constructor-descriptor: invalid protocol flimflam".
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure not-a-procedure".
record.mo:Expected error in mat r6rs-records-procedural: "attempt to apply non-procedure spam".
Expand Down
8 changes: 4 additions & 4 deletions mats/patch-compile-0-f-t-t
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
*** output-compile-0-f-t-f-experr/errors-compile-0-f-t-f Wed Feb 4 08:08:02 2026
--- output-compile-0-f-t-t-experr/errors-compile-0-f-t-t Wed Feb 4 08:07:56 2026
*** output-compile-0-f-t-f-experr/errors-compile-0-f-t-f 2026-03-10 17:14:08.862276807 -0700
--- output-compile-0-f-t-t-experr/errors-compile-0-f-t-t 2026-03-10 17:13:50.682265141 -0700
***************
*** 9596,9608 ****
*** 9601,9613 ****
fx.mo:Expected error in mat fx-/wraparound: "fx-: <-int> is not a fixnum".
fx.mo:Expected error in mat fx-/wraparound: "fx-: <-int> is not a fixnum".
fx.mo:Expected error in mat fx*: "fx*: (a . b) is not a fixnum".
Expand All @@ -15,7 +15,7 @@
fx.mo:Expected error in mat r6rs:fx*: "fx*: <int> is not a fixnum".
fx.mo:Expected error in mat r6rs:fx*: "fx*: <-int> is not a fixnum".
fx.mo:Expected error in mat r6rs:fx*: "fx*: #f is not a fixnum".
--- 9596,9608 ----
--- 9601,9613 ----
fx.mo:Expected error in mat fx-/wraparound: "fx-: <-int> is not a fixnum".
fx.mo:Expected error in mat fx-/wraparound: "fx-: <-int> is not a fixnum".
fx.mo:Expected error in mat fx*: "fx*: (a . b) is not a fixnum".
Expand Down
Loading
Loading