pugscode.org/ planetsix.perl.org/ | nopaste: sial.org/pbot/perl6 | evalbot: perl6: say 3; (or rakudo:, pugs:, elf:, etc) | irclog: irc.pugscode.org/ | ~340 days 'til Xmas Set by mncharity on 16 January 2009. |
|||
s1n | so i'm still looking to see what the :by() method is technically classified as | 00:04 | |
is it an attribute, a circumfix method? | |||
does anyone know what this is? | |||
and does anyone know of another such feature in p6? | 00:05 | ||
TimToady | it's just a named parameter | ||
lambdabot | TimToady: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
s1n | TimToady: named parameter huh? to the "constructor"? | 00:08 | |
TimToady | well, it's a named argument. the parameter is the other end | ||
to the operator | |||
multi infix:<..> ($left, $right, :$by) {...} | 00:09 | ||
or some such | |||
s1n | hmm, i'm still not familiar with p6 to get what that says really :( | ||
TimToady | it expects two positional arguments and one named argument | ||
which is what is supplied when you say 1 .. 10 :by(2) | 00:10 | ||
s1n | how does a multi-dispatch method differ from a regular method? | ||
TimToady | multi infix:<..> ($left, $right, :$by = 1) {...} actually | ||
00:10
stephenlb left
|
|||
TimToady | a regular method sends the call to the object and lets it decide what it means | 00:11 | |
a multi dispatch is decided by the language, not by the objects | |||
s1n | ah, thanks | ||
are all named parameters specified as :param? | 00:12 | ||
TimToady | can also use by => 1 notation, but only when in an argument list, not as an operator adverb | ||
but generally people use :foo | 00:13 | ||
less cumbersome, and defaults to "true" | |||
00:14
[particle]1 joined,
araujo left
|
|||
s1n | TimToady: i'm sorry, my language vocab isn't too advanced, what do you mean by an operator adverb? | 00:14 | |
TimToady | the operator precedence parse works by alternately expecting a term and an infix | 00:15 | |
if the parser sees an adverb where a term is expected | |||
it's just a pair, or a named argument, or some such | |||
when it sees :foo where an infix is expected however | 00:16 | ||
it applies it to whatever the most recent operator was | |||
(looking back to the left) | |||
00:16
hercynium left
|
|||
TimToady | so you don't mess up the syntax of an operator like .. when you say 1..10 | 00:17 | |
but it's easy to give a different "step" when you want it | |||
s1n | i am humbled by how well other people, namely you, understand this, because i'm lost :) | 00:19 | |
TimToady | an adverb is just a word that modifies a verb, and we're considering .. to be a verb there | ||
in English we might say "Count from 1 to 10 quickly" | |||
the quickly is the adverb | 00:20 | ||
s1n | yes, but i don't yet understand what are verbs and what are adjectives in languages, such as p6 | ||
00:20
meppl left
|
|||
TimToady | literals and variables and types are nouns. pretty much everything else is some action to perform on those nouns, so those are the verbs | 00:22 | |
s1n | so in this example, :by would be an adverb? | ||
TimToady | in 1..10:by(10) it is | 00:23 | |
but in $x = :by(2) it's just a Pair object. | 00:24 | ||
s1n | what does that statement mean? | ||
what would the value of $x be? | |||
TimToady | can also be written $x = 'by' => 2; | ||
s1n | like a hash slice? | ||
TimToady | it's a Pair object whose key is 'by' and whose value is 2 | ||
it's like one element of a hash | 00:25 | ||
s1n | is $x = :by(3), :by(4); valid? | ||
TimToady | no, because assignment to a scalar value would stop at the comma | ||
$x = (:by(3), :by(4)) is okay though | 00:26 | ||
s1n | an error or just stop there? | ||
TimToady | it would assign a list of two pairs | ||
s1n | ahh okay, that's neat | ||
TimToady | just stop that term | ||
00:26
nihiliad left
|
|||
TimToady | as in C-style for loop: | 00:26 | |
loop ($a = 1, $b = 2; foo($b); $a++, $b++) {...} | |||
the assignments may be separated by comma there | 00:27 | ||
since they're scalar assignments | |||
if you assign to an array, though, it eats the comma and the rest of the list | |||
@a = :by(3), :by(4) would put two pairs into the array | 00:28 | ||
lambdabot | Maybe you meant: activity activity-full admin all-dicts arr ask . ? @ v | ||
s1n | okay, that makes sense | ||
i'm getting curious because i'm studying statistical nlp, and #1 thing to know is grammers | 00:29 | ||
TimToady | well, don't forget to study the nlp part of it as well as the statistics :) | 00:30 | |
00:30
[particle] left
|
|||
s1n | TimToady: that statistics is the easy part, i need a grounding in grammars first, and i'm sifting through rakudo to see how things work | 00:31 | |
i'll likely use p5 when i do my thesis impl :) | 00:32 | ||
TimToady | My point is that nlp hasn't got a lot to do with either statistics or compilers, but a lot to do with how people think, so don't forget to think about how people think | ||
s1n | nlp is all about statistics now | 00:33 | |
00:33
legis joined
|
|||
s1n | compilers are much simplier grammar interpreters | 00:33 | |
TimToady | I understand that | ||
s1n | so to get the basics, understand kinda how compilers work a little | ||
then move on to mixing machine learning (which is mostly stats nowadays) and grammars | 00:34 | ||
TimToady: i don't want to be the ass who tries to correct the great lwall. i may not know compilers at all, but i do know machine learning :) | 00:36 | ||
TimToady | I'm just saying that part of nlp is nl, and nl is a different beast than most computer people seem to think it is | 00:37 | |
s1n | i've dabbled with nl before, it's a bloody mess to understand | ||
TimToady | indeed, but people do it that way for various reasons :) | 00:38 | |
s1n | heh yes, it's a fascinating field | ||
TimToady | the use of statistics is an improvement over old-school parsers, but it's also a trap of its own | 00:39 | |
s1n | most ml techniques seem to be centered around statistics of some form | ||
you can wrap most semi-brute force techniques with probability estimators, and nl is a perfect candidate because the problem search space is so large | 00:40 | ||
nl is a new field to me, so we'll see how it turns out after i'm published heh | 00:41 | ||
TimToady | at some point, the human desires to *mean* something, not just put out some correlated utterances, so it's hard for computers to jump the gap to pragmatics, because that's about causation, not just correlation | 00:42 | |
00:42
donaldh left,
donaldh joined
|
|||
TimToady | humans have figured out how to "do things with words" | 00:43 | |
00:43
legis left
|
|||
TimToady | so far, computers have little sense of what their words will do | 00:43 | |
s1n | yeah, the correlated utterances can be grammatically correct, but nonsense | ||
the famous example is chomsky's "colorless green ideas sleep furiously" | 00:44 | ||
snlp aims to understand what is being done | |||
TimToady | well, even that can be made to mean something sensical in context :) | ||
s1n | i'm finding languages are more fun than i originally thought | 00:45 | |
TimToady | it's gonna be a long time before snlp will tell you what is being done when a minister says "I now pronounce you man and wife" | 00:47 | |
see also Charles Fillmore's paper entitled "May we come in?" | 00:48 | ||
(As a linguist, I love pragmatics and phonetics, and put up with everything in between. :) | 00:50 | ||
00:51
DemoFreak left
|
|||
s1n | well, i'm speaking your language then huh? | 00:52 | |
bad pun, i know | |||
is that paper available anywhere? | 00:53 | ||
TimToady | not sure | 00:54 | |
well, at least, not sure for "anywhere" defined as the Web :) | |||
I'm quite sure it's in at least one library somewhere :) | 00:55 | ||
s1n | heh, yeah i'm looking at my uni and i don't see it | ||
was it in a book? | |||
00:57
araujo joined
|
|||
TimToady | looks like www.google.com/url?sa=t&source=...G8V9sMmzMA is about that | 00:58 | |
s1n | yeah i saw that and immediately thought "i can get that for free from the uni probably" | ||
TimToady | anyway, he was one of my teachers :) | 00:59 | |
s1n | fillmore? | 01:00 | |
did you actually study linguistics? | |||
(that's not doubt, just curiosity) | |||
TimToady | yes, I've officially had more linguistics training than computer training | 01:02 | |
s1n | interesting | ||
TimToady | my wife once reduced George Lakoff to a state of mumbling once when we chanced upon him on campus, and she said, "Just look at you" | 01:04 | |
several days later we got a lecture on why it wasn't "Just look at yourself" | |||
araujo | TimToady, ok, that explains why perl is like this | 01:05 | |
TimToady | I also got to take phonology from Peter Ladefoged when we were visiting UCLA | ||
01:06
|jedai| left
|
|||
TimToady | indeed, I optimize for "How to do things with words" rather than orthogonality, because that's what natural languages do | 01:06 | |
now certainly, a computer language cannot take context into account to the extent that a human can | 01:07 | ||
01:07
|jedai| joined
|
|||
TimToady | but within those limits, computers can do a lot better than they have historically | 01:07 | |
in particular, the notion of discourse analysis corresponds rather closely to our notions of lexical scoping, and "all is fair if you predeclare" | 01:09 | ||
for instance, I can set up a lexical context in which it makes perfect sense for colorless green ideas to sleep furiously. | |||
first of all, we define "green" to mean "fresh" rather than plant colored... | 01:10 | ||
ayrnieu | 'colorless' is a kind of economic theory about interest, 'green ideas' can be environmental ideas, a sleeping idea can be politically ineffective -- and furious because of this. | 01:11 | |
TimToady | and we postulate that ideas that have not been born yet are sleeping in your brain | ||
your subconscious knows about them, however, and thinks hard about them, so they're sleeping furiously | |||
but until they are actually born, they are colorless | |||
ayrnieu: that would be another approach, and probably a better one :) | 01:12 | ||
but basically your lexicon (as in lexical scoping) is defined by nearby utterances as well as distant dictionaries | 01:13 | ||
s1n | TimToady: but chomsky did not "predeclare" anything :) | ||
TimToady | I did not attend a school that held chomsky in high regard :) | 01:14 | |
s1n | TimToady: i can tell | ||
where did you attend? | |||
TimToady | SPU, UCB, UCLA | ||
s1n | in that order? | 01:15 | |
ayrnieu | (better: a furiously sleeping idea is one that is presently ineffective but that is gaining currency in a population, so that it'll become very effective in a short time. Which is a useful way to speak about conditions at the end of the USSR.) | ||
TimToady | and the Summer Institute of Linguistics | ||
now SIL International | |||
s1n | that is, do you hold a phd from ucla? | ||
01:15
rob___ left
|
|||
TimToady | nope, dropped out :) | 01:15 | |
had to pay for a family | 01:16 | ||
s1n | heh | ||
TimToady | but the training was much more valuable than the sheepskin | ||
s1n | TimToady: well, if i have any stupidly simple questions about perl6, it's a good thing you're here to throw my head in a tailspin :) | 01:20 | |
TimToady | I was never cut out to be an academic in any case; we were planning to be field linguists and analyze unwritten languages before health issues came up | ||
what, can't I just stick to vague generalities? :) | 01:21 | ||
heh | 01:24 | ||
en.wikipedia.org/wiki/Perlocutionary_act | |||
01:26
riffraff joined
|
|||
TimToady | (speaking of How To Do Things With Words) | 01:28 | |
01:30
|jedai| left,
|jedai| joined
|
|||
s1n | i originally read that as perl-ocutionary | 01:31 | |
TimToady | I was intending for you to read it that way. :) | 01:35 | |
the funny thing is that the subject matter is exactly what we were talking about earlier | 01:36 | ||
but my using it as a joke was a perlocutionary act, apparently | |||
s1n | heh, clever | 01:38 | |
speaking of adverbs, i'm reading moritz_'s testing rfd | 01:40 | ||
moritz_: i agree with ruoso, :test is a bit more readable | |||
01:50
mncharity joined
|
|||
TimToady | "test" is too common, as is "ok". see my reply | 01:52 | |
(coming soon to a mailing list near you) | 01:53 | ||
01:54
hercynium joined
01:55
|jedai| left
01:56
|jedai| joined
|
|||
s1n | yes, but why would the namespace be cluttered? | 01:57 | |
can't we put something like :ok or :test in a separate namespace? | |||
is :Test::ok not possible (especially if hard-wired)? | 01:58 | ||
TimToady | doesn't really fit into adverb syntax, and a bit unwieldy for multiple uses in the same file | 01:59 | |
:TEST isn't much harder to type than :OK | 02:00 | ||
I think this would be a good place for all caps just for the visual thwack between the eyes | |||
mncharity | hmm... perl6.wikia.com/wiki/Perl6_Wiki ... /me wonders if it should be in the /topic... | 02:01 | |
eeep. lots of information about flat stomachs. err... maybe not. | 02:02 | ||
TimToady | flattery will get you nowhere... | 02:05 | |
mncharity | @tell avar Re your elf status inquiry (days ago), my focus is getting elf to run TimToady's STD.pm grammar, enroute to a bootstrapped front-end. The CL elf is kept unrotted, but being off that critical path, isn't getting much love. Volunteers encouraged. cspencer expressed interest. There are other ways, many pure-p6, to help as well. | 02:17 | |
lambdabot | Consider it noted. | ||
mncharity | @tell avar Progress along the path is steady - no obstacles, or planning puzzles, just puttering along - but rather slow. My tuits tend to go where there are collaborators or cheerleaders, and other than TT's vital STD work, there's not been much of that for elf. Collaborators or cheerleaders encouraged. | 02:20 | |
lambdabot | Consider it noted. | ||
02:26
riffraff left
|
|||
pugs_svn | r24981 | putter++ | [elf_h] Added a primitive for runtime symbol lookup. IR analysis bugfix (incorrect notes<crnt_package> after block-less package decls). | 02:26 | |
r24981 | putter++ | [elfparse] Dusted rx post actions. Added rx return type coercion using post actions. PrecOp enabled and working with infix. Accept non-Match objects in Match trees. STD_blue_run/STD_green_run sym bugfix. Tweaked Makefile dependencies. Modified std.pm comment convention. | |||
02:27
buubot left
|
|||
mncharity | roadsign: [ tribulations -> EXPR -> say 3 > travel time and distance unclear. | 02:31 | |
02:34
[particle] joined
|
|||
mncharity | but nice to see ./elfgreenstd -v -e 'say /<STD::infix>/.match("a+").match_describe' give a match with STD's $m<O> precedence info. even if it has a bogus $m[0] :/ . | 02:34 | |
02:37
wknight8111 left
|
|||
TimToady | if you actually call Cursor's .list method it's supposed to translate .<0> to .[0] | 02:39 | |
mncharity | TimToady: random observation: I found it curious that %additive showed up both in 'is defequiv' and PrecOp's Additive. | ||
TimToady | but it doesn't attempt to prepopulate an array | ||
mncharity | re Cursor, err no, it's a bug with the rx_on_re engine. | 02:40 | |
TimToady | ah. | ||
defequiv is just the default for if you don't give "is equiv" in your operator macro. It's not implemented yet... | |||
mncharity | <sym> is converted to $<sym>=(foo) , but none of the test cases caught that the alias implementation leaves a false $0 behind. | 02:41 | |
TimToady | note also that the precedence info is coming via letter O, not number 0 | 02:42 | |
but I see you typed it that way already | 02:43 | ||
mncharity | it's come up before, but I note that rx tests should really do "dump resulting Match tree in a cannonical string form, and compare that against a full correct string", rather than doing spot checks of this property or that. it will be hard enough to write enough test cases without disregarding most of there info. | ||
s/their | |||
:O :0 "A treatise on the emotional content of emoticons rendered in different typefaces". | 02:44 | ||
TimToady | :O :0 :| | 02:45 | |
:O :o :. | 02:46 | ||
mncharity | lOl | ||
02:46
|jedai| left,
|jedai| joined
|
|||
mncharity | re 'I can ignore defequiv for now', thanks :) | 02:48 | |
TimToady | :ā¬ | ||
mncharity resists the temptation to search unicode tables... | 02:49 | ||
though it would be nice to have a "show me characters "like" this one (or these)". image search across unicode glyphs. | 02:50 | ||
02:51
[particle]1 left
|
|||
mncharity | /me toys with the idea of writing an elf_quickstart.txt - every step needed, software and cpan, to take a bare debian, and getting all of elf running on it. hmm...? | 02:54 | |
02:55
|jedai| left
|
|||
mncharity | end of day. goodnight all. "Xmas '09 or bust" | 02:55 | |
02:55
|jedai| joined
02:56
mncharity left
03:04
alester_ joined
|
|||
alester_ | HI EVERYONE | 03:13 | |
pmichaud | alester_: pong :-) | ||
alester_ | I'm working on my kenote for FP2009 | ||
and I got this big idea | |||
well, | |||
let me show you what I have so far first | |||
pasteling | "Andy" at 64.81.227.163 pasted "FP2009 keynote thoughts" (33 lines, 1.4K) at sial.org/pbot/34610 | 03:14 | |
alester_ | I want us to start talking about Rakudo like it's here today | 03:15 | |
03:15
kid51 joined
|
|||
pmichaud | I think that's fine; we have to be careful not to overpromise. | 03:16 | |
alester_ | but it exists today | ||
and I want to tell people to work on it | 03:17 | ||
because it exists today | |||
Part of that is a good working rakudo.org | |||
pmichaud | sure, but if someone comes in wanting wholesome crunchy Perl 6 goodness with all of the wonderful Synopsis features, they may get turned off. That said, we _can_ point to people who are using it. | ||
alester_ | and helping with rakudo | ||
pmichaud | I'm not saying I disagree -- I'm just saying we need to be careful not to overpromise :-) | ||
alester_ | Sure | 03:18 | |
and part of that promise is documentation | |||
of what we want people to do | |||
pmichaud | agreed fully. | ||
alester_ | For example, as far as I know we have no toolchain | ||
no way to install modules | |||
no LWP | |||
no DBI | |||
etc etc etc | |||
pmichaud | are you saying we should write those soon, or are you inviting others to start writing them? | 03:19 | |
alester_ | yes | ||
Also, here's the 2nd part of my notes | |||
pmichaud | from a rakudo perspective: if you want that toolchain to be in existence by FP2009, it ain't gonna happen. | 03:20 | |
pasteling | "Andy" at 64.81.227.163 pasted "# All that matters is maintaining Perl 5" (28 lines, 1K) at sial.org/pbot/34611 | ||
alester_ | no, I know | ||
Anyway, a big part of this is having things to communicate | 03:22 | ||
and a place to do it. | 03:23 | ||
pmichaud | in general, I already make a point of explicitly adding the 5 or 6 behind "Perl", unless talking about a community or "Perlish features" or the like. | ||
alester_ | That's good for you. | ||
Rest of us, no. :-0 | |||
and it's all about mass communciation | |||
if we all start saying "Perl 5" and "Perl 6" it'll mean something. | |||
pmichaud | personally I think that meme will catch on as more people start playing with Perl 6. But I have no objection to getting people to say it sooner. :-) | 03:24 | |
overall I like the threads of your keynote so far :-) | 03:26 | ||
alester_ | the thrid one is about community but not relevant here | ||
Anyway | |||
let's think about what we need as far as rakudo.org | |||
Blog | |||
What else? | |||
pmichaud | documentation | ||
a wiki would be nice, but we could grab one somewhere else. | 03:27 | ||
if we can get svn.rakudo.org or git.rakudo.org or whatever we choose to use to work, that's a bonus. | |||
I don't think we need a mailing list beyond the existing perl6-* lists. | |||
at least, notyet. | 03:28 | ||
alester_ | "documentation" menaing what | ||
pmichaud | how to obtain rakudo | ||
how to build rakudo | |||
where to report bugs | |||
how to know if something is a bug | |||
where to get more information about perl 6 | |||
alester_ | About perl 6 or about Rakudo? | ||
pmichaud | how to become a developer | ||
alester_ | ok. | ||
pmichaud | about perl 6 | 03:29 | |
alester_ | who's gonna write this stuff? | ||
pmichaud | to much of the community, "Perl 6" and "Rakudo" are still synonymous. | ||
alester_ | Who's gonna admin it? | ||
I don't mind adminning | |||
pmichaud | I'll write a lot. I'll also be happy to admin, or co-admin. | ||
I know that a lot of the rakudo devs are eager to see a central rakudo site. | |||
alester_ | of course | ||
pmichaud | (where "eager" translates into "willing to write content") | 03:30 | |
personally I'd like to be liberal in granting write privileges to the site, to encourage content creation. | |||
at least at first. | |||
alester_ | agreed | ||
mind you , i don't know squat abotu drupal | |||
but I'm assured it's simple | |||
and I know many folks who do | 03:31 | ||
pmichaud | neither do I, but I'm pretty sure we have people who can help :-) | ||
diakopter has suggested that we use WebGUI instead, though. | |||
(and has also offered to host things, on perlsix.(com|org|net) | |||
alester_ | I don't know who diakopter is | 03:32 | |
and I'd rather not use WebGUI | |||
JT is a good friend, and I know it's in Perl, but I just don't like it. | |||
pmichaud | I'm not familiar with WebGUI either, so I'm going based on others' opinions. | 03:34 | |
anyway, for the next couple of days I have to focus on rakudo repository issues, immediately after that will be website issues. | 03:35 | ||
alester_ | I'm gonna see if I can crnak a lot of Drupal goodness tonite | ||
pmichaud | that would be very helpful. | ||
alester_ | Risking the wrath of my Cruel But Fair editor | ||
03:36
_jedai_ joined,
|jedai| left
|
|||
alester_ | is there anything else you as Rakudo manager want to get out ther? | 03:38 | |
pmichaud | for the keynote, or for the site? | ||
alester_ | yes | 03:39 | |
what yo uwant me to exhort folks to do. | |||
Other ideas of things we need: | |||
Who is who | |||
What is the diff between Perl 6 and Rakudo | |||
What is Parrot and why do I care | |||
Will the repo split be done by FP? | 03:40 | ||
03:40
SamB left
|
|||
pmichaud | in all likelihood, yes. | 03:40 | |
03:40
km3 joined
|
|||
pmichaud | parrot has a pretty firm deadline to be moved by Feb 6. | 03:40 | |
03:40
hercynium left
|
|||
pmichaud | whatever we do with rakudo we likely need to do by August 26. | 03:40 | |
my expectation at this point is that people who don't want to know about parrot won't need to be bothered with it. | 03:41 | ||
at least, not as far as "download, install, test" is concerned. | |||
alester_ | how are they going to get Parrot? | ||
what's the link to your plan on this? | |||
I saw it andlost it | |||
pmichaud | it'll be part of the rakudo repo | 03:42 | |
all the planning I have thus far is on the perl6-compiler mailing list. | |||
anyway, my plan is that downloading rakudo also gives you the appropriate version of parrot | |||
alester_ | So there will be a clone of Parrot in the Rakudo repo? | ||
ok | |||
pmichaud | and the rakudo build process will build parrot (unless you supply the magic options that say to use some other copy of parrot) | 03:43 | |
03:43
eternaleye joined
|
|||
pmichaud | it kinda reverses things from the way we've been doing them, but I think it makes more sense for people who want to play with rakudo perl 6. | 03:43 | |
it also means that the average user doesn't have to worry about mapping versions of rakudo with versions of parrot. | |||
alester_ | sure | ||
pmichaud | i.e., we do that for you :-) | 03:44 | |
to your earlier question (what do I want to get out there) | |||
three things | |||
(1) rakudo exists | |||
(2) please play with it and report bugs | |||
(3) please help us improve the Perl 6 test suite | |||
those are, by far, the biggest helps at this point. | 03:45 | ||
alester_ | ok | ||
so one page we need is: How to improve the Perl 6 test suite | |||
pmichaud | we're also interested in people who can help develop Rakudo itself (of course), but if I had a choice between a rakudo devel or someone writing tests, I'd almost prefer the tests | ||
alester_ | One thing I want on the rakduo.org site | ||
if I may be so imposing | |||
is that we need defined responsibilties. | |||
"You there, you are in charge of these pages." | 03:46 | ||
pmichaud | that can work. | ||
but yes, we do end up with lots of "frequently asked questions" sorts of pages. | 03:47 | ||
03:48
km2 left
|
|||
pmichaud | anyway, part of our current problem is that we don't really have a good place to put this information now, except for the perl6 wiki (which for some reason annoys me to great end) | 03:49 | |
I think that if we had a place on rakudo.org, more such information would be forthcoming. | 03:50 | ||
alester_ | are we thinking wiki on rakduo.org? | 03:51 | |
I'm not | |||
pmichaud | drupal has some sort of limited wiki extension. | ||
but that's not what I'm aiming at | 03:52 | ||
I'm simply saying we haven't had a central place for such information -at all- other than the perl6 wiki | |||
I'm not saying the central place has to be a wiki. | |||
alester_ | ok | ||
03:52
SamB joined
|
|||
pmichaud | I just want a central place where we can make it possible for multiple authors to easily be adding and updating content in an organized fashion. :-) | 03:53 | |
having a blog is great, but I see that as being of only equal importance to the other information. we really need both. | |||
alester_ | yup | 03:54 | |
agreed | |||
I need a subdomain for rakudo.org while I work on it | |||
I guess dru will do | |||
aside: How tough is it to set up a git repo? | 03:55 | ||
I want one that's not github | |||
my own | 03:56 | ||
private | |||
pmichaud | I don't know how difficult it is. | ||
alester_ | ok, just a stab | ||
pmichaud | I was planning to use something like github unless/until we can easily put one on perl.org or equivalent. | ||
alester_ | ok, anything else we need? | ||
03:56
SamB left
|
|||
pmichaud | (if we use git, that is) | 03:56 | |
03:57
SamB joined
|
|||
pmichaud | however, Robrt says that it would be very easy to move a repo from github onto a perl.org server at some point in the future. | 03:57 | |
I presume that means it would be easy to do elsewhere also. | |||
alester_ | sure | ||
s1n | pmichaud: success, i finally got that laptop, installing arch on a vm, and will start taking it to work on thursday | 03:59 | |
pmichaud | s1n: yay! | 04:00 | |
okay, 10:00 -- I need to go spend some time with my wife | |||
bbl | |||
alester_ | kthx | ||
give her smoochies for us for your time. | |||
appreciate it. | |||
04:00
_jedai_ left,
|jedai| joined
04:13
buubot joined
04:22
gravity left
04:32
justatheory left
|
|||
alester_ | pmichaud: I do enjoy the feel of drupal.org/ | 04:47 | |
04:50
kid51 left
04:54
[particle]1 joined
04:57
[particle] left
05:01
jhuni joined
05:09
REPLeffect joined,
mj41_ joined
05:26
mj41 left
05:28
iblechbot joined,
meppl joined
05:37
aindilis` left
05:38
aindilis` joined
|
|||
alester_ | nslookup dru.rakudo.org | 05:46 | |
05:46
agentzh left
05:47
agentzh joined
06:00
donaldh left,
donaldh joined
06:11
_jedai_ joined
06:13
|jedai| left
06:17
On joined
06:28
iblechbot left
06:53
ashizawa joined
06:55
justatheory joined
06:56
km3 left
07:03
justatheory left,
DemoFreak joined
07:05
[particle] joined
07:07
xinming joined
07:13
DemoPhreak joined,
alester_ left
07:14
meppl left
07:20
xinming_ left
07:21
[particle]1 left
07:27
DemoFreak left
07:37
agentzh left,
agentzh joined
07:46
|jedai| joined
07:48
_jedai_ left
07:50
meppl joined
08:14
schmalbe joined
08:16
PZt left
08:21
mberends joined
08:26
pbuetow joined
|
|||
mberends | r35840 'make perl6' works on Debian amd-64, r35841 and later fail: perl6_ops_switch.c: In function 'Parrot_DynOp_perl6_switch_0_8_2': | 08:27 | |
perl6_ops_switch.c:462: error: 'core_switch_op_lib' undeclared (first use in this function) | |||
perl6_ops_switch.c:462: error: (Each undeclared identifier is reported only once | |||
perl6_ops_switch.c:462: error: for each function it appears in.) | |||
08:28
Traveler joined
|
|||
moritz_ | mberends: svn up please, chromatic++ fixed things like this a few hours ago (at least I think so) | 08:32 | |
08:33
pbuetow left
|
|||
mberends | moritz_: did svn up 5 mins ago, now running make, thanks | 08:33 | |
08:36
aindilis` left
|
|||
mberends | moritz_: r35856 after realclean fails: Could not find non-existent sub !keyword_role | 08:37 | |
$work & #sorry, gotta go... | 08:38 | ||
08:38
mberends left
09:00
Traveler left
09:08
mberends joined
09:15
zamolxes left
09:17
iblechbot joined
09:26
[particle]1 joined
09:37
jhuni left
09:38
masak joined,
lsyx joined
09:41
lsyx left
09:44
[particle] left
|
|||
masak | moritz_++ # rogue prelude | 09:49 | |
moritz_ | masak: want commit access? :) | ||
masak | sure, why not? :) | ||
you have my email address, I'm sure. | |||
09:51
[particle] joined
09:55
jferrero joined
10:02
[particle]1 left
|
|||
rakudo_svn | r35858 | jonathan++ | [rakudo] Move a =cut that broke stuff. | 10:10 | |
10:33
kane_ left,
kane_ joined
10:34
kane_ left
10:35
ejs joined
10:37
vixey joined
10:44
ejs left,
ejs joined
10:46
braceta joined
10:48
lisppaste3 left
10:54
ejs left
|
|||
mberends | masak: ping | 11:03 | |
11:07
agentzh left,
agentzh joined
11:10
pmurias joined
11:14
DemoPhreak left
11:39
PZt joined
11:44
pmurias left
11:46
[particle]1 joined
12:03
schmalbe left
12:04
[particle] left
12:10
ashizawa left
12:20
mvitor joined
|
|||
mberends | masak: unping & # (lunch) | 12:23 | |
masak | oh, I was pinged. sorry, didn't backlog. | ||
I'll be here for the rest of the afternoon. | |||
12:25
estrabd left
12:33
hudnix left
12:34
hudnix joined
|
|||
masak | moritz_: my semi-complaint posted to p6l. putting it into words only served to further convince me that a great mistake is being made. :/ | 12:36 | |
jnthn | mwaha...handles with regex is the works. | 12:46 | |
masak | jnthn: I'm sorry? | 12:48 | |
12:48
PZt left
|
|||
jnthn | masak: So am I... | 12:54 | |
class ReFrontend { has $.backend is rw handles /^hi/ }; | |||
masak | ooh! | ||
convenient. | |||
haven't had use for that yet, but good to know it's there. | |||
12:56
ejs joined
|
|||
jnthn | will be once the spectests pass ;-) | 12:56 | |
the handles ClassName case also works. | 12:57 | ||
masak | woot. | ||
13:08
km2 joined
13:13
ludan joined
13:16
mvitor left
|
|||
rakudo_svn | r35861 | jonathan++ | [rakudo] Make 'handles' trait verb handle pairs, classes, roles and smartmatching on anything else. | 13:20 | |
masak | jnthn++ | 13:23 | |
13:24
ejs left
|
|||
jnthn | Now to track down why handles * doesn't work... | 13:26 | |
mberends | masak: reping # come on out, I know you're in there! | 13:27 | |
masak jumps out | |||
ta-daa! | |||
mberends: pong | |||
mberends | wifi @work is much better, but my attention span is fragmented | 13:28 | |
13:29
mvitor joined
|
|||
mberends | re: u4l, you have my full support and commitment to write | 13:29 | |
masak | mberends: goodie. I will now lay out my very brief plan. | 13:32 | |
1. make a simple 'psi' tool work for all the individual search cases. i.e. write satisfactory documentation for each type of construct, and have psi find it when asked. | 13:33 | ||
2. hack, hack, hack. write, write, write. | 13:34 | ||
3. profit! | |||
13:34
kanru joined
|
|||
masak | mberends: I imagine your Pod parser figures in there somehow. I want to use the Pod format for documentation. | 13:34 | |
13:35
khatar joined
|
|||
khatar | hello | 13:35 | |
jnthn | hi | ||
masak | greetings. | ||
mberends | btw, why 'psi' ? pounds per square inch = pressure ? | 13:36 | |
khatar | "Synopses" are the "perl6 reference", yes ? | 13:38 | |
masak | mberends: it's parallel to Ruby's 'ri', which I like. | ||
khatar: aye. | |||
khatar | ok... i'm searching for the equivalent of perl5 file globbing in it | ||
does it desapear ? | |||
masak | mberends: also, 'psi' is often connected with ESP, mind-reading and stuff. a connotation I like. | 13:39 | |
13:39
ejs1 joined
|
|||
masak | mberends: that's what I'd like a documentation tool to do. read my mind. (In a good way) | 13:39 | |
mberends | super! dwimmy pod6! | ||
masak | buubot: spack glob | ||
buubot | masak: S02-bits.pod:16 S03-operators.pod:1 S04-control.pod:4 S05-regex.pod:2 S06-routines.pod:8 S10-packages.pod:2 S11-modules.pod:2 S12-objects.pod:10 S16-io.pod:3 S26-documentation.pod:1 S29-functions.pod:4 | ||
13:40
ejs1 left
|
|||
masak | khatar: I think file globbing is still in Perl 6, but I don't remember with which syntax. | 13:40 | |
khatar: might I direct you to the tests? they might give further enlightenment. | |||
khatar | oh | 13:41 | |
good idea! i don't have the reflex to see tests as a doc | |||
masak | svn.pugscode.org/pugs/t/ | ||
khatar: some tests are obsolete, but even then they provide historical clues :) | |||
khatar: the tests in t/spec are normative. | 13:42 | ||
those outside aren't. | |||
(but they might still be right, of course) | |||
khatar | thx for clues masak | 13:43 | |
masak | mberends: yes, dwimmy. but I see it as a worthy and interesting challenge to use as much of 'standard' Pod as possible to acheive this aim. | ||
khatar: good luck on your quest. be sure to come back and report later. | |||
mberends | if rakudo has a glob() it's recent, I had to write a workaround for myself a few weeks ago | ||
masak | mberends: Rakudo doesn't have it. | ||
jnthn | I don't remember seeing glob spec'd. | 13:44 | |
masak | but that was not the question, the question was "does Perl 6 have globbing?" | ||
jnthn | Depends what you take something not currently being in the spec (if it indeed isn't) to mean. :-P | ||
khatar | ok. I explain: | 13:45 | |
masak | oh, that last part was directed at mberends. | ||
jnthn | masak: Oh. | ||
khatar | i begin to think that perl6 could kill shell programming if it has: | ||
- a configurable and powerfull line edition system (ZLE is the reference) | 13:46 | ||
mberends | understood. it seemed as if khatar was hoping to actually use glob(), not just read about it | ||
khatar | - a cool system to pipe objects ( powershell is the reference) | 13:47 | |
mberends, no: glob('**/*') is too long: | |||
in perl5, just <**/*> works! | |||
13:47
Exodist joined
|
|||
masak | khatar: sounds like you want a module for this. | 13:48 | |
one that gives you a new quoting construct. | |||
khatar | for <**/*[ch]> { for $=<$_> { print if /^#include/ }} | ||
pugs_svn | r24982 | jnthn++ | [t/spec] Some new tests for handles, and unfudge most of the existing ones, plus use dies_ok where appropriate. | ||
khatar | this would be used by shell scripters for sure | 13:49 | |
rakudo_svn | r35862 | jonathan++ | [rakudo] Fix whatever. | 13:50 | |
13:50
km2 left
|
|||
khatar | and what was wondering before joinning is: as zsh as a very powerfull globbing system , is it possible to define what comes into <> | 13:50 | |
to add zsh-like globbing to perl6 | 13:51 | ||
masak | khatar: all is fair if you predeclare | 13:52 | |
moritz_ | khatar: <> has enough semantics already... but you could think about the builtin function "glob" | 13:53 | |
khatar | masak, predeclare what ? | 13:54 | |
masak | khatar: that you want to change the semantics of <> | 13:55 | |
khatar | moritz_, you have to admit that glob('foo') is not as attractive than <foo> for the shell scripter :) | ||
moritz_ | khatar: yes, but shell scripters... well... use the shell. | ||
jnthn | Yeah, the thing is that <foo> already means something in Perl 6. | ||
khatar | arhhhh ... yes! it's an array :-( | 13:56 | |
moritz_ | khatar: but you can define something along the lines of Q:g<...> where the :g adverb stands for glob | ||
khatar | yeaaahhh! ok | 13:57 | |
this is what i'm searching for | |||
masak | Perl 6 delivers. | 13:58 | |
but I doubt any of the implementations allow you to define that yet. | |||
moritz_ | STD.pm does, I guess | 13:59 | |
masak | moritz_: unfortunately, STD.pm doesn't actually _run_ the program :) | ||
14:05
spx2 left,
spx2 joined
|
|||
masak | mberends: still there? | 14:05 | |
mberends | intermittently, yes | 14:06 | |
masak | mberends: ...which brings me to my second point. I'm still enormously impressed with the Pod parser work you've done, so... | ||
...I've decided to review it and blog about it. if that's ok with you. | |||
it'll be like a book review. | |||
14:07
[particle] joined
|
|||
masak | the point of which will be to (1) increase awareness of the Pod parser suite, and (2) increase awareness about literate programming and its habits of treating programs as literature. | 14:07 | |
I'm aware it sounds a little funny. it's an experiment. :) | 14:08 | ||
mberends | yes, that's very ok. there is still some bitrot, so I should stabili[sz]e it in time for your publication. we share the goal of clear writing, beautiful code etc. | ||
masak | good. | 14:09 | |
I can wait a few days, if that's what you need. | |||
mberends can never tell how much time will be needed :) | |||
masak | curse you, Hofstadter! | 14:10 | |
PerlJam | publish early, publish often :-) | ||
masak | PerlJam: are you saying I should just go ahead and do the review? | ||
mberends | M$ mo : if it compiles, ship it! | ||
PerlJam | I am. | ||
masak | PerlJam: you have a point. | 14:11 | |
PerlJam | and mberends shouldn't mind a little bitrot as that happens when things are in flux. | ||
masak | PerlJam++ | ||
but let's make it Saturday, as I tend to foolishly schedule a lot of work during the work week. | |||
mberends accepts the pressure (psi) of maintaining Pod::Parser bitrot free | 14:12 | ||
masak: thanks, it will be good to have more eyes looking for bugs etc. | 14:14 | ||
masak | mberends: looking forward to providing the eyes. | ||
PerlJam | mberends: just don't be a slave to perfection. | 14:15 | |
masak | code trumps talk, aye. | 14:16 | |
jnthn realizes that the case where you have a class nested within a role is nasty. | 14:19 | ||
masak | jnthn: what does that even mean? | 14:22 | |
jnthn | role Foo[::T] { class Bar is T { ... } method x { say Bar.new.is(T) } } | ||
erm, .sa | 14:23 | ||
.isa # argh | |||
I guess (42 but Foo[Int]).x should always give true... | |||
But it means having a separate class per role type-instantiation. | |||
14:24
[particle]1 left
|
|||
masak | jnthn: Java has something similar for when you don't declare inner classes 'static'. | 14:24 | |
jnthn | *nod* | ||
14:25
braceta_ joined
|
|||
mberends | if I can unbreak Pod::Parser for rakudo r{latest}, there is an xhtml emitter in the pipeline, partial support for pod5<->pod6, additions test suite... | 14:25 | |
jnthn | mberends: The paresr is written in Perl 6? :-) | 14:26 | |
mberends | si | ||
jnthn | Nice! | ||
masak | incredibly nice. I'm eager to review it. | 14:27 | |
PerlJam | mberends: did you independently create it, or hack the pod parsing from STD a little, or use Damian's perl5 prototype? | 14:28 | |
mberends | it declares grammar Pod6 { .... }; hence the $x ~~ / <Pod6::whatever> / a day or two ago | ||
moritz_ | Pod6.parse($x) | 14:29 | |
mberends | new from the ground up | ||
masak | mberends: does it conform to STD.pm? | ||
there's a big fat warning in S26 about S26 being obsolete. | |||
and people are directed to STD.pm. | 14:30 | ||
viklund | masak: I know how to make november run on the server (I think) | ||
14:30
braceta_ left
14:31
braceta_ joined
|
|||
masak | viklund: don't sneak up on me like that! o_O | 14:31 | |
viklund | as soon as the mother of my child gets home I'll do it | ||
masak | viklund: sounds very good. | ||
14:31
PZt joined
|
|||
masak | viklund++ | 14:31 | |
we had a mergefest yesterday at the November HQ. | |||
it was the most fun I've had in a long time. | 14:32 | ||
mberends | masak: which instance of STD.pm? When I last looked, it specified only the outer =begin pod and =end pod markers and little else. S26 is only spec for the innards afaik. | 14:36 | |
masak | mberends: ok. I realize that I will have to delve into these issues myself anyway, when I do the review. | ||
14:36
PZt left
|
|||
masak | mberends: it seems strange to me that S26 would defer to STD.pm if the latter doesn't actually contain more recent information. | 14:37 | |
14:42
braceta left
|
|||
jnthn is about done with handles | 14:43 | ||
Still have the s/a/b/ case to do but waiting on having that implemented first. | |||
And also the case where we write it on a method to delegate on the return value. | 14:44 | ||
Want to ask pmichaud about that one... | |||
mberends | masak: try grep -i pod ~/pugs/src/perl6/STD.pm | 14:50 | |
masak | mberends: you're making that assumption again. :P | 14:51 | |
mberends | the directory one? you didn't format your hard drive? | ||
masak | actually, yes. | 14:52 | |
but I liked the old way of arranging things. it's far superior. | |||
mberends now has 7 parrot revision directories | 14:53 | ||
masak | oy, why? | ||
mberends: I did the grep and I see what you mean now. this is something that we should collaborate with TimToady on. maybe he'll accept patches to STD.pm that parse Pod. | 14:55 | ||
pugs_svn | r24983 | jnthn++ | [t/spec] Tests for handles @foo ... | 14:56 | |
mberends | why = regression. when something breaks, not knowing whether rakudo or my code is the problem. (usually it's me of course, but even parrot wobbles sometimes :P ) | 14:58 | |
rakudo_svn | r35864 | jonathan++ | [rakudo] Implement use of has @array handles ... and also give an error if has %x handles ... is used (the synopses reserve the syntax for now but don't specify it). | 15:00 | |
masak | mberends: I am aware of that problem. just haven't solved it that way. | 15:04 | |
jnthn | std: my Array of Int $x; | 15:12 | |
p6eval | std 24983: OUTPUTĀ«00:05 83mā¤Ā» | ||
15:15
pmurias joined
15:21
kisu_ left
|
|||
viklund | masak: come on over to november-wiki | 15:21 | |
15:21
estrabd joined
15:25
kisu joined
15:30
ruoso joined
|
|||
ruoso | Hello! | 15:30 | |
lambdabot | ruoso: You have 2 new messages. '/msg lambdabot @messages' to read them. | ||
15:37
pmurias left
15:38
kanru left
15:40
kanru joined
15:48
braceta joined
15:49
vixey left,
jhorwitz joined
15:51
nihiliad joined
15:52
ruoso left
15:54
ruoso joined
|
|||
ruoso | hmpf... my uplink is cutting my connections again... | 15:55 | |
rakudo_svn | r35866 | jonathan++ | [rakudo] Parse and implement 'of' keywrod, and switch s/typename/fulltypename/ in a place where STD.pm has it. | 16:00 | |
16:02
justatheory joined
16:07
eternaleye left,
braceta_ left
|
|||
pugs_svn | r24984 | jnthn++ | [t/spec] Add some tests for using parametric roles, including the of syntax form, as type constraints. | 16:16 | |
rakudo_svn | r35867 | jonathan++ | [rakudo] Add S12-role/parameterized-type.t to spectest.data. | 16:20 | |
16:26
stephenlb joined
16:28
[particle]1 joined
16:29
kanru left,
pmurias joined
|
|||
pmurias | ruoso: hi | 16:30 | |
ruoso | hi pmurias | ||
16:30
masak left
|
|||
pmurias | do you think changing PurePrototypeHOW to lookup methods in ^!instanceof if they are not found in ^!methods is a good idea? | 16:31 | |
(done it just wandering if i should commit it ;) | |||
ruoso: i also changed the br instruction in mold to treat everything other than native false as true | 16:34 | ||
ruoso | pmurias, I think diakopter's problem building smop probably tells us that it's time to split up smop sources into different packges | 16:37 | |
pmurias, that would turn it into a DelegatedPrototypeHOW | 16:39 | ||
pmurias | the PurePrototypeHOW is more like SingletonHOW now | 16:40 | |
rakudo_svn | r35868 | jonathan++ | [rakudo] Roles need to know how to .WHICH (if nothing else so we can recursively parameterize them). | ||
pmurias | ruoso: how much work would the split be? | 16:41 | |
ruoso | pmurias, I'm not sure yet.. but it's likely to be a lot | ||
specially splitting the build system | |||
pmurias, knowhows can be clonned | 16:42 | ||
pmurias, it is PurePrototype because it doesn't delegate | |||
that's what I meant... | 16:43 | ||
pmurias | what's the advantage of not delegating? | ||
ruoso | being protected against changes in the delegated object | ||
16:44
[particle] left
16:47
kanru joined
16:48
alanhaggai joined
|
|||
pmurias | ruoso: re the split i'm unsure if it's worth doing it now instead of implementing basic features | 16:48 | |
pugs_svn | r24985 | jnthn++ | [t/spec] Some harder tests for parameterized types, when we parameterize the role with itself. All passing. | ||
ruoso | but I think we could have PurePrototypeHOW simply named PrototypeHOW | 16:52 | |
and make it the way you did | |||
but the problem with that is that the handling of attributes become much more complex | |||
pmurias, take a look how pureprototypehow handles add_attribute now | |||
when you define an attribute in a pureprototype it already initializes the instance storage | |||
which is not a problem considering you're going to clone the object when you want a different instance | |||
pmurias, and that's actually the reason that makes it interesting for bootstrapping purposes | |||
pmurias, that's the reason I'm also unsure | 16:53 | ||
pmurias | well if instance_storage autovivied the problem would be largly gone right? | 16:55 | |
ruoso | not at all | ||
16:55
PZt joined
|
|||
ruoso | because in the intialization of the instance storage you have the bind a container as the attribute was declared | 16:56 | |
pmurias | so we need some sort of a BUILDALL method right? | 16:58 | |
ruoso | which is basically what ClassHOW do | 16:59 | |
pugs_svn | r24986 | pmurias++ | [smop] PurePrototypeHow does delegated to .^!instanceof | 17:03 | |
17:05
hercynium joined
|
|||
rakudo_svn | r35869 | coke++ | Add a basic version of .pick() for Range and hopefully not break anything. | 17:10 | |
pugs_svn | r24987 | pmurias++ | [smop] rename PurePrototypeHOW to PrototypeHOW | 17:13 | |
17:19
duke_leto joined
17:22
spx2 left
17:23
duke_leto left,
spx2 joined
17:27
pmurias left
|
|||
ruoso | pmurias, remember you need to change mildew to use that for "knowhow"s | 17:29 | |
pmurias, but the way it is now, it is going to fail on the use of attributes | |||
I think implementing .^!clone in p6opaque is probably going to work better | 17:30 | ||
17:35
jferrero left
17:42
duke_leto joined
17:43
duke_leto left
17:44
ejs1 joined
17:48
donaldh left
17:53
pbuetow joined
17:55
mberends left
17:56
mberends joined
17:59
ejs2 joined
18:01
ejs1 left,
vixey joined
|
|||
pugs_svn | r24988 | jnthn++ | [t/spec] If we're testing that a type-check allows good things, we also need to check it won't accept wrong things. | 18:02 | |
rakudo_svn | r35870 | jonathan++ | [rakudo] If we take a type as a parameter, we should just bind the parameter directly do that name, not treat it as if it's a type capture. Otherwise, we get wrong answers in various cases, such as when parametric roles are parameterized with other roles. | 18:10 | |
18:12
ludan left
|
|||
TimToady | jnthn: why isn't type capture treated that way too? | 18:12 | |
jnthn | TimToady: There's a difference between (I think): | ||
sub foo(::T $x) { ... } | |||
and | |||
sub foo(::T) { ... } | 18:13 | ||
One takes a parameter $x and captures it's type into T | |||
18:13
ruoso_ joined
|
|||
jnthn | The second would I believe just expect something to be passed that does Abstraction | 18:13 | |
Which would be bound to T. | |||
Right? Wrong? | |||
TimToady | how is "capture its type into T" different from binding? | ||
jnthn | In the first case the parameter that is passed goes into $x itself. And then we put the type of that parameter into T | 18:14 | |
In the second case, the parameter that gets passed ends up in T. | |||
TimToady | in either case, you make sure ::T has the proto-object of whatever the parameter was | ||
whether or not the argument was a protoobjet | |||
jnthn | Ah. | 18:15 | |
TimToady | protoobjƩt, pardon... | ||
jnthn | That's exactly the behavior I just got rid of. | ||
ruoso_ | TimToady, have you had some time to take a look at yesterday's backlog? | ||
jnthn | Oh, hmm. The alternative is that a Role always returns itself when asked .WHAT. | ||
ruoso_ | or I should say backlong | ||
jnthn, I always thought a Role returns itself in the .WHAT | 18:16 | ||
jnthn | Heh, OK. | ||
ruoso_ | as well as any protoobject | ||
jnthn | In that case I'll do it that way. | ||
erm? | |||
"as well as any protoobject"? | |||
ruoso_ | Object.WHAT returns Object | ||
[particle]1 | any other | ||
18:17
[particle]1 is now known as [particle]
|
|||
jnthn | Yes. | 18:17 | |
And for a role it returns the role itself? | |||
jnthn does it that way | 18:18 | ||
ruoso_ consider Foo to be a protoobject for role Foo { } | |||
I don't see a difference between a protoobject of a class or of a role | |||
TimToady | makes me wonder if roles and protoobjects can be unified somehow... | ||
jnthn | TimToady: Plesae stop wondering. :-S | 18:19 | |
ruoso_ | I always thougth there isn't really a role type | ||
TimToady | I will let ruoso_ wonder on my behalf then... :P | ||
ruoso_ | as well as there isn't really a class type | ||
in fact... the difference between a Role and a Class is the thing that responds for its HOW, in my understanding | 18:20 | ||
18:20
tux300181 left
|
|||
ruoso_ | in the meanwhile, TimToady, I hate to be annoying (ok, I don't hate it), but we would need some resolution in the capture issue soon... | 18:20 | |
jnthn | There isn't really a class type apart from the one mentioned in S12. ;-) | 18:21 | |
ruoso_ | S12 mention it to say it isn't ;) | ||
jnthn | (In the traits section) | ||
Yeah, I know that quote too. | |||
class MyBase { | |||
multi trait_auxiliary:is(MyBase $base, Class $class; $arg?) {...} | |||
What is Class here? | 18:22 | ||
ruoso_ | an inconsistency in S12? | ||
;) | |||
maybe there is a Class Role | |||
and a Role Role | |||
so you can differentiate them in the signature matching | |||
jnthn | Perhaps. ;-) | 18:23 | |
ruoso_ | but maybe | ||
subset Class of Object where { .HOW === ClassHOW } | |||
subset Role of Object where {.HOW === RoleHOW } | 18:24 | ||
jnthn | .HOW gives the particular instance of he metaclass for $_ though? | ||
So === wouldn't work? | |||
18:25
riffraff joined
|
|||
jnthn | .HOW.isa(ClassHOW) ? | 18:25 | |
18:25
tux300181 joined
|
|||
ruoso_ | when class-based, yes... | 18:25 | |
jnthn | But subset type could well be the way to go. | ||
ruoso_ | SMOP is prototype based, so you have just ClassHOW | ||
and the methods are registered in the protoobject | 18:26 | ||
jnthn | Ah, OK. | 18:27 | |
Thus why you just have ClassHOW. | |||
Fair enough. | |||
*one ClassHOW | |||
ruoso_ | yes... it looked simpler to implement arbitrary mixins | ||
any object can become its own prototype | |||
you just have to add a method to it, or compose a role to it | |||
pugs_svn | r24989 | moritz++ | [irclog] try to log /quit's via evil monkey-patching, rg++ | 18:28 | |
ruoso_ | $foo.^add_method('bar', sub { say "Hello" }); $foo.bar | ||
18:28
rhr joined
|
|||
ruoso_ | the same way as... | 18:29 | |
$foo.^compose_role(Bar) | |||
and I guess | |||
$foo.^compose_role(Bar, \($role, $parameters)) | 18:30 | ||
in fact, that backslash is wrong there... | |||
it is already a single positional argument, right? | |||
jnthn | It's only allowed to take one positional there. | 18:31 | |
Though the parser IIRC doesn't promise you that, you need to check it. | |||
ruoso_ | there where? | ||
khatar | does rakudo lives in a different svn than parrot ? | ||
jnthn | $x does Foo($one_thingy_here) | ||
moritz_ | khatar: no, it's in languages/perl6/ in the parrot repo | ||
khatar | well | ||
ruoso_ | jnthn, why only one positional? | 18:32 | |
khatar | i update like this : rsync -av --delete svn.perl.org::parrot-HEAD parrot | ||
jnthn | ruoso_: Because the spec says so. | ||
khatar | less parrot/languages/perl6/t/spectest.data gives me a long list of files | ||
ruoso_ | hmm... interersting... | ||
khatar | i can't find in my fs | ||
jnthn | ruoso_: Also you are only allowed to have one attribute in any role you mix in this way. | ||
ruoso_ | any special reason to that? | ||
jnthn | And the value is used to initialize that one attribute. | ||
It's for property initilization really. | |||
moritz_ | khatar: do you have a svn client installed? | ||
jnthn | ruoso_: It's just The Design. | 18:33 | |
I'd imagine S12 doesn't have it that way for no reason. ;-) | |||
18:33
ruoso left
|
|||
ruoso_ | jnthn, but the spec does use named attributes in role attributes | 18:34 | |
khatar | moritz_, i don't use svn but i can install | ||
ruoso_ | named arguments, that is | ||
khatar | (i'm confortable with git in fact) | ||
jnthn | ruoso_: Where? | ||
moritz_ | khatar: 'make spectest' tries to pull in the test files from the pugs svn repository | ||
khatar: so without an svn client that's bound to fail | |||
jnthn | A role applied with C<does> may be parameterized with an initializer | 18:35 | |
in parentheses, but only if the role supplies exactly one attribute | |||
to the mixin class: | |||
$fido does Wag($tail); $line does taint($istainted); | |||
khatar | ok | ||
i install | |||
ruoso_ | jnthn, it uses Array[:of(Int)] later in the same section | 18:36 | |
khatar | but the next rsync will erase those files, right ? it's much better to use svn averywhere ? | ||
pugs_svn | r24990 | moritz++ | [irclog] better nick change messages, rg++ again | ||
moritz_ | khatar: that's what I do (use svn for parrot and the tests) | ||
jnthn | ruoso_: That's a parameter to the role. | ||
Also, that should now I think just be Array[Int] | |||
ruoso_ | ok, I think I'm confussing the thing between [ ] and ( ) | 18:37 | |
jnthn | (Because we don't multi-dispatch on named parameters, so it's a bit awkward having of resulting in a named parameter...) | ||
Yes. | |||
khatar | so i'll do either | ||
jnthn | (...) is the bit I'm talking about. | ||
The [...] is part of the longname of the role. | |||
Well, supplies values for it...or something like that. :-) | |||
jnthn really needs to work on S14. | 18:38 | ||
While the roles stuff is fresh in my head. | 18:39 | ||
ruoso_ | jnthn, alright... so to use Array($foo) it needs only a single positional argument | ||
jnthn | ruoso_: Right. | ||
ruoso_ | but does the same apply to Array[$foo]? | ||
jnthn | No | 18:40 | |
ruoso_ | ah.... | ||
18:40
rhr_ left
|
|||
ruoso_ | right.. | 18:40 | |
rakudo_svn | r35872 | jonathan++ | [rakudo] Revert last patch - foo(::T) should act like a type capture after all, according to TimToady++. And then a Role hands back itself in response to .WHAT. | ||
jnthn | That'd be a curious thing to supply there though. | ||
Array[Int] would be a better example. | |||
ruoso_ | jnthn, not if $foo is a protottype | ||
;) | |||
jnthn | ruoso_: True | ||
It *would* work. | 18:41 | ||
ruoso_ | but I guess you can send named arguments to Array( ) as if they were arguments to .new | ||
1 but Dog(:name('Fido'), :color('black') | 18:42 | ||
) | |||
jnthn | I think S12 says otherwise. | ||
(OK, we could choose to make it say that...) | |||
ruoso_ | it actually agrees with you | 18:43 | |
"Note that the parenthesized form is not a subroutine or method call. It's just special initializing syntax for roles that contain a single property" | |||
jnthn | Right. | ||
18:43
Psyche^ joined
|
|||
ruoso_ | but it would be cool to support the named parameters ;) | 18:44 | |
jnthn | We handle it specially in Rakudo and we even give a compile time error about it. | ||
18:44
Patterner left,
Psyche^ is now known as Patterner
|
|||
ruoso_ | not that "1 but Dog" is a sane example... but .... | 18:44 | |
jnthn | (If you supply more than one positional there). | 18:45 | |
moritz_ | if you think sufficiently abstract... | ||
jnthn | Yeah, I wouldn't object if the named ones became spec. | ||
18:46
ejs1 joined
|
|||
ruoso_ still trying to think what "1 but Dog" could mean ;) | 18:46 | ||
18:46
ilbot2 left
18:47
ilbot2 joined
|
|||
moritz_ | ruoso_: one object, but it's a dog ;-) | 18:47 | |
18:47
DemoFreak joined
|
|||
khatar | moritz_, it works ! thanks | 18:48 | |
ruoso_ | jnthn, actually the quote I took was talking about "but", not about the arguments to the role | ||
18:48
[particle]1 joined
|
|||
TimToady | the special syntax predates the WHENCE syntax, so maybe those could be combined | 18:49 | |
1 but Dog{:name<Fido>, :color<black>} | |||
18:50
|jedai| left
|
|||
PerlJam | ruoso_: 1 but Dog is my #1 pooch. | 18:50 | |
18:50
|jedai| joined
|
|||
TimToady | your life is a bitch? | 18:50 | |
ruoso_ | TimToady, the later syntax really does make sense, since BUILD needs to be called for the protoobject with the given object as invocant | 18:51 | |
jnthn | Aye. | 18:52 | |
TimToady | the special syntax is still useful for 1 positional arg though | ||
jnthn | TimToady: We could say you *either* have one positional *or* many named. | ||
ruoso_ | yes, since BUILD doesn't expect a positional argument | ||
TimToady | or maybe we special case a positional for roles with one attr | 18:53 | |
ruoso_ | the special syntax is supposed to turn that into a named argument | ||
TimToady | sounds like a plan | ||
ruoso_ | 1 but answer(42) is really: 1 but answer{ :answer(42) } | ||
jnthn | Well, or whatever the one attr that answer has is called. | ||
ruoso_ | yes yes... | 18:54 | |
that is a misleading example | |||
jnthn | (Right now there's no requirement that the attr and the role name match) | ||
TimToady | 1 but answer{ :*(42) } :) | ||
jnthn | worreva | ||
ruoso_ | can you really send "whatever" as the key to a named argument? | ||
TimToady | no, hence the smiley | 18:55 | |
ruoso_ | *phew* | ||
TimToady | meanwhile, I've broken STD entirely by trying to add unary associativity for mtnviewmark++ | 18:57 | |
my EXPR was assuming that lack of associativity means unary, sigh | |||
18:57
ejs2 left
|
|||
ruoso_ | TimToady, in a unrelated matter... as writing code for the SMOP prelude, I realised that "for"'s ability to leak out as the implicit return is probably going to be a FAQ... | 18:59 | |
people is really used to for as a control statement | 19:00 | ||
not as a sub call | |||
in the sense that control statements are transparent to implicit return | |||
as in if/eles | |||
*if/else | |||
19:02
|jedai| left,
|jedai| joined
|
|||
ruoso_ | Q: why the for block doesn't execute sometimes? A: because you might be using the function that contains it in a lazy context... | 19:03 | |
jnthn | I didn't realize it could do that. | ||
19:04
[particle] left
|
|||
jnthn | I know it's meant to collect the results of the iteration and can return that. | 19:04 | |
Or will implicitly return that. | |||
ruoso_ | that *and* it is lazy | ||
jnthn | Oh? | ||
Where's that spec'd? | |||
ruoso_ | as map | ||
jnthn | for is not map | ||
ruoso_ | it kinda is | ||
jnthn | (or shouldn't be anyway...) | ||
*kinda* but not exactly. | |||
I'd really really not want for to be so map-ish as it can do that. | 19:05 | ||
TimToady | no, they're essentially identical | ||
jnthn | It's just too surprising. | ||
TimToady: OK, then I'd argue that's a mistake. :-) | |||
TimToady | that's how it's specced | ||
jnthn | Map - sure, being lazy there ain't surprising. | ||
But having for suddently turn into something that doesn't execute.. | |||
ruoso_ | yeah... "for" is a imperative keyword | 19:06 | |
"map" is a functional keyword | |||
jnthn | sub foo { for 1..100 { .say } | ||
} | |||
foo(); | |||
Doesn't use the return value, but I'd really like that to print 100 lines of output! | |||
ruoso_ | jnthn, in that case, it will, because in void context, it should be exausted | ||
the same for map | |||
jnthn | Ah. | 19:07 | |
OK, maybe that's not quite so bad then.. | |||
TimToady | basically, the situation doesn't arise unless you've screwed up what the function is supposed to be returning anyway | ||
PerlJam | and aas long as we still encourage people to use "return" ... | ||
jnthn | Hmm. | ||
ruoso_ | TimToady, my point is that this is somewhat fragile | ||
PerlJam | s/aa/a/ | 19:08 | |
jnthn | Yeah, it's maybe not as serious as I first thought. | ||
I'd rather for were just simple though. | |||
TimToady | if you're using for for its side effects, and you always want to return something, it'll be a separate statement anyway | ||
it is simple | |||
it's just a map | |||
ruoso_ | the problem is that the definition of the context might be far away from the end of the function | ||
jnthn | Programmer expections simple, not implementation simple. :-) | ||
19:09
duke_leto joined,
duke_leto left
|
|||
ruoso_ | sub foo (*@args) { say @args[0] }; sub bar { for 1..100 { .say } }; bar(foo); | 19:09 | |
TimToady | lists are lazy in Perl 6, so people who want side effects have to keep track of that. | ||
ruoso_ | *I*'m fine with that... | 19:10 | |
but it will probably become a FAQ | |||
TimToady | at least it's a different FAQ than for Perl 5 :) | ||
ruoso_ | heh | ||
TimToady | and they're learning FP rather than idiosyncratic syntax | 19:11 | |
ruoso_ | Perl 6: lisp with a syntax ;) | ||
khatar | any other good news from pugs ? like perl6 modules ? | 19:12 | |
TimToady | syntax with a lisp | ||
khatar | moritz_, i'm ashamed: make spectest was on the readme | 19:13 | |
i didn't noticed it the first time i read | |||
ruoso_ | that remembers me mildew still doesn't notice Void context | 19:14 | |
19:19
ejs1 left,
ejs1 joined
|
|||
ruoso_ | TimToady, in yet another unrelated matter, re-opening an issue open yesterday... if every built-in type is a Role, is Object a Role? | 19:21 | |
19:22
PZt left
|
|||
khatar | good night perl6 people | 19:22 | |
mberends | g'night khatar, hope you will enjoy coming back often | 19:24 | |
19:35
pmurias joined
19:36
|jedai| left,
|jedai| joined
19:43
ejs1 left
19:45
|jedai| left,
|jedai| joined
19:47
jferrero joined
19:48
lisppaste3 joined
|
|||
ruoso_ | jhorwitz, hi... did you talk with ambs? | 19:52 | |
jhorwitz | ruoso_: no, been sick and extremely busy. but thanks for reminding me. | 19:53 | |
TimToady | ruoso_: why not? Object just puns to a class that has no attributes | 19:55 | |
pugs_svn | r24991 | moritz++ | [S29] changed outdated notice about document location, noticed by Coke++ | ||
ruoso_ | TimToady, cool... as I stated yesterday, it also solves the "making undef defined" problem | ||
and allows different implementations of Object | |||
moritz_ | if Object is a role, am I still allowed to write 'class Object is also { ... }'? | 19:56 | |
jnthn | Hmm. | ||
TimToady | yes, but it applies only to the punned class | ||
jnthn | Not do anything that otherwise does Object. | ||
TimToady | roles are immutable | ||
ruoso_ | is the punned class a singleton? | ||
I mean | 19:57 | ||
jnthn | Each role gets one punned class (per parameterization) | ||
Is I think the best way to have it. | |||
TimToady | why not? | ||
ruoso_ | do every already instantiated objcet of that class see the new version? or only the new instances? | ||
jnthn | for is also I think all the existing instances would. | 19:58 | |
At least, that's how it works in Rakudo ATM. | |||
19:58
braceta left,
iblechbot left
|
|||
ruoso_ | this basically goes to... | 19:59 | |
should a role store a punned class that might be changed? | |||
jnthn | The role holding onto the pun is the obvious implementation, I think. | ||
TimToady | I suspect people would expect it to work that way | 20:00 | |
ruoso_ | the other option would be that to be an optimization only | ||
and the pun to happen everytime the Role is used as a class | |||
jnthn | That'd create a whole _bunch_ of punned classes. | ||
ruoso_ | (which could be optimized away, for the common case) | ||
jnthn | That'd be very sub-optimal. | ||
ruoso_ | but would protect older instances from action-at-a-distance | 20:01 | |
jnthn | I think just going with the role storing its punned class (where we understand the role meaning the role with a given set of arguments to its parameters) is the easiest and clearest way to go. | ||
If people are doing is also, they probably want existing instances affected. Otherwise they could make a subclass and create new instances out of that. | 20:02 | ||
ruoso_ | but maybe it's just my twisted mind to think that's relevant ;) | ||
jnthn, that's a point | |||
jnthn | Action at a distance is bad generally. But I don't expect is also to be something used regularly. | 20:03 | |
ruoso_ | we can assume that "is also" *is* action-at-a-distance | ||
moritz_ agrees with jnthn | |||
jnthn | *nod* | ||
ruoso_ | and therefore discourage it | ||
jnthn | I hadn't ever thought of it as a construct I would encourage. ;-) | 20:04 | |
ruoso_ | explaining that they can make a lexical bind to a subclass replacing the original class visibility | ||
moritz_ | I mostly think of it as a construct to build a prelude ;) | ||
jnthn | ruoso, Yes, that's exactly the right way to handle this kind of situation. | 20:05 | |
ruoso_ | one could even think of a keyword to huffmanize it | ||
jnthn | Take advantage of scope. | ||
my class Foo is locally { ... } | |||
(declares lexical class Foo and then makes it derive from the outer Foo) | 20:06 | ||
Or something. | |||
I'm not good at naming stuff. | |||
ruoso_ | that looks like a solution | ||
jnthn | Aye. I'll delegate the choice of name to someone else. | ||
20:06
mvitor left
|
|||
jnthn | gotta head to the airport, bbl | 20:07 | |
ruoso_ | anyway... the "my" there is options | ||
optional | |||
because it will only declare that name *in the current package* | 20:08 | ||
not in the GLOBAL:: package | |||
one could even think that "is also" should behave like that by default and let monkey-patch to something more de-huffmanized | 20:09 | ||
TimToady, what do you think? | |||
TimToady | is ALSO maybe | 20:10 | |
but grep can find "is also" pretty easily | |||
20:10
jferrero left
20:11
jferrero joined
|
|||
ruoso_ | TimToady, is ALSO being the mokey-patch? | 20:14 | |
TimToady | presumably | 20:15 | |
I like shouting on things the boss should frown at :) | |||
learned it from Ada, kinda | |||
with UNCHECKED_TYPE_CONVERSION | 20:16 | ||
ruoso_ | class Foo is MONKEY_PATCHED { ... } | ||
:) | |||
20:16
|jedai| left
20:17
pmurias left
|
|||
TimToady | I'm looking for a monkey-faced smiley... | 20:17 | |
ruoso_ | monkey Foo {... } | ||
20:18
|jedai| joined,
ejs1 joined,
riffraff left
|
|||
TimToady | (:-) | 20:19 | |
(8-) | |||
maybe "is also" and "is instead" are only available if there's a "use MONKEY_PATCHING" at the top | 20:20 | ||
ruoso_ | they can be available | 20:21 | |
the question is the visibility of the change | |||
20:21
pmurias joined
|
|||
TimToady | well, can depend on the scope of the declaration, I think | 20:21 | |
pmurias | ruoso_: what will the directory structure after the split refactor be? | 20:22 | |
ruoso_ | pmurias, I was thinking in smop-???? inside smop | ||
TimToady, the idea I'm throwing is that "is also" replaces the "name" not changes the class itself | 20:23 | ||
TimToady | which you can do with my but not our | ||
ruoso_ | where "is also" creates a subclass, and "is instead" creates an unrelated class" | ||
our only means that it is registered in the *current* package | |||
not in the original package where the class was defined | 20:24 | ||
TimToady | but why would you do that instead of derivation? | ||
ruoso_ | to steal the name | ||
making localized custom versions of classes the code in the inner scope will expect | |||
TimToady | my class Foo is OUTER::Foo {...} | ||
20:25
spx2_ joined
|
|||
ruoso_ | I was arguing that in the current scheme, monkey-patch is more huffmanized than scoped customizations | 20:25 | |
pugs_svn | r24992 | moritz++ | [irclog] monkey-patch with less noise, rg++ | ||
TimToady | not if we require a use | ||
ruoso_ | right... | 20:26 | |
ok... | |||
ruoso_ commute & | |||
20:26
ruoso_ left
|
|||
moritz_ | I need a small example for a case where 'is copy' is useful on a positional argument - any ideas? | 20:28 | |
pmurias | fixing the argument | 20:31 | |
20:32
spx2 left
20:35
jan__ left
20:38
jan_ joined
20:44
__felix__ joined,
__felix__ left
|
|||
pugs_svn | r24993 | lwall++ | [S03] more alignment with STD | 20:49 | |
r24993 | lwall++ | [S12] monkey patching now requires a special "use MONKEY_PATCHING" at the top | |||
moritz_ | TimToady: S02 mentions .pos, maybe you want to remove that? | 20:53 | |
20:55
SamB left
21:08
meppl left,
[particle] joined
21:10
|jedai| left
21:11
|jedai| joined,
bahaa2008 joined
|
|||
bahaa2008 | moritz_, hi | 21:12 | |
moritz_ | hi | ||
bahaa2008 | moritz_, i have promlem with search.ph in your ircbot | ||
pl ** | |||
moritz_ | you're not the only one | ||
bahaa2008 | is it work with mysql ? | 21:13 | |
this is the line with problem | |||
my $q0 = $dbh->prepare("SELECT COUNT(DISTINCT day) FROM irclog $sql_cond"); | |||
moritz_ | I wanted to redo it with KinoSearch, but that still doesn't contain the features I need (although I've been told they are being worked on) | ||
bahaa2008 | i cann't apply this query on mysql | ||
moritz_ | what's the error message? | 21:14 | |
bahaa2008 | how You have to choose at least one column to display | ||
moritz_ | uhm, do you try that with the mysql command line client? | 21:15 | |
bahaa2008 | no | ||
with phpmyadmin | |||
moritz_ | $sql_cond is a variable, so you have to replace it with something useful | 21:16 | |
bahaa2008 | the problem only occurs when search by text | ||
i know | |||
i replaced it | |||
the problem only occurs when search by text | |||
moritz_ | so what does the replaced query look like? | 21:17 | |
bahaa2008 | but with nickname it works fine | ||
my query --> SELECT COUNT(DISTINCT day) FROM irclog WHERE AND MATCH(line) AGAINST(modem) | 21:19 | ||
modem is the word i search for for example | |||
moritz_ | ah, the AND shouldn't be there | ||
bahaa2008 | same problem | 21:20 | |
what database are you used to test the code ? | 21:21 | ||
moritz_ | somehow I get a very different error message | ||
because modem needs to be quoted | 21:22 | ||
bahaa2008 | how | ||
moritz_ | with double quotes | ||
I use mysql-5.0.32-7etch8 | |||
bahaa2008 | same error | ||
moritz_ | then you have problem with phpmyadmin, not with mysql | ||
afk | 21:23 | ||
bahaa2008 | mine is 4.1.22 | ||
ok let me try command line | |||
21:24
explorer__ joined,
|jedai| left,
|jedai| joined
21:25
[particle]1 left
|
|||
bahaa2008 | error Can't find FULLTEXT index matching the column list | 21:26 | |
moritz_ | CREATE TEXT KEY `message_index` (`line`) | 21:28 | |
or something like that should help | |||
but we're getting more and more off-topic => /msg please | 21:29 | ||
21:31
jhorwitz left
21:33
jferrero left
|
|||
mberends | moritz_: on broken $*ERR topic, any idea what (and who) is involved in fixing rt.perl.org/rt3/Public/Bug/Display.html?id=62540 ? | 21:34 | |
moritz_ | mberends: no idea. You might bug pmichaud or jnthn | 21:35 | |
mberends | ok, thanx | ||
21:37
c9s_ joined
|
|||
bahaa2008 | moritz_, thanks | 21:46 | |
21:53
c9s left
21:56
kcwu left
21:58
Whiteknight joined
22:01
_jedai_ joined
22:03
|jedai| left
22:06
cognominal left
22:10
DemoFreak left,
DemoFreak joined
22:13
cognominal joined
22:26
ruoso joined,
_jedai_ left,
|jedai| joined
22:27
pmurias left
22:28
bahaa2008 left
22:33
DemoFreak left,
icwiener joined,
DemoFreak joined
22:46
|jedai| left
22:47
|jedai| joined
22:52
maerzhase joined
22:56
|jedai| left
22:58
|jedai| joined
23:04
bahaa2008 joined
23:13
Exodist left,
pbuetow left,
ejs1 left
23:15
hercynium left
23:29
[particle]1 joined
23:31
_jedai_ joined
23:32
|jedai| left
23:33
[particle] left
|
|||
pugs_svn | r24994 | lwall++ | [S02,S03] delete some .pos fossils | 23:35 | |
TimToady | moritz++ too | 23:36 | |
23:45
km2 joined
23:46
vixey left
23:48
Limbic_Region joined
23:52
justatheory left
|
|||
ruoso | TimToady, one thing has been bugging me... I already understood that infix are subs, and it looks like postcircumfix are methods... are postfix and prefix methods also? | 23:56 | |
or am I misunderstanding everything? | |||
because =$foo sure looks like a method | 23:57 | ||
as well as $foo\i | |||
but $i++ can't be a method | |||
nor can ++$i | 23:58 | ||
or is | 23:59 | ||
23:59
Patterner left,
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
ruoso | or are they all subs that somehow end up calling a method? (which would make it considerably more complicated | 23:59 |