Sobre el proyecto
Ring es un lenguaje de programación dinámico multiparadigma de propósito general y práctico, diseñado para desarrollar aplicaciones, herramientas y lenguajes específicos de dominio. Admite los paradigmas imperativo, procedimental, orientado a objetos, declarativo (mediante estructuras anidadas), funcional, de metaprogramación y de programación natural. El lenguaje es portátil en MS-DOS, Windows, Linux, macOS, Android, WebAssembly y microcontroladores, y puede usarse para crear aplicaciones de consola, GUI, web, juegos y móviles.
Las características clave incluyen:
- **Baterías incluidas**: Enlaces de alta calidad para bibliotecas populares (por ejemplo, Allegro, LibSDL, RayLib, OpenGL, FreeGLUT, Tilengine, Qt3D).
- **Práctico**: Muchas bibliotecas (StdLib, WebLib, Natural Library, Games Engine) y el IDE de Ring (Ring Notepad, Form Designer) están escritos en el propio Ring.
- **Desarrollo de GUI**: Herramientas RAD para crear rápidamente aplicaciones GUI usando el patrón de diseño MVC; el mismo código fuente puede orientarse a escritorio, web y móvil.
- **Desarrollo de juegos**: Soporte de primera clase con enlaces nativos y un motor de juegos 2D simple que usa programación declarativa.
- **Desarrollo web**: Front-end mediante WebAssembly y back-end usando MVC con plantillas HTML y generación declarativa de HTML.
- **Desarrollo móvil**: Distribuir aplicaciones a Android, iOS, etc.
- **Herramientas de línea de comandos**: Crear rápidamente herramientas CLI; el Ring Package Manager es un ejemplo.
- **Implementación transparente**: Inspeccionar las etapas del compilador y el comportamiento en tiempo de ejecución de la VM.
- **Implementación visual**: Diseñado usando la herramienta de programación visual PWCT, que genera código ANSI C.
- **Gestión inteligente de memoria**: Determinista, segura, basada en ámbitos con análisis de escape y conteo de referencias opcional con detección de ciclos.
- **Sin GIL**: Los hilos pueden ejecutar instrucciones de Ring en paralelo.
- **Rendimiento**: Suficientemente rápido para muchas aplicaciones; extensiones en C/C++ para mayor velocidad.
Se proporcionan instrucciones de compilación para Windows, Ubuntu Linux y macOS. El lenguaje se distribuye bajo la Licencia MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.