You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The compiler runs into a problem with this code even if it seems to be type-correct (SML/NJ and PolyML accept it):
functor Slice (type 'a elt
type 'a seq
val sub : 'a seq * int -> 'a elt) =
struct
datatype 'a slice = SLICE of 'a seq
fun app f (SLICE s) = f (sub (s, 0))
end
functor MonoSlice (type elt
type seq
val sub : seq * int -> elt) =
struct
structure S = Slice (type 'a elt = elt
type 'a seq = seq
val sub = sub)
val app = S.app
type slice = elt S.slice
type elt = elt
end
signature MONO_SLICE =
sig
type elt
type slice
val app : (elt -> unit) -> slice -> unit
end
structure S : MONO_SLICE = MonoSlice (type elt = CharVector.elem
type seq = CharVector.vector
val sub = CharVector.sub)
For instance the interpreter stops with an "Exception Zip":
mlworks -tty
Use: /home/helmut/.mlworks
val it : unit = ()
MLWorks 2.1 Professional Edition
Copyright (C) 1999 Harlequin Group plc. All rights reserved.
MLWorks is a trademark of Harlequin Group plc.
MLWorks> use "test.sml";
Use: /tmp/test.sml
functor MonoSlice
functor Slice
signature MONO_SLICE =
sig
type elt
type slice
val app : (elt -> unit) -> slice -> unit
end
Entering Debugger, scanning stack ... done.
Exception Zip[_lists.sml:128.15-128.17] raised
Entering debugger, commands: q : quit (return to listener), ? : more help
Current (innermost) stack frame:
No visible frame
Debugger>
The text was updated successfully, but these errors were encountered:
The compiler runs into a problem with this code even if it seems to be type-correct (SML/NJ and PolyML accept it):
For instance the interpreter stops with an "Exception Zip":
The text was updated successfully, but these errors were encountered: