Bounded generics over constants in Rust
Rust is a language aiming to provide a way to write robust and performant code without using garbage collection or manual memory managment. Yet it lacks of a mechanism to abstract constants, forcing users to repeat code in cases where con- stants are involved. One of the challenges of developing thi...
- Autores:
-
Poveda Ruiz, Christian Nicanor
- Tipo de recurso:
- Fecha de publicación:
- 2019
- Institución:
- Universidad de los Andes
- Repositorio:
- Séneca: repositorio Uniandes
- Idioma:
- eng
- OAI Identifier:
- oai:repositorio.uniandes.edu.co:1992/44291
- Acceso en línea:
- http://hdl.handle.net/1992/44291
- Palabra clave:
- Rust (Lenguaje de programación de computadores) - Investigaciones
Programación (Computadores electrónicos) - Investigaciones
Lenguajes de programación (Computadores electrónicos) - Investigaciones
Compiladores (Programas para computador) - Investigaciones
Ingeniería
- Rights
- openAccess
- License
- http://creativecommons.org/licenses/by-nc-nd/4.0/
Summary: | Rust is a language aiming to provide a way to write robust and performant code without using garbage collection or manual memory managment. Yet it lacks of a mechanism to abstract constants, forcing users to repeat code in cases where con- stants are involved. One of the challenges of developing this mechanism, is that it must be compatible with the language's core principles of performance, reliability and productivity, putting it in contrast with well established languages such as C++, where the mechanism for constant abstraction is another source of unsafety. In order to provide such a mechanism, we propose and develop a symbolic execution engine for the Rust compiler. We explore the integration of the engine in the language's trait solving and type inference mechanisms. |
---|