diff -r 7aaebfcf3134 -r 435fb018e8ee src/Doc/Isar_Ref/HOL_Specific.thy --- a/src/Doc/Isar_Ref/HOL_Specific.thy Thu Mar 28 21:22:44 2019 +0100 +++ b/src/Doc/Isar_Ref/HOL_Specific.thy Thu Mar 28 21:24:55 2019 +0100 @@ -2284,8 +2284,8 @@ @@{command (HOL) export_code} @'open'? \ (const_expr+) (export_target*) ; export_target: - @'in' target (@'module_name' @{syntax string})? \ - (@'file' @{syntax string})? ('(' args ')')? + @'in' target (@'module_name' @{syntax name})? \ + (@'file_prefix' @{syntax embedded})? ('(' args ')')? ; target: 'SML' | 'OCaml' | 'Haskell' | 'Scala' | 'Eval' ; @@ -2390,13 +2390,12 @@ generated. Alternatively, a module name may be specified after the @{keyword "module_name"} keyword; then \<^emph>\all\ code is placed in this module. - By default, generated code is treated as theory export which can be - explicitly retrieved using @{tool_ref export}. For diagnostic purposes - generated code can also be written to the file system using @{keyword "file"}; - for \<^emph>\SML\, \<^emph>\OCaml\ and \<^emph>\Scala\ the file specification refers to a single - file; for \<^emph>\Haskell\, it refers to a whole directory, where code is - generated in multiple files reflecting the module hierarchy. - Passing an empty file specification denotes standard output. + Generated code is output as logical files within the theory context, as well + as session exports that can be retrieved using @{tool_ref export} (or @{tool + build} with option \<^verbatim>\-e\ and suitable \isakeyword{export\_files} + specifications in the session \<^verbatim>\ROOT\ entry). All files have a directory + prefix \<^verbatim>\code\ plus an extra file prefix that may be given via + \<^theory_text>\file_prefix\ --- the default is a numbered prefix \<^verbatim>\export\\N\. Serializers take an optional list of arguments in parentheses.