2009-12-04 7 views
8

El compilador VS2010 Beta 2 F # siempre se queja de mi uso de la palabra clave when, incluso cuando se usa código de copiado que se supone que funciona, como these snippets. Por ejemplo, este es el error que consigo al intentar ejecutar una expresión muy trivial:F #: siempre "inesperado" cuando 'palabra clave'

"FS0010 Error: la palabra clave inesperado 'cuando' en la expresión esperadas '->' u otro símbolo.".

[for i in 1..50 when i < 10 -> i] 
---------------^^^^ 

Respuesta

7

Debería usar ahora la palabra clave yield. Al igual que:

[for i in 1 .. 50 do if i < 10 then yield i] 
+0

Gracias, eso funciona. ¿Pero qué pasa con 'cuándo'? – Martin

+4

Según la referencia de palabra clave F # (http://msdn.microsoft.com/en-us/library/dd233249(VS.100).aspx), cuando se usa solo en coincidencias de patrones y restricciones de tipo genérico. Posiblemente un cambio en el idioma desde que salió el artículo que citó? – itowlson

+0

Solo puedo aconsejarle que tenga un poco de cuidado cuando utilice fragmentos de publicaciones antiguas del blog (podrían haber ocurrido pequeños cambios de idioma). – Stringer

Cuestiones relacionadas