19 points par GN⁺ 2024-05-23 | 5 commentaires | Partager sur WhatsApp
  • Un langage de programmation moderne, sûr au niveau des types et sûr à l’exécution, compilé en Bash
    • Il aide à écrire des scripts en traitant de nombreux bugs et erreurs pendant la compilation.
  • Fonctionnalités principales
    • Syntaxe moderne : de nombreuses fonctionnalités du langage paraîtront familières, et il est possible de l’apprendre bien plus vite que Bash à partir de zéro.
    • Sécurité à l’exécution : l’un des composants majeurs qui manque aux scripts shell classiques, permettant d’attraper de nombreux bugs dès la compilation.
    • Sécurité des types : toute commande Bash ou fonction susceptible d’échouer doit être traitée d’une manière ou d’une autre.
  • Peut être utilisé comme solution portable sur macOS et Linux.

L’avis de GN⁺

  • Les atouts d’Amber
    • Amélioration de la productivité des développeurs : grâce à sa syntaxe moderne et à la sécurité des types, les développeurs peuvent écrire des scripts plus rapidement et plus sûrement.
    • Réduction des bugs : de nombreux bugs peuvent être détectés à la compilation, ce qui réduit les erreurs à l’exécution.
  • Points à considérer
    • Courbe d’apprentissage : pour les auteurs de scripts Bash existants, il peut falloir du temps pour assimiler la nouvelle syntaxe et les nouveaux concepts.
    • Problèmes de compatibilité : des problèmes de compatibilité peuvent survenir avec certains scripts Bash.
  • Projets similaires
    • Fish Shell : un autre langage de scripting shell offrant une syntaxe conviviale et des fonctionnalités puissantes.
    • Zsh : un shell qui offre davantage de fonctionnalités et de plugins que Bash, et que beaucoup de développeurs préfèrent.
  • Éléments à prendre en compte lors de l’adoption
    • Migration des scripts existants : il faut tenir compte du temps et des efforts nécessaires pour migrer les scripts Bash existants vers Amber.
    • Support de la communauté : lors de l’adoption d’un nouveau langage, il est important de vérifier la qualité du support de la communauté et de la documentation.

5 commentaires

 
cometkim 2024-05-27

Ça me fait penser à Batsh, haha.

 
kandk 2024-05-24

C’est sympa, ça !

 
coremaker 2024-05-24

On a peut se demander si, sous cette forme, il ne vaudrait pas mieux parler de transpileur que de compilateur.

 
secret3056 2024-05-24

Je pense la même chose, mais on dirait qu’aujourd’hui on appelle tout des compilateurs.
Même le compilateur TypeScript (?) est appelé tsc, et tout ça...

 
GN⁺ 2024-05-23
Avis Hacker News

Résumé d’un recueil de commentaires Hacker News

  • Compatibilité entre Bash et POSIX sh

    • Ce serait préférable que ce soit un outil compatible avec POSIX sh plutôt qu’un outil pour écrire du Bash. Comme MJML pour rédiger des e-mails HTML, il faudrait un outil qui réduise la complexité de Bash.
  • Avis sur la transpilation

    • L’idée de transpiler vers Bash est intéressante. Le processus d’installation est appréciable par sa simplicité.
  • Sous-processus et gestion des échecs

    • Il faudrait une meilleure approche pour les sous-processus et la gestion des échecs. La méthode présentée dans la documentation semble insuffisante. Il n’y a aucune mention de la propagation des codes de sortie dans les pipelines.
  • Tâches DevOps complexes

    • Il serait utile d’utiliser Bash pour des tâches DevOps complexes. Mais à cause des limites de Bash, il est contraignant de devoir aussi utiliser des outils comme jq, sed et awk. Un outil comme Amber pourrait résoudre ce problème.
  • La sortie générée par Amber

    • La sortie générée par Amber manque de cohérence et de lisibilité. La plupart des sorties de compilateurs sont difficiles à lire pour un humain, mais Amber n’offre pas encore d’avantages suffisants pour justifier ce sacrifice de lisibilité.
  • Utilisation sur des systèmes embarqués

    • Amber semble pouvoir être utile pour gérer une logique complexe sur des systèmes embarqués. Dans des environnements où seul Bash est disponible, cela pourrait constituer une meilleure alternative.
  • Les problèmes de Bash

    • Les pipelines et les sous-shells sont lents en Bash. Même de simples conditions sont transformées de manière complexe. Il y a aussi des problèmes de compatibilité de version avec les outils CLI externes. Et il est faux de dire qu’on ne peut pas imbriquer les tableaux.
  • L’importance d’apprendre Bash

    • Il est important d’apprendre Bash. Il peut être plus efficace d’en maîtriser les bases que d’apprendre une nouvelle alternative.
  • Le problème des appels à des programmes externes

    • Appeler des programmes externes pour des tâches simples est inefficace. Il serait préférable que cela compile en Bash pur.
  • Confusion avec Amber Smalltalk

    • Il y a eu une confusion à cause du même nom qu’Amber Smalltalk. Ce nouveau langage utilise le même nom.