Lenguaje De Programación Rust Breve Historia El lenguaje de programación Rust comenzó como un proyecto de Graydon Hoare en 2006, quien era un trabajador de Mozilla. Más tarde, por el año 2009, Mozilla se involucra en este lenguaje, con un objetivo a largo plazo de sustituir a c++ como el lenguaje de programación para Firefox y las demás herramientas en las que trabaja la fundación. En el año 2010, Mozilla da a conocer oficialmente este lenguaje. La primera versión alfa del compilador (v0.1) apareció el 20 de Enero del 2012. La versión actual es la 1.0, que fue lanzada el 9 de enero de 2015. Objetivo Y Orientación El objetivo de Rust es ser un buen lenguaje para la creación de grandes programas del lado del cliente y del servidor que se ejecuten en Internet, de esto se puede decir que Rust está orientado a la seguridad (evitar bugs en la memoria que sirvan como brechas de seguridad), a la concurrencia (Control de la memoria explícita ), a la eficacia y también orientado a la práctica, ya que es un lenguaje totalmente funcional, desarrollado para Windows, Linux, OSX en forma abierta y que se ha ido perfeccionando por las contribuciones de la comunidad. Influencias El lenguaje de programación Rust ha sido influenciado por una cantidad no menor de lenguajes, como por ejemplo: -Alef -Haskell -Ruby -C# -Hermes -Sather -C++ -Limbo -Standard ML -Camlp4 -Napier -Ocami -Cyclone -Newsqueak -Racket -Erlang -NIL -Common Lisp Una de las principales características sintácticas de Rust, es que se muy similar a la sintaxis del lenguaje de programación C++, con código delimitados por llaves ( { } ) y estructuras de control de flujo (if, else, do, while, for). Paradigma Rust es un lenguaje que aún está en desarrollo, al tener varias influencias de lenguajes este se considera: multiparadigma (permite crear o hacer programas utilizando otros tipo o estilos de lenguajes de programación), imperativo, orientado a objetos, funcional, procedural, concurrente, compilado de propósito general. Tipo de Datos El lenguaje de programación Rust ocupa 4 tipos de datos que son Estático, Fuerte, Inferencia, Estructural: -Estático: Permite ver los errores de programación a través de compilador y que su proceso sea más eficiente. -Fuerte: Hace que no se modifiquen una variable en el programa al menos que se haga una conversión. - Inferencia: Hace asignaciones automáticas a una función sin que el programador lo escriba de nuevo. Influencia directa con Mozilla Cuando Mozilla se involucró directamente en el proyecto RUST lo hicieron para desarrollar sistemas fiables y eficientes. Además Rust combina potentes y flexibles construcciones de programación modernos con un modelo de actuación clara para hacer la eficiencia del programa predecible y manejable. Su sistema de tipo estático es seguro y expresivo y ofrece garantías sólidas sobre el aislamiento, la ejecución de concurrencia y la seguridad de la memoria. Ejemplo