Red Gate forums :: View topic - Problem decompiling F# binaries
Return to RSS Feed Available

Search  | Usergroups |  Profile |  Messages |  Log in  Register 
Go to product documentation
.NET Reflector 7.0 Feedback
.NET Reflector 7.0 Feedback forum

Problem decompiling F# binaries

Search in .NET Reflector 7.0 Feedback forum
Post new topic   Reply to topic
Jump to:  
Author Message

Joined: 06 Sep 2013
Posts: 1

PostPosted: Fri Sep 06, 2013 1:41 am    Post subject: Problem decompiling F# binaries Reply with quote

I have an F# executable that I am inspecting using Reflector 8.2 (I am using .Net 4.5). I have selected the F# option. When I select a function (I have very few methods), right click and selecting "Decompile' appears to do nothing, but something that looks like F# appears on the right hand side but completely devoid of any identifiers used in the function. In fact it appears to unfold all the local lets! Below is an example:

    let mkRewriteRules vars_to_rename_as_terms =
      let ext = (gensym EXT)                 
      let renamed_vars_as_terms = (fun (ID s)-> ID(s+ext)) vars_to_rename_as_terms vars_to_rename_as_terms renamed_vars_as_terms

I see on the right hand side:

   let rec mkRewriteRules vars_to_rename_as_terms  =
        let temporary1 =
            let temporary2 = (* Statement type not handled *)
            match temporary2 with
            | Some _ as x -> x
            | None ->
                let ext = Concat _ ToString
                let temporary3 = Some(Zip vars_to_rename_as_terms   vars_to_rename_as_terms)
            match temporary1 with
            | Some x -> x
            | None -> failwith "Expected non-unit return"

Is this an artifact of how the F# compiler generates, or is there some information missing that might help it do a better job (I know there is a pdb file in the same directory although i am never asked for it)

Having looked at some more functions, I really think that the de-compiler is quite messed up. Some of them are completely wrong
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic All times are GMT + 1 Hour
Page 1 of 1

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Powered by phpBB © 2001, 2005 phpBB Group