Permalink
Browse files

Perlito version 5.0

  • Loading branch information...
1 parent 37138b6 commit c60fbf8282152be0598e47646b0e83b6ffeeeecf @fglock committed Jul 19, 2010
View
@@ -1,4 +1,5 @@
-(5.0)
+5.0 2010-07-19
+- Python backend bootstrap.
- use variable assignment instead of binding - that is, use '=' instead of ':='
- 'use' - all backends can now use Test.pm
- 'elsif'
View
22 README
@@ -1,8 +1,26 @@
MiniPerl6 "Perlito" compiler
-- main Perlito repository: http://github.com/fglock/Perlito
+ This is Perlito, a compiler that implements a subset of Perl 6.
-- main Project web page: http://www.perlito.org
+Backends
+
+ Perlito can compile Perl 6 programs into one of the 'backend'
+ languages:
+
+ Go, Lisp, Perl 5, Javascript, and Python 2.
+
+Web
+
+ Main Perlito repository: http://github.com/fglock/Perlito
+
+ Main Project web page: http://www.perlito.org
+
+ Run Perlito online, in the browser: http://perlcabal.org/~fglock/perlito.html
+
+Source code
+
+ The source code for Perlito can be found in the 'lib' directory.
+ Perlito is written in Perl 6.
Go backend
View
8 TODO
@@ -44,6 +44,10 @@ MiniPerl6 in Parrot
- fix die() parameter handling
+MiniPerl6 in Python
+
+- module loading uses mangled filenames (with underlines); it should use dot-separated names instead.
+
Missing Backends
- Haskell
@@ -103,3 +107,7 @@ Semantics
- @a.values and %a.keys return Array (not List)
this is internally consistent with MiniPerl6, but it doesn't match the Perl 6 spec
+- In Perlito, @a = [] initializes @a to empty Array.
+ In rakudo, this creates an array with an array inside.
+ I don't know if this is a Perlito or a Rakudo bug.
+
@@ -14,7 +14,7 @@
//
// COPYRIGHT
//
-// Copyright 2009 by Flavio Soibelmann Glock and others.
+// Copyright 2009, 2010 by Flavio Soibelmann Glock and others.
//
// This program is free software; you can redistribute it and/or modify it
// under the same terms as Perl itself.
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
View
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
View
@@ -1,4 +1,4 @@
-# Do not edit this file - Generated by MiniPerl6 4.1
+# Do not edit this file - Generated by MiniPerl6 5.0
use v5;
use strict;
use MiniPerl6::Perl5::Runtime;
@@ -1,10 +1,10 @@
-// Do not edit this file - Generated by MiniPerl6 4.1
+// Do not edit this file - Generated by MiniPerl6 5.0
// class Rul
if (typeof Rul != 'object') {
Rul = function() {};
Rul = new Rul;
Rul.f_isa = function (s) { return s == 'Rul' };
- Rul.f_perl = function () { return '::Rul(' + Main._dump(this) + ')' };
+ Rul.f_perl = function () { return 'Rul.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul;
@@ -19,7 +19,7 @@ if (typeof Rul$Quantifier != 'object') {
Rul$Quantifier = function() {};
Rul$Quantifier = new Rul$Quantifier;
Rul$Quantifier.f_isa = function (s) { return s == 'Rul::Quantifier' };
- Rul$Quantifier.f_perl = function () { return '::Rul::Quantifier(' + Main._dump(this) + ')' };
+ Rul$Quantifier.f_perl = function () { return 'Rul::Quantifier.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$Quantifier;
@@ -60,7 +60,7 @@ if (typeof Rul$Or != 'object') {
Rul$Or = function() {};
Rul$Or = new Rul$Or;
Rul$Or.f_isa = function (s) { return s == 'Rul::Or' };
- Rul$Or.f_perl = function () { return '::Rul::Or(' + Main._dump(this) + ')' };
+ Rul$Or.f_perl = function () { return 'Rul::Or.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$Or;
@@ -86,7 +86,7 @@ if (typeof Rul$Concat != 'object') {
Rul$Concat = function() {};
Rul$Concat = new Rul$Concat;
Rul$Concat.f_isa = function (s) { return s == 'Rul::Concat' };
- Rul$Concat.f_perl = function () { return '::Rul::Concat(' + Main._dump(this) + ')' };
+ Rul$Concat.f_perl = function () { return 'Rul::Concat.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$Concat;
@@ -112,7 +112,7 @@ if (typeof Rul$Subrule != 'object') {
Rul$Subrule = function() {};
Rul$Subrule = new Rul$Subrule;
Rul$Subrule.f_isa = function (s) { return s == 'Rul::Subrule' };
- Rul$Subrule.f_perl = function () { return '::Rul::Subrule(' + Main._dump(this) + ')' };
+ Rul$Subrule.f_perl = function () { return 'Rul::Subrule.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$Subrule;
@@ -142,7 +142,7 @@ if (typeof Rul$Var != 'object') {
Rul$Var = function() {};
Rul$Var = new Rul$Var;
Rul$Var.f_isa = function (s) { return s == 'Rul::Var' };
- Rul$Var.f_perl = function () { return '::Rul::Var(' + Main._dump(this) + ')' };
+ Rul$Var.f_perl = function () { return 'Rul::Var.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$Var;
@@ -168,7 +168,7 @@ if (typeof Rul$Constant != 'object') {
Rul$Constant = function() {};
Rul$Constant = new Rul$Constant;
Rul$Constant.f_isa = function (s) { return s == 'Rul::Constant' };
- Rul$Constant.f_perl = function () { return '::Rul::Constant(' + Main._dump(this) + ')' };
+ Rul$Constant.f_perl = function () { return 'Rul::Constant.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$Constant;
@@ -194,7 +194,7 @@ if (typeof Rul$Dot != 'object') {
Rul$Dot = function() {};
Rul$Dot = new Rul$Dot;
Rul$Dot.f_isa = function (s) { return s == 'Rul::Dot' };
- Rul$Dot.f_perl = function () { return '::Rul::Dot(' + Main._dump(this) + ')' };
+ Rul$Dot.f_perl = function () { return 'Rul::Dot.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$Dot;
@@ -217,7 +217,7 @@ if (typeof Rul$SpecialChar != 'object') {
Rul$SpecialChar = function() {};
Rul$SpecialChar = new Rul$SpecialChar;
Rul$SpecialChar.f_isa = function (s) { return s == 'Rul::SpecialChar' };
- Rul$SpecialChar.f_perl = function () { return '::Rul::SpecialChar(' + Main._dump(this) + ')' };
+ Rul$SpecialChar.f_perl = function () { return 'Rul::SpecialChar.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$SpecialChar;
@@ -243,7 +243,7 @@ if (typeof Rul$Block != 'object') {
Rul$Block = function() {};
Rul$Block = new Rul$Block;
Rul$Block.f_isa = function (s) { return s == 'Rul::Block' };
- Rul$Block.f_perl = function () { return '::Rul::Block(' + Main._dump(this) + ')' };
+ Rul$Block.f_perl = function () { return 'Rul::Block.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$Block;
@@ -269,7 +269,7 @@ if (typeof Rul$InterpolateVar != 'object') {
Rul$InterpolateVar = function() {};
Rul$InterpolateVar = new Rul$InterpolateVar;
Rul$InterpolateVar.f_isa = function (s) { return s == 'Rul::InterpolateVar' };
- Rul$InterpolateVar.f_perl = function () { return '::Rul::InterpolateVar(' + Main._dump(this) + ')' };
+ Rul$InterpolateVar.f_perl = function () { return 'Rul::InterpolateVar.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$InterpolateVar;
@@ -295,7 +295,7 @@ if (typeof Rul$NamedCapture != 'object') {
Rul$NamedCapture = function() {};
Rul$NamedCapture = new Rul$NamedCapture;
Rul$NamedCapture.f_isa = function (s) { return s == 'Rul::NamedCapture' };
- Rul$NamedCapture.f_perl = function () { return '::Rul::NamedCapture(' + Main._dump(this) + ')' };
+ Rul$NamedCapture.f_perl = function () { return 'Rul::NamedCapture.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$NamedCapture;
@@ -324,7 +324,7 @@ if (typeof Rul$Before != 'object') {
Rul$Before = function() {};
Rul$Before = new Rul$Before;
Rul$Before.f_isa = function (s) { return s == 'Rul::Before' };
- Rul$Before.f_perl = function () { return '::Rul::Before(' + Main._dump(this) + ')' };
+ Rul$Before.f_perl = function () { return 'Rul::Before.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$Before;
@@ -350,7 +350,7 @@ if (typeof Rul$NotBefore != 'object') {
Rul$NotBefore = function() {};
Rul$NotBefore = new Rul$NotBefore;
Rul$NotBefore.f_isa = function (s) { return s == 'Rul::NotBefore' };
- Rul$NotBefore.f_perl = function () { return '::Rul::NotBefore(' + Main._dump(this) + ')' };
+ Rul$NotBefore.f_perl = function () { return 'Rul::NotBefore.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$NotBefore;
@@ -376,7 +376,7 @@ if (typeof Rul$NegateCharClass != 'object') {
Rul$NegateCharClass = function() {};
Rul$NegateCharClass = new Rul$NegateCharClass;
Rul$NegateCharClass.f_isa = function (s) { return s == 'Rul::NegateCharClass' };
- Rul$NegateCharClass.f_perl = function () { return '::Rul::NegateCharClass(' + Main._dump(this) + ')' };
+ Rul$NegateCharClass.f_perl = function () { return 'Rul::NegateCharClass.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$NegateCharClass;
@@ -396,7 +396,7 @@ if (typeof Rul$CharClass != 'object') {
Rul$CharClass = function() {};
Rul$CharClass = new Rul$CharClass;
Rul$CharClass.f_isa = function (s) { return s == 'Rul::CharClass' };
- Rul$CharClass.f_perl = function () { return '::Rul::CharClass(' + Main._dump(this) + ')' };
+ Rul$CharClass.f_perl = function () { return 'Rul::CharClass.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$CharClass;
@@ -416,7 +416,7 @@ if (typeof Rul$Capture != 'object') {
Rul$Capture = function() {};
Rul$Capture = new Rul$Capture;
Rul$Capture.f_isa = function (s) { return s == 'Rul::Capture' };
- Rul$Capture.f_perl = function () { return '::Rul::Capture(' + Main._dump(this) + ')' };
+ Rul$Capture.f_perl = function () { return 'Rul::Capture.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$Capture;
@@ -436,7 +436,7 @@ if (typeof Rul$CaptureResult != 'object') {
Rul$CaptureResult = function() {};
Rul$CaptureResult = new Rul$CaptureResult;
Rul$CaptureResult.f_isa = function (s) { return s == 'Rul::CaptureResult' };
- Rul$CaptureResult.f_perl = function () { return '::Rul::CaptureResult(' + Main._dump(this) + ')' };
+ Rul$CaptureResult.f_perl = function () { return 'Rul::CaptureResult.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$CaptureResult;
@@ -456,7 +456,7 @@ if (typeof Rul$After != 'object') {
Rul$After = function() {};
Rul$After = new Rul$After;
Rul$After.f_isa = function (s) { return s == 'Rul::After' };
- Rul$After.f_perl = function () { return '::Rul::After(' + Main._dump(this) + ')' };
+ Rul$After.f_perl = function () { return 'Rul::After.new(' + Main._dump(this) + ')' };
}
(function () {
var v__NAMESPACE = Rul$After;
Oops, something went wrong.

0 comments on commit c60fbf8

Please sign in to comment.