Top Ad unit 728 × 90

Que es F#?

F# (pronunciado F Sharp) es un lenguaje de programación multiparadigma de código abierto,1 para la plataforma .NET, que conjunta la programación funcional con las disciplinas imperativa y orientada a objetos.
Es una variante del lenguaje de programación ML y es compatible con la implementación Objective Caml. F# fue inicialmente desarrollado por Don Syme de Microsoft Research, pero actualmente está siendo desarrollado por la División de Desarrolladores de Microsoft y es distribuido como un lenguaje totalmente soportado en la plataforma .NET y Visual Studio 2010, 2012 y 2013.2

F# es un lenguaje fuertemente tipado que utiliza inferencia de tipos. Como resultado, los tipos no necesitan estar declarados explícitamente por el programador; estos serán deducidos por el compilador durante el proceso de compilación. Sin embargo, F# también permite la declaración explícita de tipos de datos. Por ser un lenguaje .NET, F# soporta los objetos y tipos de .NET; F# permite al programador programar de una manera que se asemeja más a como pensamos. Por ejemplo: en la cafetería para pedir un café, nosotros generalmente no le decimos al mesero exactamente los pasos para hacer el café, sólo pedimos un café con ciertas características. De tal forma que tenemos menos espacio para cometer errores, porque simplemente escribimos menos código. También facilita enormemente la creación de código asincrónico y paralelo, cosa que en otros lenguajes de .NET nos tomaría mucho más tiempo.
Que es F#? Reviewed by Unknown on 15:59 Rating: 5

2 comentarios:

  1. Hola:

    Ya que se llama Visual F#,en vez de F# a secas. Cada vez que creo un proyecto con Visual Studio Community 2017, solo creo programas en modo consola.

    ¿Con Visual F# existe la posibilidad de crear formularios aunque sea a base de códigos?

    PowerShell lo hace.

    Un cordial saludos.

    ResponderEliminar
  2. Hola de nuevo:

    He creado una palicación en consola F# de abrir y cerrar la bandeja del DVD-ROM y quiero hacerlo visual F# de verdad.

    Código F#:
    open System
    open System.Runtime.InteropServices
    open System.Text;

    // importar librería o dll externo.
    []
    extern int mciSendString(string lpstrCommand, StringBuilder lpstrReturnString,
    int uReturnLength, IntPtr hwndCallback)

    let rt = StringBuilder(127)

    // Evento.
    let DoEvents (transition:string) =
    Console.SetCursorPosition(0, 6)
    Console.Write transition


    //let action state transition (mensaje:string) =
    // Console.SetCursorPosition(0, 6);
    // DoEvents transition;
    // mciSendString(state, rt, 127, IntPtr.Zero) |> ignore
    // Console.SetCursorPosition(0, 6)
    // Console.Write(" ")
    // Console.SetCursorPosition(0, 6)
    // Console.Write(mensaje)
    // Código de abajo más simplificado.

    let action state transition (mensaje:string) =
    let reset (text : string) =
    Console.SetCursorPosition(0, 6)
    Console.Write text
    reset transition
    mciSendString(state, rt, 127, IntPtr.Zero) |> ignore
    reset " " // Reemplace esto y la siguiente línea con solo
    reset mensaje // escribir más borrar como `reset (mensaje +" ")`.

    // Pulse letra A para abrir bandeja o C para cerrar bandeja.
    let rec loop() =
    match Console.ReadKey(true).Key with
    | ConsoleKey.Escape -> ()
    | ConsoleKey.A -> action "set CDAudio door open" "Abriendo..." "Abierto."
    loop()
    | ConsoleKey.C -> action "set CDAudio door closed" "Cerrando..." "Cerrado."
    loop()
    | _ -> loop()

    []
    let main argv =
    // Título de la ventana.
    Console.Title <- "Visual F# 2017"

    // Tamaño ventana consola.
    Console.WindowWidth <- 29 // X. Ancho.
    Console.WindowHeight <- 8 // Y. Alto.

    // Cursor invisible.
    Console.CursorVisible <- false

    // Posición del mansaje en la ventana.
    Console.SetCursorPosition(0, 0)
    Console.Write(@"Control bandeja del lector:

    A - Abrir bandeja.
    C - Cerrar bandeja.
    ===========================")
    loop()
    0 // Devolver un código de salida entero.

    Saludos.

    ResponderEliminar

All Rights Reserved by Activity Web © 2014 - 2015
Powered By Blogger, Designed by Sweetheme

Formulario de contacto

Nombre

Correo electrónico *

Mensaje *

Con la tecnología de Blogger.