On 3 April 2012 20:38, Moritz Lenz wrote:
> which version of Rakudo are you using? (I've tried on the last
> development version from git)
Rakudo Star 2012.02
% perl6 --version
This is perl6 version 2012.02 built on parrot 4.1.0 revision 0
>> Hmm... So you'd have to mess with the STORE method
On 3 April 2012 17:24, Moritz Lenz wrote:
> You can, very nearly. You just need to write
>
> my @vec is Vector;
>
> because you really want to change the type of the container, not just of the
> contents (my Vector @vec would be an array containing Vector objects).
Another option might be to jus
Hello.
We are all familiar with this:
(1..10).WHAT # => Range()
@foo = 1..10;
@foo.WHAT # => Array()
When you assign a range to @foo, the result is an array. Something
similar happens, for example, if you assign a scalar to @foo... The
context of the assignment causes Perl 6 to convert
Hello,
I've been reading a little about NQP (Not Quite Perl). I was wondering
if NQP is part of the Parrot project, or if it is an independent spec.
I'm wondering if a program written in NQP will be faster in general,
or faster under Rakudo/Parrot, or not fast at all.
Cheers,
Daniel.
--
I'm not
On 23 March 2012 12:55, Carl Mäsak wrote:
> The "shaped arrays/hashes" parts of S09 have been in the planning
> stages a long time in Rakudo. They've had to wait for better MOP and
> better native-types handling (which is another part of S09), but now
> the time for shaped arrays/hashes is surely
Hey,
I have a few slightly related questions:
1. The semicolon operator would allow Perl 6 to support N-dimensional
arrays... How would one iterate over that type of array?
my num @matrix[ 10 ; 10 ; 10 ];
I ask because a natural extension is to add arithmetic operators and
you have the beginnin
On 22 March 2012 12:06, Moritz Lenz wrote:
>
>> But that's a bit of a problem if I *don't* want a value higher than 100.
>
> Then exclude it: 2, 4, 8 ...^ * > 100
Ok... I looked up what you did. I see how it works. Thanks.
Related questions: What types of sequences can Perl 6 recognize?
--
On 22 March 2012 11:02, Carl Mäsak wrote:
>>> 1, 2, 4 ... 100 # same as 1,2,4,8,16,32,64
>>
>> That last one doesn't work on Rakudo :-(
>
> And it never will. Note that 100 is not a power of 2, and that the
> goal needs to match exactly. This is because smartmatching is used,
...
> If you're wo
On 22 March 2012 04:59, Jonathan Lang wrote:
> My understanding is if you want to count by threes, starting at 2 and ending
> at 14, you should be able to write:
>
> 2, 5 ... 14
That certainly looks very intuitive, and it is similar to what I would
write in an email. The only annoyance is that
On 22 March 2012 01:13, Solomon Foster wrote:
> It actually smartmatches whatever is on the right hand side against
> the sequence, and stops when the smartmatch returns True. It just
> "happens" that you smartmatch an anonymous function, it executes the
> function and returns its result.
I see.
On 22 March 2012 00:08, Brandon Allbery wrote:
> * + $c --- the next value is the current value plus $c. ("*" means
> "Whatever", and generally refers to the current value of something. In this
> case, we're specifying how to make a new value given a current value. You
> can think of it as a w
On 21 March 2012 22:50, Carl Mäsak wrote:
> It would also produce an infinite list, because by the rules you need
> the RHS of infix:<...> to match exactly, and 10 is not in the infinite
> list 2, 5, 8, 11, 14... Which is why you'd need to write something
> like * >= 10.
Ok, so infix:<...> isn't
On 21 March 2012 22:09, Damian Conway wrote:
>> Is it possible to create a new range operator ':' such that:
>
> Do you need to?
Hmm... maybe not...
>> a:b:c is a range from 'a' to 'b' by steps of 'c'.
>
> Perl 6 already has: $a,*+$c...* >=$b
>
> E.g. 2, 5 ...^ *>=15 > 2,5,8,11,14
That lo
Hi Moritz
>> a:b is the same as a..b (this is the easy part)
>>
>> a:b:c is a range from 'a' to 'b' by steps of 'c'. For example, 2:15:3
>> == 2,5,8,11,14
>
> That can be done by giving the new infix:<:> operator list associativity
> (niecza already supports this)
Can you explain or give me a li
Hello,
Is it possible to create a new range operator ':' such that:
a:b is the same as a..b (this is the easy part)
a:b:c is a range from 'a' to 'b' by steps of 'c'. For example, 2:15:3
== 2,5,8,11,14
:b is the same as 0..b
a: is the same as a..Inf
::c is the same as 0:Inf:c
: is the same a
Out of curiosity, is it possible to get Rakukdo to talk to C, C++ or Fortran?
On Thu, Dec 30, 2010 at 8:04 PM, Patrick R. Michaud wrote:
>
> On behalf of the Rakudo and Perl 6 development teams, I'm happy to
> announce the December 2010 release of "Rakudo Star", a useful and usable
> distribution
+1
Carl Mäsak wrote:
Very nicely put. We can't predict the future, but in creating
something that'll at least persist through the next decade, let's not
do elaborate things with lots of moving parts.
Let's make a solid ground to stand on; something so stable that it
works uphill and underwater.
Larry Wall wrote:
Nevertheless, for any major methods borrowed from Perl 6, I'm not
inclined to change them that drastically. Much more likely to
define them as sugar for the more general list operators:
.push means .=append
.unshiftmeans .=prepend
.splice means
Damian Conway wrote:
In fact, I would even be happy with requiring @a.=push and @a.=shift, if
it meant that there were *no* special cases. One extra character is a
small price to pay for perfect SWIM (and not just "Say What I Mean",
the real benefit is the other SWIM: "See What I Meant").
I don
Hi Patrick,
To reduce list traffic, I'm replying to both of your emails together.
Just because these are the only adverbs mentioned doesn't necessarily
mean they're the only ones that will be allowed.
Ok. My interpretation was that adding adverbs would require updating the
spec. More import
John M. Dlugosz wrote:
Yes. did you read mine?
Yes, I read your email.
Sounds like you are thinking of Parrot vs pure
perl, and missed my point about being utterly different implementations,
not choices within one.
Chances are, the most popular implementations of Perl 6 will allow C
bind
Chris Fields wrote:
Speaking as an almost complete outsider (I'm a bioperl core dev writing
up a perl6 port), I find the tone of several of these more recent posts
(re: CPAN6 and module conventions) counterproductive. TimToady recently
posted about snippiness and 'tensegrity', so I'm not the on
John M. Dlugosz wrote:
So CPAN6 is basically only going to be for Parrot?
What are you talking about? Did you even read my email? I said that a
module might be implemented in multiple languages (see Digest::SHA VS
Digest::SHA::PurePerl) and someone might have both versions installed.
Daniel
Mark Overmeer wrote:
Currently in CPAN you have modules like:
Digest::MD5
Digest::SHA
Digest::MD5::Perl
Digest::SHA::PurePerl
The difference is that the first two are implemented in C and the later
two in Perl.
This is comparible to adding a "target" to each of the modules, a
suggestion when
John M. Dlugosz wrote:
The front-end should figure out which binary is proper for your
platform.
I don't like that idea in the slightest. (1) It is not Perl's job to
know if you have a C compiler, C libraries and tool chain. (2) If my
computer can handle Perl, C and Parrot, I want the choice
Jon Lang wrote:
On Mon, Jun 1, 2009 at 5:44 PM, Daniel Carrera
wrote:
I think we might need to come up with some sort of standard naming
convention to distinguish dependencies. Something that the *user* can
recognize quickly when he browses CPAN.
Why do we need the dependencies to be part of
Hi all,
Currently in CPAN you have modules like:
Digest::MD5
Digest::SHA
Digest::MD5::Perl
Digest::SHA::PurePerl
The difference is that the first two are implemented in C and the later
two in Perl.
Naming issues are likely to become worse in Perl 6 when we also have
modules that use Parrot.
Parrot Raiser wrote:
One of the common factors that has contributed to the longevity of
Unix (in the generic sense), and the Internet, is their layered
architectures.
+1 for layered architectures.
If this discussion can be split into clear layers, (what gets stored,
where, how, &c.) it might
Daniel Ruoso wrote:
The leap you make from the source package to the different binary
formats is overlooking a lot of details. It would be interesting if you
could take a look in the previous discussions on the matter.
I'll be happy to. I was just trying to make a small iterative step on
Synop
Mark Overmeer wrote:
A pity you didn't want to read the paper.
I have better things to do with my life than read your 30-page paper.
I'd rather participate in a consensus process where I feel I can make a
difference.
Please clarify ... how would you specify that? And how
would you denot
Hello,
In the hopes of helping the CPAN discussion move forward, in the
direction of tangible work, I have made a wiki page with a proposal:
http://wiki.github.com/perl6/misc/cpan-and-package-format
Please read the "Basics" section, which is quite short. The main point
of this section is to
jesse wrote:
1) Instead of calling the format "JIB", how about "PAR"? It can stand
for Perl ARchive or the recursive PAR ARchive. This is more memorable.
It might make sense to adopt the same naming as .jar and .epub, two very
different zipfile-as-container formats. Both use a top-level directo
Wayland wrote:
Allow me to point something out. He wants to write a freely
available software package that can share data, and is useful for the
Perl6 environment. He's not suggesting that we have holiday photos on
CPAN-the-network,
I'm not sure about that. We were talking about what thi
Mark Overmeer wrote:
And the next consideration: when we have a piece of software which
administers Perl5 or Perl6 or Nokia.bin or Elf. Why stop there?
What is the overlap? It is basically all just some blob of data with
some associated meta-data to search and retreive the blobs. It is only
th
Daniel Carrera wrote:
4) Lastly, while we are at it, why don't we add a signature file to the
_par directory?
_par/
META.info
CHECKSUMS.asc
The CHECKSUMS.asc file would contain the SHA1 sums of every file in the
archive except for itself. The file could be GPG-signed
Hello,
I finished reading S22 (CPAN [DRAFT]). This synopsis is about the
package format, not about the network. I have some comments:
1) Instead of calling the format "JIB", how about "PAR"? It can stand
for Perl ARchive or the recursive PAR ARchive. This is more memorable.
2) S22 proposes
John Macdonald wrote:
Comprehensive Programming Archive Network.
Another problem with "Programming" is that it assumes that other
languages will actually use the system. We don't know that currently
and it is a bit presumptions to assume that they will. It would look
awkward if only Perl used
John Macdonald wrote:
On Fri, May 29, 2009 at 07:26:11PM +0200, Daniel Carrera wrote:
Btw, if the majority wants to start uploading Ruby, Python and Lua
modules to CPAN, we can rename CPAN so that the P stands for something
else that doesn't mean anything. "Comprehensive Peaco
Daniel Carrera wrote:
Btw, if the majority wants to start uploading Ruby, Python and Lua
modules to CPAN, we can rename CPAN so that the P stands for something
else that doesn't mean anything. "Comprehensive Peacock Archive
Network"? "Comprehensive Platypus Archive Network&
Larry Wall wrote:
I think this is an important point, philosophically. The internet,
and later the web, both succeeded primarily because they unified
identity *without* resorting to centralization (except to bootstrap
the top-level nameservers, of course). But identity must not be
confused with
Mark Overmeer wrote:
CPAN is the Comprehensive Perl Archive Network.
Not the Comprehensive Perl 5 Archive Network.
What's in a name.
Much, actually. As the ZCAN document explains, the set of mirrors are
donated to Perl by various donors who agreed to hold *Perl* modules.
These computers do
Nicholas Clark wrote:
On Fri, May 29, 2009 at 02:43:13PM +0200, Mark Overmeer wrote:
* Daniel Carrera (daniel.carr...@theingots.org) [090529 11:42]:
"CPAN shall not piggyback another language" -- from ZCAN.
Judging from the ZCAN page, I don't expect that uploading Ruby modules
Timothy S. Nelson wrote:
While I've no objection to building the end-user software to support
multiple repositories, I know that there are certain segments of the
community who are very very keen to keep everything in the one
repository.
After reading the Zen of Comprehensive Archive Netw
Mark Overmeer wrote:
* Daniel Carrera (daniel.carr...@theingots.org) [090529 08:17]:
Workshops, Hackathons and YAPCs are more suitable.
But those venues are not available on a day-to-day basis.
At least, you get the time to discuss it in depth. Some even basic meta-
data issues are just too
Mark Overmeer wrote:
I know about CPAN6, thanks. It's come up a couple of times on IRC.
Perhaps you could hang out on the IRC channel so we don't have different
people going off in different directions with CPAN.
It's not a discussion like "let's make a change to the current set-up",
so IRC
Timothy S. Nelson wrote:
I can confirm that Redhat supports multiple versions:
$ rpm -q kernel
kernel-2.6.27.5-117.fc10.i686
kernel-2.6.27.12-170.2.5.fc10.i686
kernel-2.6.27.5-117.local.fc10.i686
AFAIK the way RPM implements "multiple versions" is by making an
entirely different package.
Alex Elsayed wrote:
On Thursday 28 May 2009 4:54:50 pm Daniel Carrera wrote:
On the other hand, distributing Parrot bytecode (or PIR, or PASM) seems
fine. But I don't know what to suggest for modules that require a C
compiler.
The problem with that is that Rakudo isn't the
Larry Wall wrote:
I support the notion of distributing binaries because nobody's gonna
want to chew up their phone's battery doing unnecessary compiles. The
ecology of computing devices is different from ten years ago.
By binaries, I assume you mean native binaries, as opposed to Parrot
bytec
Hi Alex,
I hve comments.
Alex Elsayed wrote:
While lurking in IRC, I've seen several discussions of what CPAN 6 should
look like. Honestly, wayland76++'s idea for packaging seems the best to me.
Most of the suggestions so far, especially those based on alien, apt, yum,
or other existing packa
Darren Duncan wrote:
Because we need things to work effectively in the general case where
what was originally a single module Foo with one name becomes forked
with each creator (authority) going off in their own direction, or
alternately the creator makes incompatible changes, and then later
s
Jonathan Scott Duff wrote:
See http://perlcabal.org/syn/S11.html#Versioning
Yeah, I reached that part earlier today (but after I sent my email). Thanks.
Daniel.
Mark Overmeer wrote:
In March 2006, Sam Vilain and I started to think about a new CPAN
what we named CPAN6. There is a lot of information about the project on
http://cpan6.org
I know about CPAN6, thanks. It's come up a couple of times on IRC.
Perhaps you could hang out on the IRC channel so w
Hello all,
There was some talk on IRC about a new version of CPAN to match the new
version of Perl.
Recap: wayland76 wants to integrate CPAN with the local package manager
(RPM, DEB). He proposed using Software::Package for that (which is
incomplete).
Now some ideas of my own:
A) Can we a
Hi Damian,
This is a really good list. Mind if I copy it / modify it and post it
somewhere like my blog? One question:
* Compactness of expression + semi-infinite data structures:
@fib = 1,1...&[+]# The entire Fibonacci sequence
Very impressive. That's even shorter than
Larry Wall wrote:
$dot_product = <@vector1,@vector2>;
Is that possible? That would be uber-cool.
More likely just use
sub infix:<·> (@a,@b) { ... }
$dot_product = @vector1 · @vector2;
Thanks.
And for Daniel R. and other observers, how about this:
# Courtesy of Larry
sub infix:<·>
Mark J. Reed wrote:
Note that of the examples given, only Perl 6 and Common Lisp do two things
that help immensely simplify the result:
1. reference the built-in * operator directly, without having to wrap it in
a lambda expression;
2. actually name the function "!"
Yes, very neat. Haskell doe
Mark J. Reed wrote:
In Haskell it may be called fold (well, foldl and foldr), but the
concept has has a variety of names. Two of the more common ones are
"reduce" and "inject";
The terms I've seen are "fold" and "reduce". The "fold" term is not just
from Haskell. I've seen it elsewhere. If y
Mark J. Reed wrote:
3. the reduction meta-operator [...] : [OP](@list) collects the
result of applying OP to the elements of the list in order. That is,
assuming foo() is a binary sub, [foo](1,2,3,4) =
foo(foo(foo(1,2),3),4). So [+](@list) generates a sum of the listed
values, [*] generate
Daniel Carrera wrote:
sub postfix: { [*] 1..$^n }
say 5!;
WOW!! That *IS* cool. Can you explain to me how it works? I figured out
postfix: myself, but the rest is obscure to me.
Here is another idea: Is it possible to declare a circumfix function
that calculates the magnitude of a vector
Mark J. Reed wrote:
I really like the factorial example on the wiki page. That really
gets across the expressiveness of P6, without being too hard to
understand despite its brevity.
sub postfix: { [*] 1..$^n }
say 5!;
WOW!! That *IS* cool. Can you explain to me how it works? I figured out
p
Daniel Ruoso wrote:
I know this is not the approach you had in mind, but what do you think?
Well, you really made me realize that I'm looking for things that make
me impressed, and probably I don't get impressed that easy nowadays ;)
I understand. Your experience with Perl 6 makes you harder
Hi Daniel,
Sounds very interesting. Can you post slides? It'd be cool if the talk
was taped, like the Google tech talks. Will it be in English? I don't
speak Portuguese (I do speak Spanish and some German).
I'm planning to do a presentation to highlight the most impressive
aspects to Perl 6,
Patrick R. Michaud wrote:
An even cleaner shortcut might be to use ^...@foo instead of ^...@foo.elems:
for ^...@foo -> $k { do_something($k, @foo[$k]) }
Somewhat clearer could be:
for @foo.keys -> $k { do_something($k, @foo[$k]) }
And some may prefer:
for @foo.kv -> $k, $v { do_s
yary wrote:
I'm a relative beginner at perl6, but pretty good with perl5 (and C
and a few others), so I read
"for 0...@foo.elems"
as saying "Give me a list with one item longer then @foo", not "give
me the indexes of @foo".
But a Perl non-beginner did make that mistake. The problem is that it
Hello,
The following construction doesn't do what a user might expect:
for 0...@foo.elems -> $k { do_something($k,@foo[$k]) }
Obviously, the intention is to step through every key/value in @foo. Buf
@f...@foo.elems] does not exist. If @foo = (1,2,3); then @foo.elems is
3, and @foo[3] is unde
Carl Mäsak wrote:
In this way, a relatively simple change makes Perl 6 Pod able to do literate
programing for anyone who is interested.
What do you think?
That it sounds like a good idea for a sublanguage-extending module.
I'm not familiar with those. Are they hard to make? I guess that it i
Hello,
I really like POD and I like the changes in the upcoming Perl 6 Pod.
Have you ever heard of literate programing? (see Wikipedia). I think it
would be neat if Pod could do literate programing. It is already very
close. For reference, please see this article:
For reference, please see
67 matches
Mail list logo