Entradas

Sobre el patrón «Builder» con Rust

Me guardo esta recopilación de enlaces sobre cómo usar el patrón Builder con el lenguaje de programación Rust:

Rust + WebAssembly + JavaScript

WebAssembly y Rust son tendencia. Este articulo nos introduce estas tecnologías para programar y mostrar un sencillo «¡Hola Mundo!» en nuestro navegador:

https://dev.to/mbround18/rust-webassembly-javascript-5366

mdBook para crear libros usando archivos Markdown

mdBook permite crear documentación estructurada en forma de libro para la web usando archivos Markdown. Sirva de ejemplo la propia guía de mdBook.

Puede instalarse descargando el binario de la aplicación, o directamente con Cargo (el administrador de paquetes de Rust) para añadir mdbook a las herramientas de cargo:

$ cargo install mdbook

GhostCell, separando permisos de los datos en Rust

El lenguaje Rust ofrece un enfoque prometedor para la programación de sistemas seguros. Un valor puede ser un alias o puede ser mutable, pero no ambas cosas al mismo tiempo.

Pero implementar estructuras de datos basadas en punteros con acceso compartido, como grafos o listas doblemente enlazadas, requiere poder mutar estados que son alias. Para admitir tales estructuras de datos Rust proporciona una serie de APIs que ofrecen la denominada mutabilidad interior: la capacidad de mutar datos usando métodos sobre una referencia compartida. Desafortunadamente, las APIs existentes sacrifican la flexibilidad, el acceso concurrente y/o el rendimiento a cambio de la seguridad.

Este artículo académico propone una API llamada GhostCell que separa de forma segura los permisos de los datos. La propuesta se acompaña de su implementación y ejemplos y de comparativas de rendimiento con otras APIs.

Hablando de sitios web estáticos

Zola es un generador de sitio estático rápido en un solo binario con todo integrado. Documentación disponible en el sitio web o en la carpeta docs/content del repositorio.

Otro buscador rapidísimo con Rust para sitios estáticos

Stork indexa el contenido estático y crea un archivo que se puede cargar en el servidor web. Y proporciona una interfaz Javascript + WebAssembly para buscar en ese archivo de índice.

MeiliSearch es un motor …

MeiliSearch es un motor de búsqueda rápido, de código abierto. Tanto la búsqueda como la indexación son personalizables. Las características como la tolerancia a errores tipográficos, los filtros y los sinónimos se proporcionan de forma inmediata (aunque por ahora no está disponible en español). Más información en la documentación y en el crate para usar desde Rust.

Arrays, vectores y slices en Rust

Debido al compromiso de Rust con la seguridad en el acceso a memoria, existen algunas diferencias en el uso de arrays y vectores respecto a otros lenguajes inseguros.

Los slices, por otro lado, son un concepto nuevo, aunque muy útil.

https://hashrust.com/blog/arrays-vectors-and-slices-in-rust/