Ceci est un développement, en cours d'exécution et de l'environnement de la compilation pour le langage Perl 6 de programmation.
Utilise le Parrot VM pour compiler le code
Ce qui est nouveau dans cette version:.
- Laissez Buf.AT-POS pour retourner une l-value.
- Mettre en œuvre la méthode ^ foo ($) {...} syntaxe.
- Mise en œuvre PairMap (le cas simple seulement, pour l'instant).
- .antipairs implémentées (paires avec valeur = & # X3e; clés).
- Mise en œuvre pairup pour créer des paires de listes.
- LEXICALE Implémenté, Outers et CALLERS pseudo-paquets
- Ajouter array [T], utilisable pour int natif / num (MoarVM uniquement pour l'instant)
- D'autres améliorations indigènes, par exemple mon int $ a; $ A ++
- Mettre en œuvre IO :: Path.resolve sur r-m / POSIX
Quelles sont les nouveautés dans la version 2015,06:
- Autoriser Buf.AT-POS pour retourner une l-value .
- Mettre en œuvre la méthode ^ foo ($) {...} syntaxe.
- Mise en œuvre PairMap (le cas simple seulement, pour l'instant).
- .antipairs implémentées (paires avec valeur = & # X3e; clés).
- Mise en œuvre pairup pour créer des paires de listes.
- LEXICALE Implémenté, Outers et CALLERS pseudo-paquets
- Ajouter array [T], utilisable pour int natif / num (MoarVM uniquement pour l'instant)
- D'autres améliorations indigènes, par exemple mon int $ a; $ A ++
- Mettre en œuvre IO :: Path.resolve sur r-m / POSIX
Quelles sont les nouveautés dans la version 2015,03:
- Autoriser Buf.AT-POS pour retourner une l-value .
- Mettre en œuvre la méthode ^ foo ($) {...} syntaxe.
- Mise en œuvre PairMap (le cas simple seulement, pour l'instant).
- .antipairs implémentées (paires avec valeur = & # X3e; clés).
- Mise en œuvre pairup pour créer des paires de listes.
- LEXICALE Implémenté, Outers et CALLERS pseudo-paquets
- Ajouter array [T], utilisable pour int natif / num (MoarVM uniquement pour l'instant)
- D'autres améliorations indigènes, par exemple mon int $ a; $ A ++
- Mettre en œuvre IO :: Path.resolve sur r-m / POSIX
Ce qui est nouveau dans la version 2015,01:
- De nombreuses améliorations à interop Java pour le backend JVM
- Nouvelle façon simple de créer un hachage de l'objet: {}
- Substitution supporte maintenant l'affectation méta-op, par exemple s [& # x5C; d +] + = 2
- Beaucoup de mémoire et de CPU optimisations
- Supply.for dépréciée en faveur de Supply.from-list
Ce qui est nouveau dans la version 2014,08:.
- De nombreuses optimisations dans les deux Rakudo et les machines virtuelles sous-jacentes
- Si le envar LOLLY est réglé, avoir (;;), [;;], etc., se transformer en Lols. Sinon, parsefail
- Ajout SEQ (a; b) pour émuler l'ancien comportement de (a, b)
- Make & infix: & # x3C; X3e xx & #; plusieurs fois plus rapide
- affectation de tranche multi-dimensionnelle fixe
- Affectation d'un seul hachage détaillée à un hachage est maintenant DECONSEILLE (my% h = {...})
- subbuf-rw specced et mis en œuvre
- L'opérateur tr /// est mis en œuvre et a la valeur de retour correcte
- Amélioration de la manipulation pour MoarVM backend chaîne
- Tous les backends permettent maintenant C pointeur arithmétique et la coulée de pointeurs vers Perl 6 types (cette fonctionnalité est exposée par NativeCall)
- fixe, Äòfail 'il imprime aussi un backtrace
- IO :: Socket :: Async fonctionne maintenant également sur JVM
- Ajout ou mis à jour de nombreuses méthodes d'approvisionnement: acte, lot, classer, Channel, classer, delay, elems, plat, saisir, dernier, vivre, max, min, minmax, merge, migrer, Promise, réduire, inverser, rotor, sorte, squish, stable, commencer, uniq, attendez, zip
- Ajouté IO :: Notification.watch_path / IO :: Chemin :: montre qui retourne un stock de modifications du système de fichiers
Ce qui est nouveau dans la version 2014,04:
- NativeCall passe tous ses tests sur tous les backends
- S17 (concurrency) maintenant dans MoarVM (sauf synchronisation caractéristiques connexes)
- Vainqueur {plus @channels {...}} fonctionne maintenant
- univals implémentées (), .unival et .univals (sur MoarVM)
- .minpairs Ajouté / .maxpairs sur (Set | Sac | Mix) Hash
- la mise en œuvre de Naive & quot; est mis en cache & quot; trait sur Routines
Ce qui est nouveau dans la version 2014,03:
- & quot; faire & quot; ne détaille ses arguments.
- pour-boucles au niveau des statementlist sont maintenant coulé par défaut.
- Une meilleure analyse des unspaces et des codes de mise en forme à l'intérieur des blocs Pod.
- Fix pour pour-boucles pour être correctement paresseux
- De nombreux parsing Pod et mise en forme
- @ comme raccourci pour @ $,% comme raccourci pour% $
- réductions Liste infixes aplatissent plus
- De nombreuses suggestions de compilateur
améliorations
améliorations
Ce qui est nouveau dans la version 2014,01:
- Le sous et la méthode eval sont maintenant orthographié EVAL
- Numeric.narrow de contraindre à la plus étroite possible de type
- peut maintenant fournir des blocs avec de multiples arguments comme paramètres de séquence
- Les appels de méthode et hachage / list accès Nil donne Nil
Ce qui est nouveau dans la version 2013,12:
- Le Quelle que soit Star (*) travaille maintenant à l'intérieur des opérateurs de la chaîne comme comparaisons.
- attributs privés de rôles sont désormais visibles dans les classes qu'ils appliquent à.
- Mémoire et de la vitesse des améliorations pour ListIter et List.combinations, respectivement.
- Amélioration de l'exécution de regexes.
Ce qui est nouveau dans la version 2013,11:
- Ordre :: Augmentation / diminution sont obsolètes. S'il vous plaît utiliser Ordre :: Moins / Plus.
- espaces Leading est ignoré pour: sigspace
- détection de motif Better null dans regexes
- amélioré run () / shell (), ces retours Proc :: Etat-objets maintenant
- Le & quot; gethostname & quot; fonction implémentée
Ce qui est nouveau dans la version 2013,10:
- postcircumfix {} et [] sont maintenant mis en œuvre en tant que sous-marins multiples plutôt que de méthodes multiples.
- Ajout du support pour & quot;. Est DECONSEILLE & quot ;, le rendant facile pour les adopteurs précoces pour rester à jour
- Suivi des spécifications multiples modifications pour diverses classes de conteneurs.
- réduire considérablement la création d'objet lors de Regex analyse.
- Diverses corrections de portabilité.
- qx // et run () maintenant auto-citation correctement.
- Autoriser # `[...] -. Commentaires de style dans regexes
Ce qui est nouveau dans la version 2013,09:.
- argument candidat pour bénir enlevé (par changement de spec)
- @ a.VAR.name et% h.VAR.name mis en œuvre.
- Le $ var. ++ Et $ var. () Syntaxes travail.
- Bases de tr /// mis en œuvre.
Ce qui est nouveau dans la version 2013,08:
- Affectation Nil restaure la valeur par défaut
- Buf est maintenant un rôle, et les objets Buf sont immuables.
- printf gère désormais correctement les grands entiers
- Correction de la gestion des heredocs dentelées
- dir () est maintenant paresseux
Ce qui est nouveau dans la version 2013.05:
- AutoThread & quot; aucun & quot; et & quot; tout & quot; jonctions avant & quot; tout & quot; et & quot; un & quot;
- erreur utile si vous écrivez & quot; else if & quot; / & quot; elif & quot; au lieu de & quot; elsif & quot;
- Throw exception si une plage est utilisée comme critère de Range
- Correction ordre argument IO.seek
- Wrap bas niveau des objets VM dans ForeignCode, permettant perl6 OO les invite
- Pour les boucles sont impatients à nouveau
- Ajout d'un lien et lien symbolique vers IO
- Ajout Capture.Bool ()
- Améliorations à JETER ()
- Divers optimisations dans l'optimiseur et le runtime
- SmartMatch contre la liste prend désormais en charge Quel que soit wildcards
- IO :: Spec, un port de fichier de Perl 5 :: Spec
- Regex caractères spéciaux peuvent être utilisés comme délimiteurs
- Autoriser tranche avec: existe Adverbe sur hashs
- Ajout 125 ouverture supplémentaire / fermeture support paires
Ce qui est nouveau dans la version 2013.02:
- l'optimisation Compiler temps de certains cas de jonctions en contexte booléen
- IO :: Socket.get travaille maintenant à nouveau avec des caractères non-ASCII
- pliage constant pour les routines marquées comme, IEA pur »
- les variables nativement dactylographiées et de meilleurs rapports d'erreur dans le REPL
- accélérer eq-comparaison des bufs
Ce qui est nouveau dans la version 2013,01:
- Rôle :: meth :: $ obj.Some () passe maintenant $ obj correcte
- try / catch retourne maintenant Nil lorsque le CATCH est déclenchée, plutôt que l'exception; cela apporte en conformité avec essai sans CATCH
- quel que soit-étoile d'épissage maintenant mis en œuvre
- pouvez maintenant importer multis avec le même nom de modules différents, à condition que toutes les répartiteurs sont onlystar
cas
Ce qui est nouveau dans la version 2012.12:
- Parse erreurs sont beaucoup améliorées, et suivre les MST, la norme analyseur,
- beaucoup plus étroitement; ils sont des informations plus précises et plus est donnée
- Rakudo conserve maintenant l'analyse après quelques erreurs moins graves
- De meilleures erreurs pour diverses défaillances parse
- Le autothreader de jonction est maintenant un ordre de grandeur plus rapide
- versions des opérateurs Set et Bag Texas (ASCII) mis en œuvre
- Paires emboîtées donnent maintenant la sortie .perl correcte
Ce qui est nouveau dans la version 2012.11:
- traits de priorité liés implémentées (équiv, plus souple, plus serré, assoc )
- Perl 6 grammaire NFA sont pré-calculées, économisant un peu de travail à chaque invocation; ce rasé environ 10% sur le temps nécessaire pour exécuter les spectests
- regexes et citations ont un meilleur support pour délimiteurs sélectionnés par l'utilisateur
- FIRST / NEXT / LAST peut maintenant être utilisé dans tous les types de boucle (auparavant limité à des)
Ce qui est nouveau dans la version 2012.10:
- Le cas de la méthode des poignées trait
- Le & # x3C; - & # X3e; lambda, les paramètres des valeurs par défaut à rw
- Le: dba modificateur dans regexes
- Le formulaire de radix: 60 [24, 59, 59]
- Amélioration de la couverture de Perl 5 regexes lorsque le modificateur de P5 est utilisé
- Corriger l'analyse de délimiteurs de citation imbriqués
- Attributs de portée sont maintenant visibles à l'intérieur d'un eval
Ce qui est nouveau dans la version 2012.09:
- support macro Basic
- Support pour Perl 5! (M: P5 /.../) syntaxe regex
- Les noms de type indirect dans les déclarations de routine et de type sont pris en charge.
- Nous soutenons le & quot; est export & quot; trait sur les déclarations constantes.
- Le & quot; est caché & quot; et les traits de base sont pris en charge.
- Str.wordcase, est-prime et expmod sont mis en œuvre.
- Compilation est légèrement plus rapide que jamais.
Ce qui est nouveau dans la version 2012.08:
- Variables préfixé par | ou & # x5C; dans les signatures sont maintenant sigilless, par mises à jour de la spécification Perl 6.
- circularité dans le module de chargement sont maintenant détectés.
- Une meilleure gaine, permettant à un plus large éventail de routines pour être inline.
- Str.bytes et lcfirst ont été supprimés. Le builtin de TCLC a été ajouté.
- , Äòabs 'est maintenant un sous-programme normal au lieu d'un opérateur préfixe.
- IO :: File et IO :: Dir ont été supprimés.
Ce qui est nouveau dans la version 2012.07:
- Built-in métaobjets (par exemple métamodèle de ClassHOW) maintenant hériter de préférence
- & ouvert supporte maintenant l': enc / option: encodage
- Les types anonymes de sous-ensemble (par exemple, Äòsubset :: de Int où {$ _ & # x3e; 0} ')
- Rakudo étoiles est désormais livré avec le modèle :: Module Mojo
Ce qui est nouveau dans la version 2012.06:
- transitive correspondant le plus long-jeton dans protoregexes
- La plus longue correspondance jeton pour alternances
- Liste améliorée et la manipulation .map, y compris les correctifs de la paresse et l'amélioration des performances
- Peut utiliser une liste d'arguments avec besoin
- Compiler erreurs de temps en modules chargés montrent maintenant un backtrace module de chargement
- Chaîne à la conversion du numéro reconnaît maintenant la notation radix
- Le & fonctions push et & unshift peut maintenant autovivify
Ce qui est nouveau dans la version 2012.05:.
- Rakudo maintenant comprend également le module lib.pm
Ce qui est nouveau dans la version 2012.04:
- Une grande amélioration du temps de démarrage
- Beaucoup plus robuste module de précompilation
- autovivification pour les tableaux et les hachages est mis en œuvre à nouveau
- Beaucoup de phasers comme PRE, POST et REDO sont maintenant mises en œuvre
- Amélioration du support pour l'appel de fonctions C et structs de modélisation et des tableaux
- via NativeCall.pm6
- comprend maintenant modules URI, LWP :: Simple, jsonrpc et Bailador (un port Perl 6
- de Dancer)
Qu'est-ce que les nouvelles dans la version 2012.02:
- Le type FatRat est mis en œuvre, et Rat arithmétiques maintenant correctement par défaut Num si le dénominateur est trop grand
- hashes d'objets sont mis en œuvre, et peuvent être déclarées avec la syntaxe my% h {Tout} (pour un hachage avec des touches de type Any)
- Le & # x3C; Certains :: rulename & # X3e :: grammaire; la syntaxe est maintenant mis en œuvre dans regexes; & # X3C; foo & # X3e; peut également être utilisé pour appeler les règles lexicales prédéclaré
- La Int ($ x) syntaxe de contrainte est mise en œuvre
- & renommer et & copie sont maintenant mis en œuvre
- Amélioration de la réduction méta-opérateur (ordre de grandeur plus rapide, certains problèmes d'analyse fixe)
- Le & # x3C; X3e avant & #; regex intégré est maintenant disponible, et les matchs quel que soit le dernier match réussie appariées
- Une méthode match.make de $ (...) est disponible pour définir l'AST pour un objet de correspondance ne sont pas stockées dans la variable $ /
- backtraces Amélioration
Ce qui est nouveau dans la version 2012.01:
- Grandement amélioré les performances dans de nombreux domaines. Pour certains scripts, cette version propose un ordre d'amélioration des performances de l'ampleur.
- Support POD6, y compris la variable $ = POD pour rendre le POD disponible à l'exécution et une option de -doc pour obtenir à la POD
- Le type Int a maintenant de grandes sémantique entiers
- Les premiers travaux sur les types natifs, qui peut être utilisé pour écrire beaucoup plus efficace code
- protoregexes conduit LTM-
- Meta-programmation de soutien, y compris personnalisés méta-classes, remplaçant la méthode d'expédition et beaucoup plus
- La gestion des exceptions est beaucoup plus proche de la spécification, et donc beaucoup plus utile
- La gestion améliorée de l'emballage, y compris véritable compilation séparée, packages lexicales et package mieux imbriqué manipulation
- Un optimiseur, ce qui améliore le code généré, ainsi que la capture d'une série de questions au moment de la compilation qui, auparavant, fait à l'exécution
- séquences de Backslash dans les classes de caractères
- méthodes écrasa de rôles sont maintenant nécessaires, fournissant des fonctionnalités de style d'interface
Ce qui est nouveau dans la version 2011.04:
- Modules MiniDBI, forme, HTTP :: Daemon, Yaml et Module :: Tools sont supprimés dans cette version.
- De nouveaux modules Pies (y compris panda, le programme d'installation du module) et HTTP :: Serveur :: Simple ont été ajoutés.
- Nouvelle implémentation de IO :: Socket :: INET, avec le soutien de base IPv6
- -p et -n de ligne de commande des options sont maintenant disponibles
- Beaucoup de nouvelles améliorations IO, y compris les méthodes liées à stat-
- Nouveau commutateur de ligne de commande -ll-backtrace pour l'impression PIR traces de pile de niveau
- la mise en œuvre préliminaire de Infix, Äòorelse '
- Ajout Str.indent
- Bugfixes à la négation méta opérateur
- Support pour la conjugaison complexe
Exigences :
- compilateur C
- Perl 5.8 ou supérieur
- C bibliothèque
- Parrot
Commentaires non trouvées