Pkl, un nuevo lenguaje de programación de código abierto de Apple

Pkl

Pkl el nuevo lenguaje de programación de Apple

Hace poco se dio a conocer la noticia de que Apple ha lanzado un nuevo «lenguaje de configuración integrable» de código abierto, con la misión de facilitar las tareas de configuración, sin importar su tamaño o complejidad. Pkl (pronunciado como Pickle) fue introducido en su versión 0.25 como un lenguaje diseñado en torno a una estructura clave-valor similar a JSON, pero con características innovadoras destinadas a mejorar la experiencia de configuración

Pkl combina las características de un lenguaje declarativo fácil de entender con las funcionalidades avanzadas de los lenguajes de propósito general. El lenguaje admite anotaciones de tipo, clases, funciones, expresiones computacionales, condiciones y bucles.

Sobre Pkl

Pkl se puede utilizar para generar configuraciones estáticas en varios formatos, como JSON, YAML y XML, así como para crear módulos para procesar formatos de configuración específicos en aplicaciones de diversos lenguajes de programación. A diferencia de los lenguajes de programación tradicionales, Pkl se especializa en la configuración, ofreciendo una alternativa que aborda las limitaciones encontradas en formatos estáticos.

Estamos encantados de anunciar el primer lanzamiento de código abierto de Pkl (pronunciado Pickle ), un lenguaje de programación para producir configuraciones.

Cuando se piensa en configuración, es común pensar en lenguajes estáticos como JSON, YAML o Listas de propiedades. Si bien estos lenguajes tienen sus propios méritos, tienden a quedarse cortos cuando la configuración aumenta en complejidad. Por ejemplo, su falta de expresividad significa que el código se repite con frecuencia. Además, puede ser fácil cometer errores de configuración, porque estos formatos no proporcionan ninguna validación propia.

El equipo de Apple diseñó Pkl con la intención de proporcionar un lenguaje de configuración que combinara la simplicidad y la legibilidad de los formatos estáticos con la potencia y la flexibilidad de los lenguajes de programación de propósito general. Pkl está pensado para ser utilizado tanto para generar archivos de configuración estáticos en diversos formatos como para integrarse como una biblioteca en otras aplicaciones en ejecución.

El lenguaje proporciona herramientas flexibles para definir condiciones y verificar la exactitud de los valores, lo que permite identificar errores en la configuración final antes de su uso en la aplicación.

Los principios detrás de Pkl son claros y ambiciosos:

  1. Garantizar la Seguridad: Pkl busca detectar errores de validación antes de la implementación, proporcionando una capa adicional de seguridad en el proceso de configuración.
  2. Adaptabilidad a Diversos Casos de Uso: Desde las tareas más simples hasta las más complejas, Pkl está diseñado para adaptarse a una amplia gama de necesidades de configuración.
  3. Facilidad de Uso: Con las mejores integraciones IDE de su clase, Pkl se esfuerza por ser un placer de escribir, proporcionando una experiencia de desarrollo fluida y eficiente.

Pkl está diseñado para definir configuraciones y fomentar el modelo de configuración como código, además de que introduce una sintaxis familiar para los desarrolladores, que incluye características como clases, funciones, bucles y anotaciones de tipo, lo cual facilita en gran medida su adopción y aprendizaje, permitiendo a los usuarios centrarse en la lógica de configuración en lugar de en la complejidad del lenguaje en sí.

Por otra parte, cuenta con enlaces para integrar Pkl en aplicaciones Java, Kotlin, Go y Swift. Además, se propone un módulo por separado para la integración con el marco Spring. Estos enlaces permiten crear paquetes y módulos listos para usar con clases que manipulan la configuración descrita en la aplicación, basándose en la configuración en el lenguaje Pkl. Los paquetes de configuración se pueden publicar en repositorios e importar como dependencias, lo que facilita compartir el código Pkl entre diferentes proyectos.

Para los interesados en Pkl, deben saber que el kit de herramientas relacionado con Pkl está escrito en Kotlin y se ha publicado bajo la licencia Apache. Los complementos para trabajar con el código en el lenguaje Pkl están disponibles para los entornos de desarrollo IntelliJ, Visual Studio Code y Neovim. Además, se espera que el controlador LSP (Language Server Protocol) se publique en un futuro cercano.

Si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.


Sé el primero en comentar

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.