Miércoles 14 Abril 2004 14:18, Juerd wrote:
I propose to use ` as a simple hash subscriptor, as an alternative
to {} and . It would only be useable for \w+ keys or perhaps
-?\w+. As with methods, a simple atomic (term exists only in
perlreftut, afaix, but I don't know another word to describe
Viernes 19 Marzo 2004 13:08, Andy Wardley wrote:
I'm so happy! I just found out, totally by accident, that I can
type the « and » characters by pressing AltGr + Z and AltGr + X,
respectively.
Apologies if this is common knowledge, but it was news to me, and I
thought I'd share this little
Friday 13 February 2004 15:02, Dan Sugalski wrote:
If you're *really* looking to get fancy, why not just allow the
sort specification to be done with SQL? Comfortable,
well-understood, already has a decade or so of stupid things welded
into it [...]
Heck, you could even unify map, grep,
Monday 14 July 2003 05:56, Robert Spier wrote:
Sorry for a slightly off-topic post, but will Larry's State of
the Onion be posted online soon?
Yes.
http://dev.perl.org/perl6/talks/
-R
Really? I can't find anything about TPC7 in this page..
-angel
block. Perhaps we should just go with that:
property $foo = 0;
Or whatever word we choose, I don't care:
prop $foo = 0;
What about:
prof $foo;
$foo = 0;
Is this equivalent to prof $foo = 0? If it is not, I would claim
this to be a major violation of the principle of
Friday 14 March 2003 20:06, Michael Lazzaro wrote:
3) If an untyped var is used for a typed parameter, a simple
dataflow analysis is used to determine whether the compiler can
guarantee that, at that point, an untyped var will _always_
contain values of a known, specific type. If so, the type
Damian Conway wrote:
But large projects -- where typing will be most important --
*can't* deal with that. That's the point of typing: to specify and
enforce interface contracts. At compile-time if at all possible.
One quick question about this. If I write:
sub foo (Bar $f) {..}
my $x =
[ you seem to be living some hors ahead in time ]
Yep, sorry about that.
The problem stays the same: spilling processors to parrot's or
parrots to array.
Thinking a bit more about it, now I believe that the best way to do it
would be:
(1) First, do a register allocation for machine
I explained very badly. The issue is not spilling (at the parrot
level)
The problem is: if you only pick the highest priority parrot registers
and put them in real registers you are losing oportunities where
copying the date once will save you from copying it many times. You
are, in some
Saturday 22 February 2003 16:28, Leopold Toetsch wrote:
Gopal V wrote:
If memory serves me right, Leopold Toetsch wrote:
Ok .. well I sort of understood that the first N registers will
be the ones MAPped ?. So I thought re-ordering/sorting was the
operation performed.
Yep. Register
I have to wonder how many people actually like this syntax, and how
many only say they do because it's Damian Conway who proposed it.
And map/grep aren't specialized syntax, you could do the same
thing with a sub with a prototype of (block, *@list).
I have to say that I am not specially
Michael G Schwern wrote:
and that's just entirely too much work. I'd love to be able to do
it with a grep like thing.
(@switches, @args) = seperate /^-/, @ARGV;
seperate() simply returns two lists. One of elements which match,
one of elements which don't. I think Perl 6 will allow
A few questions, about stuff I am not sure I got right. Sorry if this
has already been resolved.
- What is the default behaviour (without using any pragma) of 1/0?
NaN or exception?
- Are these correct? What will they do?
my Int $i is bigint = 777_666_555_444_333_222_111;
print $i;
Hi,
This in an updated version of the numeric literals document. Hopefully
it is consistent with Michael's summary, and with discussions on the
list.
The portions that were wrong (complex numbers, etc..) have been
removed. Other parts (NaN, etc..) are still there, but I think that
they
(E) We need to finalize what happens when a string isn't a number,
or has additional trailing stuff. Damian gave his initial
preference, but we need to verify set in stone:
my int $i = 'foo'; # 0, NaN, undef, or exception?
my int $i = '5foo'; # 5, NaN, undef, or exception?
Damian Conway wrote:
The formulation of coroutines I favour doesn't work like that.
Every time you call a suspended coroutine it resumes from immediately
after the previous Cyield than suspended it. *And* that Cyield
returns the new argument list with which it was resumed.
So you can write
Why would Ci be a keyword? Its not in perl5, and I don't
remember any discussion where non-real numbers would
be part of the core language.
My fault.
For some strange reason I had a false idea that this had been said
somewhere, and didn't check. Shame on me.
-angel
bin/oct/hex literals:
0b0110 # bin
0c0123 # oct
0x00ff # hex
0x00fF # hex, == 0x00ff
0x00FF # hex, == 0x00ff
0xf_f # ok
0x_ff # ok
I thought that bin/oct/hex literals where deprecated in favour of
explicit radix
Michael Lazzaro escribió:
We should talk about this. My original proposal was to do this:
(Case 1) base 2-10: use 0..9
(Case 2) base 11-36: use (0..9, a..z), but allow A..Z such that
0x00ff == 0x00FF
which seems necessary, IMHO.
(Case 3) base 37-62: use (0..9,a..z,A..Z),
Hi all,
This is the numeric literals part, reformated to follow Michael's
outline.
It has some additions:
- Complex numbers
- Further explanation of NaN/Inf, with a tentative algebra table.
- Caveats when using BigInts/BigRats
There are some open questions, but I think I am finally not
Larry Wall escribió:
: 1_2_3_4__5___6 (absurd, but doable)
Nope, _ is allowed only between digits (counting a-f as digits in
hex).
Larry
Mmm.. I thought that the whole purpose of creating a new mailing list
was to prevent you from reading it.
Not that I am against your presence
Hi,
Many thanks for all the feedback about the literals document.
This new version integrates most of the changes. I've also added a
subsection about Inf and NaN, directly coming from Michael's
perlval.
I've also changed the pod syntax to =section, as suggested. I've used
the:
=section **
Looks good.
I'll rewrite the literals section to match this better outline.
-angel
I've written a frist version of the 1.1 - Literal Values subsection
(in Michael's schema).
It discusses the different ways of creating literal numbers and
strings in perl6.
There are no tests, and the format may be outdated. I will gladly
resubmit this in a more complete form.
I have
I very much dislike XML for writing. It'd be nice to use some kind
of extended POD or something. Something that's mostly content,
little structure. Formats with a lot of structure tend to be
unproductive, and although the structure is useful, much of it is
redundant and can be bypassed by
In my opinion, this outline puts too much weight on the first section.
I would prefer it to be made of just the basic concepts and have
forward references to the apropiate sections.
For example: I wouldn't put the list of methods supported by each of
the types in Section 1. Instead of this, I
Monday 11 November 2002 20:40, Garrett Goebel wrote:
The only consist support for something different than POD... was
for something that is in fact very similar to, and in fact based
upon POD: SDF.
http://www.ifi.uio.no/in228/scripting/doc/sdf/index.html
And the major arguments for
Hmm wouldn't the JIT benifit from a pre knowledge of basic
blocks and types or some information ? ... (I seem to think so
...).
I would think so, because if, for example, the JIT wants to do a full
register allocation to map parrot registers to machine registers, it
would certainly need
Should start small. No tutorials until docs tests are done. No
working on A3 until A2 behaviors are *locked*, to whatever extent that
proves possible.
Comments?
I think that the best way would be to create an schema of a language manual,
and fill the documents as we proceed reviewing
1) We find a team of volunteers who are willing to own the
task of converting each Apocalypse into a complete design. If
nobody wants to write the Perl 6 user manual, then we might as well
give up and go home now. So far we only need to find four, though,
so it Might Just Work.
I would
We started off with an intense RFC process. This produced many good
ideas, not-so-good ideas, and ideas with potential but desperately
needing polish. If you'd like a recap, you might try MJD's article
on the subject (http://www.perl.com/lpt/a/2000/11/perl6rfc.html).
One of the major things
LW said:
:...- readline
Iterate interator.
Couldn't we go the python way and assume that .. is implicit in
for statments:
$fh = open(..);
for $fh { # instead of for $fh
print $_;
}
For explicit iteration, we could well do just with a .next method:
while
Wednesday 30 October 2002 22:08, Michael Lazzaro escribió:
On Wednesday, October 30, 2002, at 12:48 PM, Dave Storrs wrote:
for a; b - $x is rw; $y { $x = $y[5] };
I agree that it's an eyeful. How many of your issues could be
solved if the above were just written:
for (a;b) -
Speaking about macros, I renember reading somewhere something about
Scheme hygenic macros, but i didn't really understood it.
Do they solve the maintenance problems of Lisp macros? Would they be
applicable to perl?
Thanks for any tips,
-angel
At the moment I like like the best, actually...
like is beautiful for old-style regex matching, but I find it
confusing for the new smart abilities:
$varlike Class:Foo # $var is instance of Class:Foo
$item like %hash # %hash{$item} is true
$digit like (0..10) #
Mathematically, 1/0 is not +Infinity. It's undefined/indeterminate
in the set of rational numbers. The IEEE may say otherwise.
Mathematically, 1/0 is whatever you define it to be.
And it is perfectly correct to assume that operations happen in the
extended real line, and thus that 1/0 is
Mathematically, 1/0 is whatever you define it to be.
Well, sure. That's as axiomatic as saying, mathematically, the
number one is whatever you define it to be. But a mathematical
system that has a definition which is inconsistent with the rest of
the system is a flawed one. If you let
Hi,
Many thanks Michael, this is very useful, really. I had lost all the
OO discussion and this document is very helpful.
I really like the part of context transformations, I hope something
like this gets in.
Just a silly note:
Recipe 1.9: Using Subroutines as Objects
Problem:
You want
Larry said:
BTW, latest leaning is toward = rather than //= for parameter
defaults, ...
Horray!
Sorry. Couldn't resist. :-)
-angel
Simple men are happy with simple presents
Dan Sugalski wrote:
At 7:40 AM -0400 9/4/02, John Porter wrote:
Some folks seem to think that sufficient reason exists now.
That's fine. You don't have to convince some folks. You have to
convince me.
Being ultra-pragmatic, the name change:
- costs nothing
- might make some folks happier
Hi Leo,
This should be - from my (imcc) POV - reflected by these IN/OUT
settings:
op set(in PMC, in INT)
op set(in PMC, in STR)
op set(in PMC, in NUM)
op set(out PMC, in PMC) # ok, $1 points to $2 now
# P[i] = x
op set(in PMC, in intkey, in x)
# P[KEY] = x
op set(in
Hi,
Now that we've got ICU in, I thought it may be time to revisit the
encodings implementation. I am a clamorous ignorant is
unicode/encodings issues, so please be patient with me. :)
From what I have asked people at IRC, and what's on the list archives,
my understanding of how parrot will
Sure, I have no problem with it. At one
time someone suggested making a separate
list for Parrot compilers, so I took it as
a hint that maybe we were spamming.
I am all for the creation of a new list for stuff such as imcc, and perl6
compilers. ([EMAIL PROTECTED]?)
So people interested
c) imcc becomes a middle level language.
I never meant it to be an assembler. In practice
intermediate languages provide other constructs
such as aggregate type definition that are not
available in the assembler.
type i : packed int[32]
type r : record { foo : int, bar : string }
This
Sunday 18 August 2002 00:38, Simon Cozens wrote:
[EMAIL PROTECTED] (Dan Sugalski) writes:
Has someone looked at and maybe committed this?
The reason I asked which pieces of Parrot were prototypes was
because optimizing the hell out of something that's only a
prototype is nothing short of
Sunday 21 July 2002 21:34, Dan Sugalski wrote:
No. They are not. You're missing the important case where the data
structure is inherently and intrinsically multidimensional.
my int Array foo : dimensions(3);
foo[1;2;3] = 12;
Or whatever the syntax is in perl to declare a 3D array
Hi,
I was reading Damian's new excellent diary entry in which he explains the
new currying syntax for Perl6.
(For the lazy ones it's reachable at
http://www.yetanother.org/damian/diary_latest.html)
This new feature allows to partially fill place-holder functions, such as:
my div = {$^x /
Dan wrote:
Yep, I've seen their plans. It's less an issue for us, at least as
far as globals are concerned, since we'll be doing that with
lexicals. (Python not having lexicals, after all) Globals are a bit
more interesting, since bytecode-loaded modules can't guarantee
global positions, since
my $plain = $c - $d : Math::Complex # 3.0 + 0i
sqrt(2 : Math::Integers) # - exception or not-a-number
Not a bad idea,. I beleive that the perl6 adjective operator
(for functions) will be a semicolon, not a colon. I'm not
sure how it is planned to apply it to operators.
Its also
These methods are provided so that we can play with native types in our
bytecode then send them to our pmc, as otherwise every constant in our
code would have to be a PMC, which is a little excessive.
Things like a complex number will be represented by either a PMC class
(very likely for
for it.
Angel Faus
[EMAIL PROTECTED]
), will also be too slow (as Brent Dax showed me when we
where discussing our two regex opcodes designs).
Just my 2 cents (of euros) :)
---
Angel faus
[EMAIL PROTECTED]
Simon wrote:
: Have you an idea about what will be the 'final'
: parser for the Perl 6 compiler ? (LALR(1), like Perl 5 ?)
:
:Yep, LALR1, probably yacc generated.
I recall reading somewhere that Perl6 was going to be parsed by something
very much like Parse::RecDescent, just that faster.
¿has
the following be correct perl6?
@sorted_by_size =
@files.map - $file { [$file, -s $file] }
.sort - @a, @b { @a[1] = @b[1] }
.map - @pair { @pair[0] }
--
Angel Faus
[EMAIL PROTECTED]
is doing a great job of taking the coolest things
of other languages and integrating them into a choerent design, so i do
have a hope. [:)]
This is of course related to Ruby's iterators, that take a somehow
opposite solution to solve a similar problem.
-
Angel Faus
[EMAIL
Sorry for the 4 times posts, i was testing a new mail program and it
didn't prove too good.
Now i feel so ashamed :-[
-angel
.
This patch should make it. I have not included STRING arguments, because I
don't know which multimethod should be called (native, unicode or other).
Tests are updated too.
Sincerly,
Angel Faus
[EMAIL PROTECTED]
Vtable.pm
Description: Binary data
make_vtable_ops.pl
to add new methods in vtable.tbl, without worrying about old
..pmc files.
btw, sorry for that silly Text::Balanced dependency. I stupidly assumed it
was a standard module without checking.
Sincerly,
---
Angel Faus
[EMAIL PROTECTED]
pmc2c.pl
Description: Binary data
my
proposal... Probably there is no way to catch up, but I would like to see it
anyway.
Meanwhile, I'll shut up my mouth and update regex.pod to reflect your
proposal.
Sincerly,
---
Angel Faus
[EMAIL PROTECTED]
://homepages.ulb.ac.be/~arigo/psyco/ ; they have some very
nice documents that explain all with a great detail.
I wonder whether Parrot could stole some ideas of this..
Just mi half a cent.
-Angel Faus
[EMAIL PROTECTED]
by Jeffrey Friedl in the Mastering Regexs
book claiming that it would be much faster)
How agressive are we going to be with this kind of optimitzations? Or are we
going to rely in a very smart JIT compiler?
---
Angel Faus
[EMAIL PROTECTED]
diff -crN parrot_current/parrot/Parrot
A fresh checkout (both after and before Dan's portability patch) gives me a
lot of failed tests on cygwin.
¿Is it me or is it really a problem? Dan said it's tested on cygwin...
$ make test
Failed TestStatus Wstat Total Fail Failed List of Failed
Hi Brent,
# I have been uncapable of expressing nested groups or
# alternation with your model, and I would say that this
# is because the engine needs some way to save not only
# the index into the string, but also the point of the
# regex where it can branch on a backtack.
I've been a bit
Brent Dax :
Okay, this bunch of ops is a serious attempt at regular expressions. I
had a discussion with japhy on this in the Monastery
(http://www.perlmonks.org/index.pl?node_id=122784), and I've come up
with something flexible enough to actually (maybe) work. Attached is a
patch to
::pasm { die unimplemented \n; }
1;
__END__
=head1 NAME
BabyRegex - compiles a regular expression down to Parrot bytecode
=head1 SYNOPSIS
use BabyRegex;
BabyRegex-new($REx)-pasm;
=head1 SEE ALSO
The CYAPE::Regex documentation.
=head1 AUTHOR
Angel Faus
[EMAIL PROTECTED
,
---
Angel Faus
[EMAIL PROTECTED]
1814a1815,1882
AUTO_OP matchexactly(sc, s, i, ic){
STRING* temp;
if (string_length($2) = $3) {
RETREL($4);
}
temp = string_substr(interpreter, $2, $3 , string_length($1), NULL
programming your own Task classes.
This article: http://www.onjava.com/pub/a/onjava/2001/02/22/open_source.html
does
a very good job at giving you a feeling of how it works.
In my limited expierence, this is something very similar to what we would
need for parrot/perl6.
Just my half a cent,
Angel Faus
67 matches
Mail list logo