6191

[code]

    [<CompiledName("Hoge")>]
    type Piyo = class end
    
[/code]

このような型を定義したとき、`typeof<Piyo>.Name`を実行すると、`"Hoge"`が返ってきます。  
`"Piyo"`という文字列を実行時に取得する方法はあるのでしょうか？

### 目的

F# の型とYamlをマッピングするライブラリを書いています。  
Yamlをオブジェクトに変換出来なかった場合の例外のメッセージに、どの型に変換できなかったか含めようと思っています。  
そのとき、F# から見える形式で表示したいです。  
たとえば、`FSharpList<int>`ではなく、`List<int>`のようにです。


CC BY-SA 3.0
2015-02-09T06:10:38.970
6177
2015-02-09T11:52:56.723
2015-02-09T11:07:41.043
8173
8173
question
f#
CompiledNameが付いた型のF# での名前を取得したい


F#での名前はアセンブリ内のFSharpSignatureData. _AssemblyName_ というリソースに出力されます。以前は[F#
PowerPack](https://fsharppowerpack.codeplex.com/)でF# Metadata
Readerが提供されていましたが、現行のFSharp Compiler Serviceでは削除済みとのことです。


CC BY-SA 3.0
2015-02-09T11:52:56.723
6191
2015-02-09T11:52:56.723
5750
6177
answer