Détails logiciels:
Version: 0.1.2
Date de transfert: 20 Feb 15
Licence: Gratuit
Popularité: 89
Arcueid est une implémentation open source d'Arc le dialecte de Paul Graham de Lisp, dans la langue de C. Il est conçu pour agir comme interprète de C.
Arcueid est conçue pour être compatible avec la version 3.1 du logiciel Arc, il dispose d'une interface simple pour C, et est facilement utilisable comme langage d'extension et d'un interprète intégré.
Quoi de neuf dans cette version:
- Beaucoup de nouvelles fonctionnalités de cette version. Je ai finalement corrigé le bug de quasiquotes imbriqués qui a été pendant plus d'un an. Readline semble fonctionner mieux que ce qu'il avait en 0.1.1. Quelques corrections de bugs comme des problèmes de fuite de mémoire et des problèmes garbage collector. Nous avons maintenant retourné à l'aide de l'algorithme Huelsbergen-Winterbottom VCGC pour la collecte des ordures. La prise en charge de fichier est maintenant disponible même sur les systèmes 32 bits, fourni un soutien bignum est également disponible. Nous avons quelques expressions régulières sur la base du Plan 9 / Inferno bibliothèque d'expressions régulières (et ce est pour l'instant limitée similaire). La fonction de charge est désormais intégrée dans les sentiers d'interprétation et de charge sont désormais pris en charge. Et maintenant, il est un mode de script afin Arcueid peut être utilisé dans un tralala, par exemple il est maintenant possible d'exécuter un fichier exécutable avec le bit mis avec le contenu suivant
- #! / Usr / local / bin / Arcueid --script
- (PRN (+ 1 1))
- et que fait ce qu'on attend.
- Les expressions régulières sont fournis par le biais de la syntaxe de r /.../. Seulement trucs de base comme les classes de caractères, l'étoile de Kleene et PLUS opérateurs, le? l'opérateur, l'alternance, et groupes de capture sont pris en charge. Beaucoup de constructions / POSIX Perl sont toujours pas disponibles, mais assez vite le soutien de regexp devrait évoluer pour soutenir un grand nombre des caractéristiques les plus utiles. En espérant pouvoir bientôt ajouter des choses comme répétitions comptés, des abréviations de classe de caractères comme d, et les groupes non-capture. Pour utiliser les expressions régulières, ils peuvent être appliqués à cordes, par exemple:
- arc & gt; (R / (abc) (DEF) / & quot; zzzabcdefgh & quot;)
- (3 (& quot; abcdef & quot; & quot; abc & quot; & quot; def & quot;))
- qui retourne une liste avec la position du match, et une liste de tous les groupes de capture, en commençant par la chaîne entière correspondance par l'expression régulière. Retourne nil si l'expression rationnelle n'a pas réussi à égaler. Le = ~ macro peut être utilisée, qui $$ se lie à la position dans la chaîne du match obtenu, et de 0 $ à la partie de l'ensemble identifié, 1 $ à la première capture, et ainsi de suite, semblable à la façon dont Perl le fait, par exemple:
- arc & gt; (= ~ R / (abc) (DEF) / & quot; zzzabcdefgh & quot; (2 liste $ 1 $))
- (& quot; abc & quot; & quot; def & quot;)
- de charge peuvent être ajoutés à l'aide de la fonction de chemin de charge ajoutée, ce qui ajoute un répertoire à la liste chemin de charge LOADPATH *.
chemins
Commentaires non trouvées