Admin/isatest/annomaly.ML
author gagern
Tue, 20 Mar 2007 20:42:14 +0100
changeset 22488 415098eece94
child 22489 52a5277d0489
permissions -rw-r--r--
Changed AnnoMaLy build process from CVS to tarball sources.
Moved annomaly.ML from the official sources to the isatest directory.
gagern@22488
     1
use "ML-Systems/smlnj.ML";                                      
gagern@22488
     2
gagern@22488
     3
local
gagern@22488
     4
gagern@22488
     5
  val smlnj_use_text = use_text
gagern@22488
     6
gagern@22488
     7
  fun strip ([], name, _) = name
gagern@22488
     8
    | strip (["Distribution"], name, _) = name
gagern@22488
     9
    | strip (h1 :: t1, h2 :: t2, def) =
gagern@22488
    10
      if h1 = h2 then strip (t1, t2, def) else def
gagern@22488
    11
gagern@22488
    12
  fun rewrite (NONE, name) = "use_text" :: name
gagern@22488
    13
    | rewrite (SOME home, name) =
gagern@22488
    14
      strip (#arcs (OS.Path.fromString home), name, "use_text" :: name)
gagern@22488
    15
gagern@22488
    16
in
gagern@22488
    17
gagern@22488
    18
  fun use_text name p v t = 
gagern@22488
    19
      let val name = case name of "" => "unnamed" | name => name
gagern@22488
    20
	  val arcs = rewrite (OS.Process.getEnv "ISABELLE_HOME",
gagern@22488
    21
			      #arcs (OS.Path.fromString name))
gagern@22488
    22
	  val _    = AnnoMaLy.nameNextStream ("isabelle" :: arcs)
gagern@22488
    23
      in  smlnj_use_text name p v t
gagern@22488
    24
      end
gagern@22488
    25
gagern@22488
    26
end;