Ci sono altri casi d'uso per i fornitori di tipo F #?

6

Quindi penso di conoscere il caso d'uso principale per i Type Provider di F # 3.0, i. e. Intellisense migliore quando si lavora con archivi di dati che li utilizzano. Ci sono altri casi d'uso per i Type Provider o è più o meno così?

    
posta Onorio Catenacci 25.10.2012 - 15:07
fonte

2 risposte

4

Penso che scoprirai che c'è davvero solo un caso d'uso per i provider di tipo F #, ovvero ottenere dati strongmente tipizzati da fonti di dati.

Quello che penso tu stia chiedendo è: a che serve ottenere quel tipo di informazioni sul tipo? Bene, come hai detto, ti permette di usare intellisense meglio, ma penso che sia in realtà un effetto collaterale o più di una felice coincidenza.

Penso che scoprirai che i vantaggi di avere dati strongmente tipizzati disponibili sono in linea con i vantaggi di avere un linguaggio strongmente tipizzato per cominciare.

È interessante notare che se dai un'occhiata a la pagina che ha (quello che credo sia ) il documento spec / proposal / design originale per i provider di tipi, troverai:

Providing strongly typed access to these sources is a key consideration for strongly-typed programming languages, to insure low impedance mismatch in information access. At this scale, [current methods] are manual, clumsy, and do not handle the internet-scale information sources...

(sottolinea e modifica il mio)

    
risposta data 25.10.2012 - 18:01
fonte
1

Esistono provider di tipo F # per cose diverse da ciò che è tradizionalmente considerato come dati.

Un esempio è il provider di tipi FunScript :

FunScript is a lightweight F# library that lets you rapidly develop single-page applications. You can connect to external data sources and call REST APIs with intellisense, produce dashboards using JavaScript visualization libraries and write asynchronous computations easily without explicit callbacks.

Un altro è il provider di tipi F # R :

An F# type provider for interoperating with R.

Quindi puoi vedere che i provider di tipi possono essere utilizzati per fornire l'interoperabilità ad altri linguaggi di programmazione (JavaScript e R mostrati qui).

    
risposta data 11.12.2013 - 21:12
fonte

Leggi altre domande sui tag