anchor.diff:            let expr = translate_expr env expr in
             Some (DGlobal (meta, name, List.length tvars, t, expr))
           with e ->
  -          Errors. log_issue Range.dummyRange (Errors.Warning_DefinitionNotTranslated, (BU.format2 "Not translating definition for %s (%s)\n" (Syntax.string_of_mlpath name) (BU.print_exn e)));
  +          Errors. log_issue Range.dummyRange (Errors.Warning_DefinitionNotTranslated, (BU.format2 "Error extracting %s to KreMLin (%s)\n" (Syntax.string_of_mlpath name) (BU.print_exn e)));
             Some (DGlobal (meta, name, List.length tvars, t, EAny))
           end
   
     | { mllb_name = name; mllb_tysc = ts } ->
         // TODO JP: figure out what exactly we're hitting here...?
  -      Errors. log_issue Range.dummyRange (Errors.Warning_DefinitionNotTranslated, (BU.format1 "Not translating definition for %s\n" name));
  +      Errors. log_issue Range.dummyRange (Errors.Warning_DefinitionNotTranslated, (BU.format1 "Not extracting %s to KreMLin\n" name));
         begin match ts with
         | Some (idents, t) ->
             BU.print2 "Type scheme is: forall %s. %s\n"
  
positive.code: 
    | (_, name, _mangled_name, _, _, _) ->
        // JP: TODO: figure out why and how this happens
        Errors. log_issue Range.dummyRange (Errors.Warning_DefinitionNotTranslated, (BU.format1 "Not translating type definition for %s\n" name));
        None
  
  and translate_type env t: typ =
  
negative.code:       failwith "todo: translate_decl [MLM_Top]"
  
    | MLM_Exn (m, _) ->
        BU.print1_warning "Not extracting exception %s to KreMLin (exceptions unsupported)\n" m;
        []
  
  and translate_let env flavor lb: option<decl> =
  