Ho notato che c'è anche un tipo IOException in Control.Exception, qual è il punto di avere un modulo System.IO.Error e un tipo IOError separati? È lì solo per ragioni storiche? Dovrei evitare di usarlo e preferire Control.Exception.IOException?qual è il problema di System.IO.Error
9
A
risposta
12
Sì, è solo per ragioni storiche.
System.IO.Error
ha un tipo IOError
che è solo un sinonimo di tipo per IOException
(in GHC comunque).
Il meccanismo di fancy exception hierarchy delle GHC non fa parte dello standard Haskell. Quindi, IOError
viene utilizzato per la compatibilità con Haskell 2010.
Se si è soddisfatti della specifica di GHC, IOException
e l'intera gerarchia di eccezioni è semplicemente migliore e deve essere preferita.
3
IOError è il vecchio tipo Haskell98 IO exception. Control.Exception e altre varianti più recenti non sono necessariamente compatibili con Haskell98, ma possiamo incorporare i vecchi errori Haskell98 in essi, quindi il sinonimo di tipo.
Problemi correlati
- 1. L'operatore Namespace ... qual è il problema?
- 2. Qual è il problema attuale? MySql?
- 3. qual è il problema con Cookie.setMaxAge (Integer.MAX_VALUE)?
- 4. Qual è il problema in questa affermazione?
- 5. Qual è il più grande problema di prestazioni in Emberjs?
- 6. Qual è il problema con le DLL e il registro?
- 7. <% $, <% @, <% =, <% # ... qual è il problema?
- 8. Non esiste una tale tabella android_metadata, qual è il problema?
- 9. FileResult con MemoryStream fornisce risultati vuoti .. qual è il problema?
- 10. bower 1.0: qual è il problema con .bower.json?
- 11. Qual è il problema con ODBC come tecnologia?
- 12. Qual è il problema fragile della classe base?
- 13. Qual è il significato di ∃?
- 14. Qual è il problema di prestazioni delle sessioni di abilitazione su Google App Engine?
- 15. Errore di tipo strano in Let-expression di Haskell: qual è il problema?
- 16. Qual è il contrario di "è"?
- 17. Qual è il destino di OpenID?
- 18. Qual è la soluzione migliore per un problema parallelo imbarazzante?
- 19. Qual è il punto di ingresso grande?
- 20. Qual è il costrutto $()?
- 21. Qual è il grosso problema con le versioni di binari BUILDING a 64 bit?
- 22. Qual è il problema di select() che utilizza tanta potenza della CPU?
- 23. kruskal.test mostra l'errore "Tutti i livelli di gruppo devono essere finiti". Qual è il problema?
- 24. Qual è il? genere?
- 25. Qual è il NoSaveStateFrameLayout?
- 26. Qual è il minUptime
- 27. Qual è problema nel mio codice Sandbox PayPal Payment futuro
- 28. Qual è il punto di FILL_AND_STROKE?
- 29. qual è il comportamento previsto?
- 30. problema di compatibilità è IE10
grazie, ho ragione ogni nuovo sviluppo preferirebbe Control.Exception.IOException? C'è qualche altro modulo storico ancora usato/insegnato su Internet? – swang
@ Gwenc37 Si prega di non utilizzare le tacche di codice su cose che non sono codice. – Qix