Se si usa il F # Interactive Shell (FSI), il tipo di espressione dedotto (signature) viene stampato alla console insieme con il suo valore:Come generare la firma di tipo F # simile a FSI nel mio codice?
val it : int * string * float = (42, "Hello F#", 42.0)
Come posso mimare lo stesso comportamento nel mio codice, ad esempio, ottenere i tipi dedotti come stringa per un'espressione F #?
Non ho bisogno di valutare in modo dinamico qualsiasi # espressioni F, le espressioni sono noti in fase di compilazione e sono parte del mio codice F (statica) #. Ho bisogno di questa funzionalità per poter simulare l'output FSI in LINQPad per le mie demo F #.
Se le espressioni sono noti ahead-of-time, perché non farli passare attraverso FSI ahead-of-time come bene? – pblasucci
@pblasucci Io uso LinqPAD per la codifica live e funziona perfettamente con F #. Passare a FSI ogni volta che ho bisogno di mostrare una firma per un'espressione sarebbe troppo tempo sprecato. Ma lo tengo come opzione, grazie! –
@AlexanderGalkin LinqPAD può eseguire un comando shell? È possibile eseguire il shell out ed eseguire il comando fsc con il flag --sig e passarlo sul file su cui si sta lavorando. –