Bonjour à tous;
Je m’appelle Rayan, j’ai découvert la programmation à l’âge de 14 ans en jouant à Minecraft. Depuis j’expérimente et j’essaie de progresser au maximum dans ma passion!
J’adore l’eco système de .NET, .NET CORE ainsi ayant des connaissances et une bonne maitrise du langage C#, je me suis dit que je continuerai à travailler avec lui au maximum ! Cependant il y a toujours des cas où changer de langage peut être une bonne solution mais dans beaucoup de cas ce n’est pas réellement nécessaire le simple fait de changer d’algorithmes, de faire attention aux listes, dictionnaire et bien configurer son GC peut aider les performances de manière considérable mais il existe des cas où ce n’est pas suffisant, ou la taille du binaire est trop imposante, ou la vitesse générale n’est pas suffisante mais dans ce genre de cas j’aimerais également avoir une autre solution plutôt que de changer de langage.
J’ai cherché longuement et fait la rencontre de Tyler un freelance américain travaillant principalement en C# et ayant également pour souhait que le C# puisse être utilisé avec un niveau inférieur d’abstraction et d’écrire du code non managé si besoin. C’est ainsi qu’est né : PearlCLR ; Je ne suis qu’un simple contributeur mais je me donne à fond pour que ce projet devienne un projet d’envergure et afin de sortir une version stable
Pourquoi utiliser PearlCLR ?
Cela permet la programmation de bas niveau, une variété de techniques et de concepts d’optimisation ( l’application de SIMD et de la vectorisation automatique, etc ). PearlCLR est fondamentalement un transpileur de MSIL en LLVM IR, MSIL et LLVM IR sont similaires, mais utilise des technologies et un compilateur différents. L’objectif de PearlCLR est de permettre à C# d’être considéré comme un langage de programmation de bas niveau tel que Rust, C, C ++ et DLang. Cela viole la plupart des conventions de la CLI (Common Language Infrastructure) et laisse quasiment la plupart des détails aux développeurs pour qu’ils fassent ce qu’ils veulent.
Grâce à PearlCLR, les développeurs C# ne seront plus obligés d’utiliser C++ si cela leur apporte plus de problèmes que de gains et permettra au débutant de se focaliser sur l’apprentissage du C# tout en leur garantissant la possibilité de faire ce qu’ils veulent.
Comment contribuer ?
Un dépôt github est actuellement mis en place il disparaitra sûrement pour laisser place à une organisation !
Mais nous acceptons avec joies vos issues et PR
Comment apprendre à utiliser C# dans un cadre bas niveau ?
Tyler écrit un livre en anglais permettant d’apprendre à se servir de C# dans un contexte bas niveau ! Je contribue également à la réalisation de ce livre en corrigeant certains exemples de code et en proposant une version française du livre !
Conclusion
La PearlCLR avance à grands pas ! De plus je créerai un billet prochainement pour vous montrer la PearlCLR en action !
Le projet attend avec joies vos PR et commentaires les Z'