LinuxParty
TrapC es una propuesta de extensión del lenguaje de programación C que busca abordar los problemas de seguridad de memoria presentes en C y C++. Desarrollado por Robin Rowe, exprofesor de ciencias de la computación y miembro de los comités de estándares de C y C++, TrapC tiene como objetivo eliminar comportamientos indefinidos y garantizar la seguridad en la gestión de memoria.
TrapC, una bifurcación del lenguaje C, se está desarrollando como una posible solución a los problemas de seguridad de la memoria que han afectado a los lenguajes C y C++", informa InfoWorld.
Pero también se está desarrollando un compilador llamado trapc "que pretende ser implementado como un compilador de ciberseguridad para el código C y C++, dijo el desarrollador Robin Rowe..."Para finales de este año, trapc será un compilador gratuito de código abierto similar a Clang... dijo Rowe.
TrapC tiene punteros que son seguros para la memoria, lo que aborda el problema de seguridad de la memoria con los dos lenguajes. Con TrapC, los desarrolladores escriben en C o C++ y compilan en TrapC, para la seguridad de la memoria...
Rowe presentó TrapC en una reunión de ISO C esta semana. Los desarrolladores pueden descargar un documento técnico de TrapC y ofrecer comentarios a Rowe. Según el documento técnico, la gestión de memoria de TrapC es automática y no puede perder memoria. Los punteros se gestionan durante su vida útil, no se recolectan basura. Además, TrapC reutiliza algunas características de seguridad de código de C++, en particular funciones miembro, constructores, destructores y la palabra clave new.
"Los punteros de memoria segura de TrapC no desbordarán el búfer y no se segmentarán", dijo Rowe en la reunión del organismo de normalización del Comité C de ISO, según el Register. "Cuando el código C se compila utilizando un compilador TrapC, todos los punteros se convierten en punteros de memoria segura y se comprueban".
En resumen, TrapC "es un lenguaje de programación derivado de C, con cambios para convertirlo en LangSec y Memory Safe", según ese documento técnico. "Para lograrlo, TrapC busca eliminar todo comportamiento indefinido en el lenguaje de programación C..."
"La startup TRASEC y la organización sin fines de lucro Fountain Abode tienen un compilador TrapC en desarrollo, llamado trapc ", agrega el documento técnico, y su misión es "permitir la recompilación del código C heredado en ejecutables que sean seguros por diseño y seguros por defecto, sin necesidad de mucha refactorización de código... Se espera que el compilador de ciberseguridad TRASEC trapc con razonamiento de código de IA se lance como software gratuito de código abierto en algún momento de 2025".
En noviembre, el Register ofreció algunos antecedentes sobre los orígenes de TrapC...
Una característica destacada de TrapC es su manejo automático de la memoria, lo que evita fugas y errores comunes como desbordamientos de búfer y accesos a memoria liberada. Los punteros en TrapC son gestionados automáticamente en cuanto a su tiempo de vida, eliminando la necesidad de recolección de basura. Además, TrapC reutiliza algunas características de seguridad de código de C++, como funciones miembro, constructores, destructores y la palabra clave 'new'.
El compilador asociado, llamado trapc, está siendo desarrollado por la startup TRASEC y la organización sin fines de lucro Fountain Abode. Se espera que este compilador esté disponible como software libre y de código abierto en algún momento de 2025.
Algunas de las características clave de TrapC incluyen:
-
Funciones printf() y scanf() que son seguras en cuanto a tipos, sobrecargables y con soporte integrado para JSON y localización.
-
Un tipo de dato 'decimal' basado en enteros, adecuado para transacciones financieras.
-
Compatibilidad ABI unidireccional con C, lo que permite que funciones de TrapC llamen a funciones C sin modificaciones.
-
Punteros con información de tipo en tiempo de ejecución (RTTI), lo que añade seguridad adicional al manejar punteros.
Aunque TrapC busca mantener una sintaxis y funcionalidad similar a C y C++, introduce restricciones como la eliminación de las palabras clave 'goto' y 'union' para mejorar la seguridad. Esto significa que ciertos patrones de programación presentes en C podrían requerir adaptaciones al migrar a TrapC.
En resumen, TrapC representa un esfuerzo por modernizar el lenguaje C, enfocándose en la seguridad de la memoria y la eliminación de comportamientos indefinidos, manteniendo al mismo tiempo la eficiencia y familiaridad que caracterizan a C y C++.

-
Programación
- ¿Puede TrapC solucionar problemas de seguridad de memoria en C y C++?
- Un EXE de 27 años se convirtió en Python en minutos. ¿Será la ingeniería inversa asistida por IA el próximo paso?
- Google informa que el tiempo de migración de código se reduce a la mitad con ayuda de IA
- ELIZA, el primer chatbot con inteligencia artificial del mundo, resucita después de 60 años
- Programar y depurar en un IDE para PHP con Eclipse, plugins PDT, xdebug y Remote debug
- Tutorial de C/C++, programar paso a paso, para Linux, Windows y Mac
- Gracias a la IA, el nuevo lenguaje de programación más popular es...
- Cómo instalar y utilizar Scikit-Learn en Linux
- Thomas E. Kurtz, coinventor de BASIC, muere a los 96 años
- Profesor de informática del MIT prueba el impacto de la IA en la formación de programadores
- Lanzamiento del IDE de código abierto Qt Creator 14 con soporte para complementos basados en Lua
- Plantillas para Joomla - Episodio 1: Plantillas, marcos y clubes o no...
- Este es el mejor libro que he visto para aprender a programar en Python en castellano desde cero, gratis y online
- ¿Deberían los niños seguir aprendiendo a programar en la era de la IA?
- La 'obsolescencia' de VBScript confirmada por Microsoft y su eventual eliminación de Windows