»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo:, alpha:, pugs:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by lichtkind on 5 March 2010. |
|||
bkeeler | jnthn: TimToady: Do you think there would be any problem adding an optional named parameter to eval to specify the rule to start at, in case TOP is not desired? | 00:05 | |
lue wants to see his computer compile rakudo without needing to cause a complete system crash first. | |||
00:05
snarkyboojum left
|
|||
sorear | jnthn: Is there any particular reason Blizkost is not MULTIPLICITY-clean? | 00:05 | |
jnthn | Nope | 00:07 | |
00:07
snarkyboojum joined
|
|||
jnthn | Well, there is in the sense that I don't know that MULTIPLICITY-clean means. :-) | 00:07 | |
sorear | What's the difference between pmc_new and Parrot_pmc_new? | ||
jnthn | pmc_new is the Old Deprecated Way. Parrot_pmc_new is what replaced it. | ||
I think it was just a rename. | |||
sorear | jnthn: Perl 5 can be build in two ways - either Perl uses actual global variables, or Perl uses a big struct Perl_Interpreter and passes pointers to it around | 00:08 | |
Most distribution Perls are built in the second way, because it allows threading to work | |||
Most user-built Perls are the first way, because it's 15% faster | 00:09 | ||
there are a set of macros which abstract over the difference | |||
jnthn | Ah, OK. | ||
sorear | Blizkost doesn't use them but instead explicitly passes Perl_Interpreter around, so it depends on MULTIPLICITY | ||
jnthn | Aha. | 00:11 | |
jnthn was just following embedding docs. | |||
sorear | generally speaking embedding uses MULTIPLICITY | ||
00:12
kborer joined
|
|||
sorear | since it's also more modular - there's no 1 interpreter per process limit | 00:12 | |
lue | afk | 00:14 | |
dalek | kudo: dfbd1d5 | jonathan++ | src/Perl6/Grammar.pm: While %tight_or is indeed list associative, because of the way we compile short-circuit || and //, we need to have them marked as left associative. Fixes RT#73774. |
||
jnthn | After reviewing the Rakudo C parts for memory leaks, I managed to find 1. | 00:16 | |
Bad news is that it's on a code-path we almost certainly don't touch in the build, and not particularly often anywhere else either. | |||
(This is just reviewing anywhere we call mem_allocate directly, not just using PMCs. Checked the destroys etc too.) | 00:17 | ||
diakopter | rakudo: say (1 && 0 || 1) | ||
p6eval | rakudo db0f85: OUTPUT«1» | ||
sorear | jnthn: a memory leak is not just when you allocate memory and lose the pointer | 00:19 | |
it can also be when you free the memory, but too late | 00:20 | ||
[+] [2..10000000] # this leaks memory in a non-lazy language | |||
jnthn | Well, if it's the defined semantics of the langauge it's not exactly a leak. ;) | 00:21 | |
But yes, point taken. | |||
sorear | it's not a bug in the language, it would be a bug in the program | ||
00:21
jrockway joined
|
|||
sorear | Rakudo is a language, but it is also a program which implements that language | 00:21 | |
jnthn | Sure. | 00:22 | |
00:24
riffraff joined
00:25
Patterner left
|
|||
dalek | kudo: e673638 | jonathan++ | src/pmc/perl6multisub.pmc: Reviewed Rakudo C bits for memory leaks due to missing frees in the few places we mem_allocate. Found one missing mem_sys_free, though 'sadly' on a rarely followed code path (only affected code using junctions). |
00:26 | |
00:28
tlb left
00:29
riffraff left,
kst left,
solarion left,
hicx174 left,
meteorjay left,
cosimo left,
frodwith left,
cotto_work left,
Lorn left,
kfo left,
PerlJam left,
Sarten-X left,
bbkr left,
baest_ left,
japhb left,
betterworld left,
jhuni left,
pmichaud left,
wolf2k_ubuntu left,
stephenlb left,
jjore left,
hanekomu left,
diakopter left,
Exodist left,
Khisanth left,
wasy left,
lisppaste3 left,
cotto left,
zostay left,
tylerni7 left,
gfldex left,
jrockway left,
kborer left,
colomon left,
wknight8111 left,
rgrau` left,
eternaleye left,
dalek left,
rv2733 left,
doublec left,
astrojp left,
christine left,
allbery_b left,
simcop2387 left,
breinbaas left,
molaf left,
ingy left,
[hudnix] left,
alester left,
REPLeffect left,
|Jedai| left,
silug left
00:31
[hudnix] joined
00:32
gfldex joined,
jrockway joined,
kborer joined,
colomon joined,
wknight8111 joined,
rgrau` joined,
kst joined,
eternaleye joined,
solarion joined,
PerlJam joined,
dalek joined,
rv2733 joined,
Sarten-X joined,
doublec joined,
hicx174 joined,
cosimo joined,
astrojp joined,
meteorjay joined,
frodwith joined,
cotto_work joined,
bbkr joined,
christine joined,
Lorn joined,
kfo joined,
avuserow joined,
borup joined,
akl joined,
hejki joined,
nsh joined,
obra joined,
japhb joined,
betterworld joined,
simcop2387 joined,
baest_ joined,
allbery_b joined,
alester joined,
cotto joined,
tylerni7 joined,
tylerni7 left,
tylerni7 joined,
pnu joined,
ingy joined,
jhuni joined,
pmichaud joined,
wolf2k_ubuntu joined,
stephenlb joined,
jjore joined,
hanekomu joined,
diakopter joined,
Exodist joined,
Khisanth joined,
wasy joined
00:33
breinbaas joined,
|Jedai| joined
00:34
stepnem joined
|
|||
jnthn | With latest Parrot we peak at 776 MB during the build on my machine. | 00:43 | |
We also fail autothreading.t and some fallout things from that. | |||
00:50
rv2733 left
00:51
buubot joined
00:56
yinyin joined
00:59
justatheory joined
|
|||
jnthn | Grrr! I *said* that patch the other day was bogus. | 01:05 | |
01:08
hercynium joined
|
|||
bkeeler | breaktime... laterz | 01:09 | |
01:26
maerlinian joined
|
|||
jnthn | OK, we use latest Parrot now. | 01:29 | |
Which has the memory leak fixes. | 01:30 | ||
Hopefully this makes some people's life easier on the build. | |||
01:30
wknight8111 left
|
|||
dalek | kudo: 99c4bcf | jonathan++ | src/ops/perl6.ops: Fix up the bind_signature op patch from a couple of days ago. I said it looked very dubious at the time and we wre just getting lucky. Seems I was right. Hopefully this is the proper fix. |
01:31 | |
kudo: 626ee20 | jonathan++ | build/PARROT_REVISION: Bump us up to the latest Parrot version to get memory leak fixes by (Parrot team)++. |
|||
jnthn | Oh wow. I write an arrogant commit message and typo it. That'll teach me. :-) | ||
01:33
chromatic joined
|
|||
chromatic | jnthn, do you think 99c4bcf has anything to do with the set_outer patch bacek reverted in Parrot earlier? | 01:34 | |
jnthn | chromatic: I'm not sure. I was very sure the original patch was wrong though. | ||
chromatic: We got a return value from calling something | |||
And then it just magically leaked into being the return value from the current (calling) context. | 01:35 | ||
01:35
aesop left,
aesop joined
|
|||
jnthn | (The original patch being, the one that got us building again after the PCC branch merge.) | 01:36 | |
Basically it just threw away the code that handled junc_result | |||
I didn't quite understand what the patch that got reverted was trying to do. | 01:37 | ||
chromatic | It's a fix for thawing inner subs | ||
jnthn | Ah, yes. | 01:38 | |
sjohnson | moritz_: can i have github axs for hugme bot? my github id == smujohnson | ||
jnthn | The thing is, it broke NQP | ||
01:38
meppl left
|
|||
jnthn | We didn't even get as far as seeing the effect on Rakudo. | 01:38 | |
chromatic | Okay, if it broke NQP then the commit you just pushed won't have any effect. | 01:39 | |
jnthn | And while Rakudo does weird magic here and there, NQP is rather simpler in that sense. | ||
The commit I just pushed fixed fails in autothreading.t. | |||
Let me show you the two I mean...I think we might not be quite on the same page. :-) | |||
sjohnson | moritz_: or do you need a/my public key... i am not sure how it works | 01:40 | |
chromatic | I thought I remembered someone saying "That broke autothreading!" I didn't realize it broke NQP. | ||
jnthn | No, no, there's two different things going on here. | ||
One is the patch bacek wrote. It broke NQP. It got reverted. | 01:41 | ||
chromatic | Right. I want to get that bug fixed somehow. | ||
jnthn | Unrelated to that was this patch that got applied to Rakudo so we could build after the recent PCC changes: github.com/rakudo/rakudo/commit/588...00f9a70ea3 | ||
Note what got removed beneath the comment "/* Save the Junctional result as the return value. */" | |||
chromatic | Right. I thought they were connected, but I understand now that they aren't. | ||
jnthn | Yes, I'm fairly sure they're not. | 01:42 | |
So the patch I did just now was to re-instate what was removed, using what I think is the correct way to do that now. | |||
I'm still rather surprised it did work fro a while. :-/ | |||
chromatic | Yes, it looked dodgy to me too. | 01:43 | |
jnthn | BTW, I confirm with latest Parrot leak fixes we're building in 700 MB or so now. | ||
Checkd it here too. | |||
*checked | |||
That's still a lot. I'd like to look at the various compile stages and try and understand the memory usage a bit more when I get chance. | 01:44 | ||
chromatic | Rakudo (or NQP, more likely) allocates a handful of multi-megabyte STRINGs. | ||
jnthn | Is there any good way of working out exactly what's doing that? | 01:45 | |
Even a hack to check each string size allocation and print a backtrace when it's over a threshold? | |||
chromatic | I can probably trace it down. I suspect it's CodeString. | ||
jnthn | Hmm | ||
So maybe it's happening in the POST => PIR phase the. | |||
*then. | |||
chromatic | That's my best guess right now, but I'm not *certain*. | 01:46 | |
jnthn | One of the things I noticed in the memory usage is that it seemed to hit peaks suddenly, and then just as suddenly back off by some hundred or couple of hundred megs again. | ||
chromatic | Right, that's the buffer compactor. | 01:47 | |
jnthn | Ah, OK. That makes sense. | ||
chromatic | It's not as aggressive as it should be, but it does release memory back to the OS. | ||
jnthn | OK. Seems it's working in that sense. | ||
chromatic | Sort of. There's definitely a bug there that would make it use less memory, if fixed. | 01:48 | |
jnthn | One other thing that may be worth exploring is Object's attribute storage. | ||
chromatic | How so? | ||
jnthn | It allocates an RPA to store attributes. | ||
Thus every Object PMC actually is two PMCs. | |||
chromatic | If not more (it's more). | ||
jnthn | If it inherits from another PMC, then yes, for sure. | 01:49 | |
Allocate a C array there though... | |||
Little more fiddling but could save a _lot_ of PMCs. | |||
Especially when you consdier every node in the parse/past/post tree is an Object. | 01:50 | ||
*consider | |||
chromatic | Ultimately we'll probably do something along those lines. | ||
jnthn | In theory it may not be much work. In practice...things that should be simple sometimes aren't. | 01:51 | |
justatheory is simple | |||
elegant, even | |||
jnthn | :-) | ||
chromatic | It'd be a nice way to unify C-based PMC attribute storage with PIR-based attribute storage. | 01:52 | |
jnthn | Yeah. I kinda fear that's going to be the end of the line for the representation polymorphism stuff I'd tried to achieve way back though. | 01:55 | |
chromatic | Depends how far we get with Lorito at that point. | ||
jnthn | *nod* | 01:56 | |
Is that still very much planning phase at the moment? | |||
chromatic | Yes, but we're making some implementation progress. | 01:58 | |
PCT can parse and emit C code from .ops files. | |||
jnthn | Ooh, OK. :-) | ||
oops...3am! | 02:00 | ||
:-/ | |||
How'd that happen... | |||
OK, sleep time. Night o/ | |||
02:04
|Jedai| left,
ingy left,
jhuni left,
pmichaud left,
wolf2k_ubuntu left,
stephenlb left,
jjore left,
hanekomu left,
diakopter left,
Exodist left,
Khisanth left,
wasy left,
_Jedai_ joined
02:06
ingy joined,
jhuni joined,
pmichaud joined,
wolf2k_ubuntu joined,
stephenlb joined,
jjore joined,
hanekomu joined,
diakopter joined,
Exodist joined,
Khisanth joined,
wasy joined
02:09
dalek left
02:10
drakej joined
02:12
cotto left,
dalek joined
02:18
REPLeffect joined
02:28
eternaleye left
02:30
eternaleye joined,
cotto joined
|
|||
sorear | maybe I should dust off Arena::Compact and see what I can make of it in a Parrot context | 02:35 | |
02:36
mtve joined
02:38
silug joined,
dalek left
02:39
hatseflats left
02:43
dalek joined
02:48
jrockway left
|
|||
sorear | (Somebody should do rakudo nightlies) | 02:52 | |
03:02
molaf joined
|
|||
colomon | Huh. S02-magicals/pid.t appears to be getting a serious error, but is marked pass. | 03:17 | |
colomon -> bed | 03:18 | ||
03:29
stephenlb left
03:39
lichtkind left
|
|||
sorear | colomon: fudging? | 03:39 | |
03:44
astrojp left
03:48
petdance joined
|
|||
lue | hello! anybody here? | 03:49 | |
sorear | no | ||
lue | darn! :) | 03:51 | |
Can anyone direct me to 'How to make your own protocol (like HTTP)' and 'How to make your own character encoding' ? | 03:52 | ||
sorear | 1. Don't | ||
2. Really don't | |||
3. Read lots of RFCs | |||
there's no real reason to perpetuate the insanity that is non-UTF8 text | 03:53 | ||
for protocols, you should study existing well designed protocols | 03:54 | ||
DO NOT STUDY IRC, IT SUCKS | |||
IMAP is a pretty good one | |||
lue | The Fair Intergalactic Encoding Standard (FIES) and the SubEtha-Net Protocol (senp://...) | 03:55 | |
I'm considering incorporating DNS as only a subset of SENP :) | |||
sorear | anyone who plans to create an incompatible character encoding is a danger to the free world and needs to be removed | 03:59 | |
boys, get him | |||
lue | well, either I come up with my own character encoding with Larry Wall as Chief Advisor, or I bludgeon the Unicode Consortium until they stop being so frugal with codepoints and let languages like Tengwar and Klingon get an official spot. | ||
03:59
jaldhar joined
|
|||
lue | I could make the NSISJTPPO standard :) (Non-Standard and Irregular Standard Just To Piss People Off) | 04:00 | |
wolf2k_ubuntu | lue: you allow klingon, you allow every made up language in the universe. | 04:01 | |
Are you sure there's enough characters to go around? | |||
sorear | IN THE UNIVERSE. | ||
04:04
pyrimidine joined
|
|||
lue | Yes. | 04:05 | |
Yes I do. | |||
pyrimidine | phenny: tell jnthn thanks for the bug fix (RT#73774). Poked around and found the same spot you did in Grammar.pm, but didn't know what to do | ||
phenny | pyrimidine: I'll pass that on when jnthn is around. | ||
04:10
Chillance joined
|
|||
PerlJam | away | 04:13 | |
TimToady | o/ | ||
04:14
TimToady sets mode: +vvv buubot dalek hugme,
TimToady sets mode: +vv ilogger2 IRSeekBot,
TimToady sets mode: +vv p6eval phenny
|
|||
lue | o hi timtoady! | 04:14 | |
hugme: hug p6eval | |||
hugme hugs p6eval | |||
TimToady | std: v1.2.3; | ||
p6eval | std 30194: OUTPUT«ok 00:01 107m» | ||
TimToady | no svnbot though | ||
lue | :( | 04:17 | |
wait, was ilogger2 out of commision for a while? | 04:18 | ||
TimToady | I think it just lost its + for a while, but was still logging | 04:20 | |
lue | oh. It would've been fun to know it wasn't logging :) | 04:21 | |
oops | |||
04:21
pyrimidine left
04:27
wolf2k_ubuntu left
04:32
jhuni left
04:49
justatheory left
04:51
ShaneC left
|
|||
lue | rakudo: role A[::T] { state $foo; say ++$foo }; A[Int]; A[Str] | 04:59 | |
p6eval | rakudo db0f85: OUTPUT«Symbol '$foo' not predeclared in !class_init_12current instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)» | ||
lue | std: role A[::T] { state $foo; say ++$foo }; A[Int]; A[Str] | 05:00 | |
05:00
sorear left
|
|||
p6eval | std 30194: OUTPUT«ok 00:01 111m» | 05:00 | |
lue | pugs: role A[::T] { state $foo; say ++$foo }; A[Int]; A[Str] | ||
05:00
molaf left
|
|||
p6eval | pugs: OUTPUT«***  Unexpected "[::" expecting "::", "-" or trait at /tmp/kdV7ONdlFz line 1, column 7» | 05:00 | |
05:00
sorear joined
|
|||
lue | aw, only STD can parse it :( (good project for me though; I'll take the ticket) | 05:00 | |
05:01
rv2733 joined
05:02
agentzh joined
05:05
jrockway joined
05:07
jrockway left
05:08
jrockway joined
|
|||
lue | good night | 05:08 | |
05:13
rekhajos joined
05:16
synth left
05:17
mberends joined
05:22
drakej left
|
|||
mberends | with ulimit -m 700000, current Rakudo build stops on src/gen/core.pir with Failed allocation of 224241572 bytes etc. The process memory size rises and falls, indicating some working memory management. The Parrot developers are working on the problem, but have not nailed it yet :-( | 05:22 | |
05:24
xinming left
05:28
plobsing left
|
|||
mberends tries slightly higher ulimits, On a 1GB ram ubuntu, an 800MB parrot freezes up almost everything | 05:29 | ||
bkeeler is thankful his machine has 16G | 05:31 | ||
mberends | my other machines have 2GB, but commute time development is useful | 05:33 | |
05:33
xinming joined
|
|||
bkeeler | you're on a train or something? | 05:35 | |
05:35
petdance left
|
|||
mberends | shall be in about 30 minutes :) | 05:35 | |
05:37
synth joined
05:41
quietfanatic joined
05:45
rv2733 left,
jaldhar left,
hercynium left,
p6eval left,
mantovani left,
wolverian left,
IRSeekBot left
05:49
mberends left
05:52
rv2733 joined,
jaldhar joined,
hercynium joined,
p6eval joined,
mantovani joined,
Helios- joined,
lestrrat joined,
szabgab joined,
rgrau joined,
wolverian joined,
IRSeekBot joined,
barjavel.freenode.net sets mode: +vv p6eval IRSeekBot
06:17
silug left
06:27
Trashlord left
06:38
Su-Shee joined
|
|||
Su-Shee | good morning | 06:38 | |
06:44
rgrau` left
|
|||
moritz_ | good morning | 06:46 | |
sorear | hello | ||
moritz_ | hugme: add smujohnson to hugme | ||
06:46
hugme left
|
|||
moritz_ | where is that stuptid bot? | 06:46 | |
06:47
hugme joined
|
|||
moritz_ | hugme: add smujohnson to hugme | 06:48 | |
06:48
hugme left,
hugme joined
|
|||
moritz_ | hugme: add smujohnson to hugme | 06:48 | |
hugme hugs smujohnson. Welcome to hugme! | |||
moritz_ | sjohnson: there you go | ||
06:53
kaare joined,
kaare is now known as Guest19966
|
|||
mathw | morning | 06:55 | |
06:56
Chillance left,
quietfanatic left
07:10
uniejo joined
07:11
mberends joined
07:13
quietfanatic joined
|
|||
mberends | rakudo's split-gen-setting-2 branch now has master merged into it, to have another go at separate compilation of core modules. Updates will have to wait until this evening, because the @work firewall is not git-happy. | 07:16 | |
moritz_ | let me guess... it's also not ssh-happy :-) | 07:17 | |
mberends | jnthn: the reason you can build Rakudo in about 700MB, and Linux cannot, is because the M$ toolchain is more memory efficient than GNU :-( | ||
moritz_: I managed to arrange an ssh -p 443 to home ;) This is webchat though. | 07:18 | ||
07:18
Chillance joined
|
|||
Su-Shee offers mberends a couple of cute smileys. ;) | 07:18 | ||
mberends | :D :) :-) | ||
Su-Shee | hm. I need to get my own server again. hmhm. | 07:19 | |
dalek | kudo: 633c096 | moritz++ | t/spectest.data: run the new S12-class/stubs.t |
07:21 | |
sorear | mberends: er, the toolchain shouldn't affect this nearly at all | 07:25 | |
mberends: the memory hog here isn't gcc, it's parrot-nqp | |||
which uses its own allocator, so you can't even blame this on a more efficient malloc | |||
mberends | sorear: I've compiled Parrot with different C compilers and got significant differences in memory footprint | ||
sorear | I, personally, blame any significant differences in RSS on ILP32 vs LP64 | 07:26 | |
on an ILP32 system here Rakudo only needed 450MB before the PCC merge | |||
I wonder how much it'll need now | |||
moritz_ | sorear: at least with newest parrot it builds again with a ulimit of 1G virtual mem | 07:27 | |
sjohnson | moritz_: thanks! | 07:32 | |
moritz_ | sjohnson: what do you plan to do to it? :-) | 07:33 | |
sjohnson | maybe add some more cute features as far as hugging-related triggers | ||
moritz_ | if you do, please make sure they don't appear often, so hugme doesn't become annoying | 07:34 | |
it should mostly follow the "nice bot pattern": Don't speak unless you're spoken to | |||
sjohnson | oh yeah, i will try not to interfere with anything | 07:35 | |
moritz_ | great | ||
sjohnson | or do anything that is inappropriate or annoying to others, or distracting, etc | 07:36 | |
dalek | kudo: 5ab33a1 | chromatic++ | src/pmc/p6lowlevelsig.pmc: [PMC] Fixed a memory leak in P6LowLevelSig PMC's destroy. Note that the VTABLE, to make such leaks easier to track. |
07:38 | |
kudo: 1828116 | chromatic++ | t/spectest.data: Merge branch 'master' of [email@hidden.address] |
|||
Su-Shee | uhm, how do I change make install from parrot_install to something else? it doesn't understand DESTDIR | 07:44 | |
07:45
snarkyboojum left
|
|||
moritz_ | Su-Shee: if you want to install rakudo to /foo/bar, you first have to configure parrot with --prefix=/foo/bar | 07:47 | |
Su-Shee: the compile and install parrot | |||
Su-Shee: then configure rakudo with --parrot-config=/foo/bar/bin/parrot_config | |||
Su-Shee: then make and make install rakudo | |||
Su-Shee: yes, it's a major PITA. | |||
Su-Shee | ah | 07:49 | |
07:49
iblechbot joined
|
|||
Su-Shee | I have vacation as of today, I can do another run :) | 07:50 | |
sorear | I wonder if Perl6 uses sufficiently little memory to be installable now. | 07:51 | |
One way to find out. | |||
moritz_ | sorear: be sure to use parrot HEAD | 07:52 | |
and the latest rakudo too | 07:53 | ||
sorear | of course | ||
realcleaning too | |||
dalek | kudo: 0afbf11 | moritz++ | build/PARROT_REVISION: bump PARROT_REVISION again to get more memory fixes in parrot, chromatic++ |
07:55 | |
moritz_ | rakudo: my @a = (1, 2, 3); @a[0,1] = (7, 8); say @a.perl | 07:58 | |
p6eval | rakudo db0f85: OUTPUT«Cannot assign to readonly valuecurrent instr.: '&die' pc 17257 (src/builtins/Junction.pir:399)» | ||
moritz_ | now this is going to kill lots of tests in assign.t | 07:59 | |
08:00
snarkyboojum joined
|
|||
chromatic | Speaking of killing lots of tests, it'd be nice to get the status graphs updating again. | 08:06 | |
08:07
snarkyboojum left,
riffraff joined,
IllvilJa left
08:13
espadrine left
|
|||
sorear | I love this sawtooth memory allocation thing. | 08:15 | |
08:15
espadrin` joined
|
|||
sorear | parrot-nqp is currently bouncing between 40% and 80% MEM | 08:15 | |
on Actions.pm | 08:16 | ||
mberends | sorear: :) seen that locally a few times... too many | ||
sorear | aaand it breaks 100% after 2:45 of runtime | 08:17 | |
mberends | is that 100% of physical or virtual memory? | 08:18 | |
moritz_ | sorear: did you install a ulimit? | ||
08:20
cotto left
08:21
cotto joined
|
|||
sorear | moritz_: I have a secondary goal of being able to run 'perl6' afterward | 08:22 | |
mberends: physical | 08:23 | ||
moritz_ | sorear: that doesn't quite answer my quesiton | ||
sorear | "no" | ||
moritz_ | try it with one. | ||
08:24
silug joined
|
|||
moritz_ | we've had reports from cases where the build only worked with a ulimit | 08:26 | |
sorear tries 300MB | |||
mberends | parrot peaked at 1008MB on amd64 with the latest updates | ||
sorear | Relatedly, I think Rakudo nightlies would be awesome. Do we have the technology? | 08:27 | |
moritz_ | wow, feather1 has a load of 5.15 | ||
sorear: nightly builds or source snapshots? | |||
sorear | nightly builds | 08:28 | |
moritz_ | all of the builds are from third parties | ||
sorear | just perl6.pbc (that's arch independant right?) if necessary | 08:29 | |
building rakudo_group.so doesn't take much ram anyway | |||
08:31
chromatic left
|
|||
moritz_ | does anybody know why we have an apache running on feather3? | 08:32 | |
08:33
stepnem left
08:34
sundar joined
|
|||
moritz_ just stopped it | 08:34 | ||
sjohnson | wq! | 08:35 | |
08:35
pugssvn joined
|
|||
pugssvn | r30191 | moritz++ | [t/spec] tests for class/role/module stubs | 08:35 | |
r30192 | moritz++ | [t/spec] test for RT #69308, segfault on "say $!:WHAT" in a CATCH block | |||
r30193 | jnthn++ | [t/spec] Test for RT#73774. | |||
r30194 | lwall++ | [gimme5] set the correct xact on || alternations | |||
r30194 | [LazyMap] always accept the first result regardless of xact state | |||
r30195 | moritz++ | [t/spec] test that you can refer to &infix:<cmp>, just for the lulz | 08:36 | ||
r30196 | moritz++ | [t/spec] re-fudge assign.t for rakudo | |||
sorear | Failed allocation of 115451036 bytes | 08:37 | |
Parrot VM: PANIC: Out of mem! | |||
make: *** [src/gen/perl6-actions.pir] Quit (core dumped) | |||
note to all runtime implementors: in an out of memory condition, dumping core is the LAST thing you want to do | 08:38 | ||
sjohnson | hugme: hug moritz_ | 08:40 | |
hugme hugs moritz_ | |||
08:40
sundar left
|
|||
sjohnson | cute bot | 08:40 | |
dalek | kudo: a93b9a5 | moritz++ | t/spectest.data: we now pass assign.t again, including some tests for different precdence of item and list assignment |
08:43 | |
moritz_ | lumberjaph.net/blog/index.php/2010/...-explorer/ | 08:54 | |
08:57
hanekomu left,
hanekomu joined
09:00
dakkar joined
09:01
snarkyboojum joined
|
|||
moritz_ | std: sub a{say 3} | 09:14 | |
p6eval | std 30196: OUTPUT«ok 00:01 107m» | ||
moritz_ | rakudo: sub a{say 3} | ||
p6eval | rakudo db0f85: ( no output ) | ||
moritz_ | rakudo: my @b= 5, 1, 2; | 09:15 | |
p6eval | rakudo db0f85: ( no output ) | ||
moritz_ | rakudo: my @b= 5, 1, 2; if(@b>2) {say 'yes';} | ||
p6eval | rakudo db0f85: OUTPUT«yes» | ||
moritz_ | WOAH THERE | ||
std: my @b= 5, 1, 2; if(@b>2) {say 'yes';} | 09:16 | ||
p6eval | std 30196: OUTPUT«===SORRY!===if() interpreted as function call at line 1; please use whitespace instead of parensUnexpected block in infix position (two terms in a row) at /tmp/k2Uj3vzit0 line 1:------> my @b= 5, 1, 2; if(@b>2) ⏏{say 'yes';} expecting | ||
..any… | |||
09:22
pmurias joined
|
|||
pmurias | hi | 09:22 | |
moritz_ | hi pmurias | ||
what's up? | |||
pmurias has always trouble answering that question ;) | 09:25 | ||
moritz_ | I often have, too | ||
sorear | "the sky" is my usual response | 09:26 | |
moritz_ | any Perl 6 hacking lately? | ||
pmurias | unfortunatly not | ||
09:27
yinyin left
|
|||
moritz_ | too busy with $education? | 09:27 | |
pmurias | that's an annoying distraction latly | 09:28 | |
09:29
agentzh left
|
|||
moritz_ | rakudo: class A { has ($!a, $!b) } | 09:33 | |
p6eval | rakudo db0f85: OUTPUT«error:imcc:syntax error, unexpected ')' (')') in file 'EVAL_1' line 167» | ||
09:38
payload joined
|
|||
moritz_ | rakudo: @_.=[3] | 09:39 | |
p6eval | rakudo db0f85: OUTPUT«Can not use .= on a non-identifier method call at line 11, near ""current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
moritz_ | std: @_.=[3] | ||
p6eval | std 30196: OUTPUT«===SORRY!===Placeholder variable @_ cannot be used in this kind of block at /tmp/ezHqKvO1IC line 1:------> @_.=[3]⏏<EOL> expecting any of: POST postfix postfix_prefix_meta_operatorFAILED 00:01 108m» | ||
moritz_ | std: sub a { @_.=[3] } | 09:40 | |
p6eval | std 30196: OUTPUT«ok 00:01 106m» | ||
pmurias | rakudo: my $a = 3;{say $a;my $a=7;say $a}; | 09:44 | |
p6eval | rakudo db0f85: OUTPUT«Any()7» | ||
pmurias | is that correct? | 09:45 | |
moritz_ | std: my $a = 3;{say $a;my $a=7;say $a}; | ||
p6eval | std 30196: OUTPUT«===SORRY!===Lexical symbol '$a' is already bound to an outer symbol (see line 1); the implicit outer binding at line 1 must be rewritten as OUTER::<$a> before you can unambiguously declare a new '$a' in this scope at /tmp/qnwP7Fu74I line 1:------> my | ||
..$a… | |||
jnthn | morning | ||
phenny | jnthn: 04:05Z <pyrimidine> tell jnthn thanks for the bug fix (RT#73774). Poked around and found the same spot you did in Grammar.pm, but didn't know what to do | ||
moritz_ | pmurias: it is not :-) | ||
jnthn | No, we don't detect that case yet. | ||
moritz_ | jnthn: we can haz run assign.t :-) | 09:46 | |
pugssvn | r30197 | moritz++ | [t/spec] some unfudges for rakudo | ||
moritz_ | that commit also unfudge a precedence test for item assignment | ||
jnthn | moritz_++ | 09:47 | |
\o/ | |||
Yay! | |||
moritz_ | jnthn: rakudo parses hash slices on the LHS of an assignment as an item, though | ||
jnthn | :/ | ||
moritz_ | so %a<b c> = foo uses item assignment | ||
jnthn | OTOH, hash slices don't work in Rakudo yet. | ||
moritz_ | aye | ||
jnthn | Though still a bit surprised about the parsing bug... | 09:48 | |
moritz_ | oh | ||
maybe it's not a parsing bug | |||
jnthn | Oh, OK | ||
Well, the parse tree would probably reveal all. :-) | |||
moritz_ | I just noticed that all tests involving the hash slice on LHS failed | ||
but of course that can be for other reasons :-) | |||
on, and array slices are read-only | |||
jnthn | Yes, the parsing looks correct, it has the operator down as list assignment. Phew. :-) | 09:50 | |
moritz_ | sorry for the false positive | 09:51 | |
s/positive/warning/ | |||
whatever | |||
09:51
broquaint joined
|
|||
jnthn | :-) | 09:53 | |
"just for the lulz" :-D | 09:55 | ||
moritz_++ # testing! :-) | |||
moritz_ | :-) | 09:56 | |
there was no good reason to infix:<cmp> to the operators bein tested, except that this was the example used in a specific ticket | |||
jnthn | Aha :-) | 09:57 | |
Wow, assign.t being turned back on must have won us a 3-figure number of extra passes. :-) | 09:58 | ||
moritz_ | it has 240 test in there | 09:59 | |
pugssvn | r30198 | pmurias++ | [mildew] variables used in a scope are infered | ||
10:02
meow joined
|
|||
meow | new to this | 10:02 | |
10:02
meow is now known as Guest92788
|
|||
Guest92788 | new to this.. | 10:02 | |
jnthn | Oh yay. Finally, while 1 { 42 } doesn't leak. :-) | 10:03 | |
10:04
xalbo_ joined,
xalbo left
|
|||
Guest92788 | need some help in reading line based on seek position in perl | 10:05 | |
10:06
lestrrat is now known as lest_away
10:07
holli joined,
holli is now known as pausenclown
|
|||
pausenclown | hi | 10:07 | |
i think i found a bug | |||
rakudo: class X { method x { } }; say X.new.x; | 10:08 | ||
p6eval | rakudo db0f85: OUTPUT«Null PMC access in type()current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
pausenclown | rakudo: class X { method x { 1 } }; say X.new.x; | ||
p6eval | rakudo db0f85: OUTPUT«1» | ||
10:08
kborer left
|
|||
jnthn | pausenclown: File RT; probably a missing prevent_null_return in method_def though. | 10:08 | |
10:13
Guest92788 left,
Trashlord joined
10:15
ruoso left
|
|||
moritz_ | jnthn: how would I write a constructor in PIR for a parrot class that uses P6metaclass? | 10:18 | |
jnthn: just an ordinary method that calls new [ 'This';'Class']; and does setatttribute on the result? | 10:19 | ||
jnthn | moritz_: That would do it, but you can also call bless and create too provided you inherit from Object/Any/something else in the Perl 6 hierarchy. | 10:20 | |
moritz_ | I'm not | 10:21 | |
jnthn: my current idea is to refactor the MATCH method in Regex::Cursor (nqp-rx) | |||
to not call new ['Regex';'Match'] | |||
jnthn | bbiab | ||
moritz_ | and then setattribute on the result | ||
but instead does a $some_object.new( all info here ) | |||
because then all you'd have to do is to write your own Match object with an appropriate .new method | 10:23 | ||
and hook that in somehow | |||
pausenclown | there also is a new "use" bug. i get "You can not add a Method to a module; use a class, role or grammar" if i'm trying to use a class within a class. | 10:25 | |
10:25
fda314925 joined
|
|||
pausenclown | 1st level from a script works. known? | 10:26 | |
moritz_ | pausenclown: not known, but I could confirm it here | 10:27 | |
10:42
payload left
10:47
gfx joined,
flity joined
|
|||
pmurias | perl6: &infix:<+> := sub {say "hi"};1 + 2; | 10:55 | |
p6eval | rakudo db0f85: OUTPUT«:= binding of variables not yet implementedcurrent instr.: '&die' pc 17257 (src/builtins/Junction.pir:399)» | ||
..elf 30198: OUTPUT«/home/p6eval/pugs/misc/STD_red/match.rb:141:in `block in to_dump0': undefined method `to_dump0' for true:TrueClass (NoMethodError) from /home/p6eval/pugs/misc/STD_red/match.rb:140:in `each' from /home/p6eval/pugs/misc/STD_red/match.rb:140:in `map' from | |||
../home/p6eval/pugs/misc/STD… | |||
..pugs: OUTPUT«*** Cannot rebind constant: PEConstant {pe_type = (mkType "Sub"), pe_proto = <Sub:0x2b12ef633941>, pe_flags = MkEntryFlags {ef_isContext = False}} at /tmp/4TvTBBwH9M line 1, column 1-29» | |||
pmurias | is that legal in Perl 6? | 10:56 | |
moritz_ | nope | ||
at least I think not | 10:57 | ||
pmurias | why? | 10:58 | |
moritz_ | what would it mean? | ||
&infix:<+> contains a multi | |||
what does it mean if you bind &infix:<+> to a single sub? | 10:59 | ||
what scopes does it affect? | |||
pmurias | binding a single sub to am multi should propably replace it | 11:02 | |
s/am/a/ | |||
moritz_ | in which scope? | ||
11:02
masak joined
|
|||
masak | oh hai, #perl6 | 11:02 | |
moritz_ | it's m\a/sak :-) | 11:03 | |
pmurias | moritz_: i would guess CORE | ||
moritz_ | pmurias: and thus evily monkey-type things it should not change | ||
that's why I think it should be forbidden | 11:04 | ||
masak | TimToady: [backlogging] could STD_P5 be a possible target for delegation, or are there reasons it'd have to be written (mostly) by you? | ||
pmurias | i think so two | ||
monkey-patching kills optimalisation | 11:05 | ||
moritz_ is happy that there is some interest in Perl 6 from possible GSOC students | 11:06 | ||
jnthn | "binding a single sub to a multi" - huh? | ||
moritz_ | jnthn: pmurias probably meant "biding a single sub to a container which currently holds a multi" or so | ||
jnthn | The fact that it's a multi doesn't mean much. It's just like binding against any other simple. | ||
*symbol | |||
pmurias | jnthn: that's what i meant | 11:07 | |
moritz_ | rakudo: sub a(*@b) { say @b.PARROT }; a(2, 3); my @x = 3; a(@x) | 11:09 | |
pmurias | jnthn: what do you think &infix:<+> := &foo changes? | ||
p6eval | rakudo db0f85: OUTPUT«ArrayArray» | ||
moritz_ | rakudo: sub circumfix:<| |>() {}; |*| | 11:10 | |
p6eval | rakudo db0f85: OUTPUT«error:imcc:syntax error, unexpected '\n' in file 'EVAL_1' line 58Confused at line 11, near "|*|"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
11:10
imran joined
11:11
pmurias left,
imran left
|
|||
dalek | ok: 4cba9cd | moritz++ | outline.pod: update outline |
11:12 | |
jnthn | oops, ENOPMURIAS | ||
I'd guess it means re-bind the entry in the lexpad | 11:13 | ||
Assuming that it's rw anyway...we may want to make that not the case (for optimization reasons, as mentioned). | |||
Heh, visa form fail. | 11:14 | ||
"IMPORTANT! Please print or type using ballpoint pen" | |||
...weird way to type. :-) | |||
11:19
cotto left
11:27
clintongormley joined
|
|||
colomon | oooo... that reminds me to take some of the vodka in the house to the convention tonight. (since I never drink the stuff, yet somehow we have three different bottles....) | 11:36 | |
moritz_ | good way to get rid of it :-) | 11:37 | |
moritz_ only has rum for cooking at home | |||
masak | jnthn: [backlogging] the 'for the lulz' meme will probably forever carry a dark undertone for me due to the Finnish School Shooting. :/ www.kuro5hin.org/story/2007/11/8/141636/531 | 11:38 | |
jnthn: (the guy ends his letter with 'I did it for the lulz') | |||
11:38
rekhajos left
|
|||
pausenclown | damn the grammar.parsefile method is broken. | 11:39 | |
jnthn | masak: Ouch. :-( | ||
pausenclown | grammar G { token TOP { .+ } }; | 11:40 | |
say G.parsefile('bug.pl'); | |||
-> invoke() not implemented in class '' | |||
masak | pausenclown: feel free to submit a rakudobug. | ||
moritz_ wonders if f20f1e5c5109d404a748aa8f766f6b05404a74fc broke that | 11:41 | ||
masak | interesting how www.perlfoundation.org/perl5/index....0_projects puts Rakudo, Parrot and Perl 6 above Perl 5... :) almost comes off as deliberate... | ||
moritz_ | masak: Perl 6, Rakudo and Parrot offer project ideas such such - Perl 5 does not | 11:42 | |
masak | ok. | ||
jnthn | Tssk. Thanks Russia. Turns out if I was just about any European nationality besides British, I'd have a 1-page visa application form to fill out. But no, I have to fill out the two page one...singled out along with Georgia. :-/ | ||
moritz_ | masak: Perl 5 core is not very approachable, and most other Perl 5 ideas are about certain modules | ||
masak | by the way, I'm not certain I'll be available as a mentor this year. I'll try to apply as a student. | ||
moritz_ | o. I could end up being masak's mentor | ||
that would feel... weird. | 11:43 | ||
masak | why? | ||
moritz_ | masak: because I don't feel that I have superior knowledge in terms of community, processes, language, and probably that specific project at all | ||
masak | moritz_: well, neither do I, so we're at least on equal terms. good grounds for a student/mentor relation. :) | 11:44 | |
moritz_ | I know that's only part of mentoring | ||
but usually the mentor introduces the students to part of the community, organizes commit bits etc. | |||
"jnthn, this masak, our new student" :-) | |||
masak | we'd just take those parts as read. :) | ||
"hi, jnthn! nice to meet you :)" | 11:45 | ||
jnthn | Yay, new students are good for breakfast! | ||
masak inches away slowly | |||
jnthn | Er, I mean...pleased to meet you. | ||
:-) | |||
masak | :) | ||
moritz_: that jnthn guy is kinda scary... | 11:46 | ||
:P | |||
moritz_ | masak: if you'd ever meet him in person... | ||
oh, one thing I forgot... op'ping :-) | 11:47 | ||
11:47
moritz_ sets mode: +o masak
|
|||
masak | moritz_: ...he'd eat me for breakfast? :) | 11:47 | |
moritz_: I've heard jnthn doesn't do breakfasts... | |||
lunch & | 11:48 | ||
11:48
cotto joined
11:52
lichtkind joined
|
|||
lichtkind | could anyone explain proto subs please ? | 11:54 | |
moritz_ | I'll try | 11:57 | |
lichtkind | moritz_: thanks | ||
syn doesnt make sense to me | |||
moritz_ | first of all a proto is a declaration that all following subs with the same name are automatically multis | 11:58 | |
multi a { }; sub a { }; # error | |||
proto a { }; sub a { }; # allowed; the sub is automatically promoted to multi | |||
second, they act as a fallback for dispatch | |||
I think that's it | 11:59 | ||
lichtkind | so if i declare a only | ||
i cant declare proto after it? | |||
moritz_ | not in the same scope | 12:00 | |
lichtkind | right | ||
moritz_ | I guess that if the proto comes in an inner scope, it hides the only sub | ||
12:01
envi^home joined
|
|||
lichtkind | moritz_: fallback means its used for the case "real" sub with that name is declared? | 12:01 | |
why not use just a multi with no sig which eats the call if no other multi is declared? | 12:02 | ||
moritz_ | why indeed | ||
there's one thing that makes the dispatch special | 12:03 | ||
if you have a multi sub ($a, $b) | |||
and you call $b by name, not by position (1, :b(2)) | |||
then the ordinary multi dispatch is free to look at only candidates with one positional argument | 12:04 | ||
so it won't find ($a, $b) | |||
but it will find a proto with signature ($a, $b) | |||
12:05
Trey joined
|
|||
lichtkind | moritz_: so in other words its the multi for the unmatched cases? | 12:12 | |
moritz_ | yes. Isn't that what "fallback" means? :-) | 12:15 | |
12:15
pmurias joined
|
|||
pmurias | jnthn: rehi | 12:15 | |
masak | <jnthn> Oh yay. Finally, while 1 { 42 } doesn't leak. :-) | 12:17 | |
this is really big. | |||
I had such a loop running over lunch; it didn't leak one bit of memory. \o/ | |||
m6locks | :) | 12:18 | |
lunch would kick ass | 12:19 | ||
moritz_ | .oO( unwanted mental images ) |
||
masak | :D | 12:20 | |
12:20
payload joined
|
|||
takadonet | morning all | 12:21 | |
12:22
jpzork joined
|
|||
m6locks | morning | 12:22 | |
masak | takadonet: \o | ||
colomon | o/ | ||
12:22
iblechbot left
12:27
hatseflats joined
|
|||
lichtkind | moritz_: it is i just want to play stupid to be shure i get it :) | 12:27 | |
moritz_ | anybody got some time and motivation for common PIR hacking? (maybe later today) | ||
lichtkind | masak: hai o/ | ||
jnthn | moritz_: Can probably assist with that. | ||
moritz_: Just having visa nightmares ATM. :-/ | |||
moritz_ | jnthn: ok, need to organize some $nom first anyway | 12:28 | |
might take an hour or two | |||
jnthn | moritz_: That's fine, I also need nom now, and to actually, like, do some work today. | 12:29 | |
dalek | ok: 59eca08 | masak++ | src/operators.pod: [operators] minor typo/punctuation fixes |
||
jnthn | Since I lost the morning to the Russian government's rather well implemented measures to make it a pain for anyone to visit the country. | 12:30 | |
pmurias | jnthn: | 12:31 | |
12:31
hatseflats left
|
|||
jnthn | pmurias: ? :-) | 12:31 | |
mathw | My, that sounds like fun... | ||
12:32
hatseflats joined
|
|||
lichtkind | moritz_: refers $nom to food? | 12:32 | |
moritz_ | yes | ||
lichtkind | moritz_: sounds almost like lolcat speak | 12:33 | |
moritz_ | might come from that direction | ||
pmurias | jnthn: accidental key press | ||
jnthn | :-) | 12:34 | |
12:34
synth left
|
|||
masak | the noun 'nom', via the verb 'to nom', via the onomatopoetic expression 'nom nom nom', "The sound of a person chewing or eating with childlike enthusiasm." en.wiktionary.org/wiki/nom_nom_nom | 12:36 | |
12:38
ruoso joined
|
|||
lichtkind | masak: yes its even known in czech , even if its spelled njam njam | 12:39 | |
masak | lichtkind: nod. probably most countries have a child-speak onomatopoiea for this. | 12:40 | |
you're less likely to say "Please chew, swallow and digest this" to your toddler. :) | 12:41 | ||
jnthn | .oO( Njamoval som obed. ) |
12:42 | |
pmurias | ruoso: hi | ||
jnthn | When I was in Slovakia, I often walked passed a hot-dog stand called "N'am hotdog" :-) | 12:43 | |
moritz_ | buubot: eval 00.1 + 2 | 12:44 | |
buubot | moritz_: 3 | ||
moritz_ | the surprises for the Perl 5 programming language | ||
12:45
pmurias_ joined,
pmurias left
12:46
pmurias_ is now known as pmurias
|
|||
colomon | rakudo: say 00.1 + 2 | 12:46 | |
p6eval | rakudo db0f85: OUTPUT«2.1» | ||
masak | moritz_: o.O | ||
moritz_: wh... why? | |||
moritz_ | masak: I have no idea | ||
pmurias | jnthn: so it's safe to rebinding CORE illegal in smop | ||
? | |||
masak | moritz_: at least it's extremely fast :P | 12:47 | |
12:48
jpzork left
12:50
gfx left
|
|||
pmurias | masak: 00.1 is '01' in perl5 | 12:50 | |
masak | pmurias: right, ok. why? | 12:51 | |
moritz_ | it seems that the decimal point is ignored in all ocatls | ||
buubot: eval: 02.2 | |||
buubot | moritz_: 22 | ||
masak | oh. | ||
moritz_ | uhm | ||
that didn't interpret it as octal, did it? | |||
masak | no. | ||
moritz_ | buubot: eval: 011.1 | ||
buubot | moritz_: 91 | ||
moritz_ | rakudo: say 0o111 | 12:52 | |
p6eval | rakudo db0f85: OUTPUT«73» | ||
moritz_ | but that did | ||
moritz_ has no idea | |||
masak | rakudo: say 0o11 | ||
p6eval | rakudo db0f85: OUTPUT«9» | ||
moritz_ | so | ||
it takes everything before the . as octal | |||
masak | right. | ||
moritz_ | and then concatenates... what? | ||
buubot: eval: 011.11 | |||
buubot | moritz_: 911 | ||
masak | and then the rest in decimal. | ||
moritz_ | wow | 12:53 | |
masak | that's insane. | ||
moritz_ slaps TimToady, retrospectively | |||
pmurias | buubot: eval: (011) . (11) | 12:54 | |
buubot | pmurias: 911 | ||
moritz_ | so it's just parsed as a concatenation | ||
pmurias | yes | ||
moritz_ | and not as a number | ||
wow | 12:55 | ||
pmurias | octal numbers propably don't support a floating point part | ||
masak | ohh! concatenation. right. Perl 5 uses the dot for that. | 12:56 | |
12:56
lest_away is now known as lestrrat
|
|||
masak | still very much not Least Surprise. | 12:56 | |
moritz_ | wow, I found some really old qbasic scripts of mine | 12:57 | |
burned on a CD in 2002 | |||
probably much older | |||
13:07
meppl joined,
cosimo left
13:08
cosimo joined
|
|||
colomon | moritz_: I've been hoping there's some way to retrieve my old Forth programs from the Commodore 64 floppies they live on... | 13:17 | |
jnthn | pmurias: Good question. I think it's probably reasonable to declare the CORE setting lexpad that everything has as its outer is immutable, for optimization reasons if nothing else. | 13:18 | |
moritz_ | colomon: computer museum? | ||
jnthn | It's hardly restrictive. | ||
Since you can easily declare something that hides it. | 13:19 | ||
pmurias: Though me thinking it's reasonable != a ruling. ;-) | |||
13:19
SmokeMachine joined
|
|||
colomon | moritz_: I tried contacting some on-line C64 enthusiasts, but got side-tracked by our move. | 13:20 | |
moritz_ | quite understandable | 13:21 | |
lichtkind | moritz_: thanks | 13:24 | |
bye see ya | 13:25 | ||
feel free to optimize www.perlfoundation.org/perl6/index....e_modifier | |||
13:26
lichtkind left
13:28
payload left
13:30
iblechbot joined
13:34
ignacio_ joined
13:44
pmurias left
13:48
xalbo_ is now known as xalbo
13:49
hicx174 left
13:50
hicx174 joined
13:59
riffraff left
14:02
riffraff joined
14:05
PerlJam left
14:06
dalek left
14:07
PerlJam joined
|
|||
colomon | 28699 passing tests! | 14:13 | |
moritz_ | in npq-rx, a match object has a reference to the original cursor | 14:14 | |
why? | |||
jnthn | moritz_: We use it for method calls in various places | ||
moritz_: Grep e.g. Actions.pm for $/.CURSOR. | 14:15 | ||
14:15
dalek joined
|
|||
moritz_ | ok | 14:16 | |
14:19
dalek left
|
|||
mathw finds metamodel.pod quite interesting | 14:21 | ||
14:21
buubot left,
buubot joined
14:31
xalbo left,
alester left,
alester joined
|
|||
alester | Squaaaawk! Perl 6 is vaporware! Perl 6 is vaporware! Squaaaawk! lwn.net/SubscriberLink/379909/d0cab59913dced2c/ | 14:32 | |
masak | yeah, saw that one. | ||
jnthn | Perl 6 isn't anything-ware. | 14:33 | |
It's a spec. | |||
masak | 'vaporware' applies to hyped products by game houses etc who work in a closed-source manner. it applies when no code/implementation whatsoever has been released to the public. | 14:34 | |
mathw | Duke Nukem Forever | 14:35 | |
the canonical example | |||
masak | aye. | ||
mathw | until it was cancelled | ||
14:37
Guest19966 left
|
|||
jnthn | I still think it's missing the point. Perl 6 is explicitly not the name of an implementation, so I don't think it makes sense to apply a label that is generally used to descibe software to it. Rakudo is a better example of something you could class as vaporware, apart from its rather inconvenient very public existence. :-) | 14:37 | |
mathw | yes | 14:38 | |
jnthn | er, to describe hypothetical software. | ||
;-) | |||
mathw | basically we're just witnessing another example of people not understanding what's going on here | ||
14:38
nihiliad joined
|
|||
jnthn | Aye. | 14:38 | |
masak | "I don't think it's really appropriate to call the Hurd vaporware. While some people get disappointed by the lack of some relatively basic things, a great many actually err on the other side -- they are quite surprised how complete the system already is..." lists.debian.org/debian-hurd/2007/0...00006.html | ||
jnthn | Nothing new in that sense. I just think framing it as what Perl 6 is vs what its implementations are could he helpful. | ||
masak: Heh. Sounds familiar. | 14:39 | ||
masak | it does. | ||
jnthn | Especially in some p6l posts. :-) | ||
mathw | :) | ||
jnthn | "Oh, it's implemented? I was only asking about spec! Horror!" | ||
mathw | some people probably want the implementation to go away so they can argue for things to be changed more | 14:40 | |
jnthn | lol | ||
I so don't want to believe that. :) | |||
mathw | somebody's always going to want things to be changed | ||
masak | yeah, it's darn inconvenient that implementations have started to interfere with our noble spec work. :P | 14:41 | |
it was much simpler before they did. | |||
mathw | hee hee | ||
14:41
espadrin` left
|
|||
mathw | it's more fun though | 14:41 | |
masak | yes, I think so. | ||
"[grub2] wont become vaporware, because the developers repository is still busy, stuff is still actively getting committed." brainstorm.ubuntu.com/idea/8143/ | 14:43 | ||
mathw | my laptop boots with grub2... | ||
that's distinctly non-vapoury | |||
14:43
IllvilJa joined
|
|||
masak | mathw: well, my laptop starts Perl 6 when I type 'perl6' on the prompt. | 14:43 | |
moritz_ | alpha: say Match ~~ Positional | 14:44 | |
p6eval | alpha 30e0ed: OUTPUT«1» | ||
mathw | masak: oddly enough, so does mine :) | ||
moritz_ | alpha: say Match ~~ Associative | ||
p6eval | alpha 30e0ed: OUTPUT«1» | ||
14:44
dalek joined
|
|||
jnthn | moritz_: It does the both. You may need a method "of" for conflikt resolution. | 14:44 | |
uh, conflict | |||
moritz_ | not quite what I'm after | 14:45 | |
jnthn | OK | ||
Just noting that doing both roles runs you into a conflict otherwise. :-) | |||
moritz_ | I'm trying to find out how Regexp::Cursor.MATCH propagates the positional and named captures to the match | ||
14:45
Alias left
|
|||
jnthn | Oh, that hurt my head too | 14:45 | |
I didn't quite figure it out. :-/ | |||
14:46
Alias joined
|
|||
mathw | there's a conflict between Associative and Positional? | 14:46 | |
moritz_ | mathw: both have .values, .keys, .kv | ||
mathw | aah | ||
irritating | |||
jnthn | moritz_: No, that's not the issue - they come from Any | ||
The problem is the method "of" | |||
mathw | oh | ||
I've never heard of that one | |||
moritz_ | jnthn: could it be that Match inherits from both RPA and Hash? | 14:47 | |
jnthn | my Int @foo; my Int %bar; say (@foo, %bar)>>.of; # Int()Int()" | ||
moritz_ | and that it just does match[$S0] = $named_capture | ||
match[$I0] = $positional_capture | |||
that's what it seems to do, yes | |||
mathw | jnthn: so .of returns the element type, or the value element type, as appropriate | 14:48 | |
jnthn | mathw: Yes | ||
mathw: The role is actually role Positional[::T = Object] { method of() { T }; method post...blah... } | 14:49 | ||
14:49
dalek left
|
|||
masak | "[Fifth generation computer project in Japan] was supposed to perform much calculation using massive parallel processing. [...] Either it was a failure, or it was ahead of its time." en.wikipedia.org/wiki/Fifth_generation_computer | 14:49 | |
jnthn | moritz_: That's possible, it may be Capture rather than the two of them though. | ||
moritz_ | jnthn: good point | ||
$P0 = p6meta.'new_class'('Regex::Match', 'parent'=>'Capture', | 14:50 | ||
spot on | |||
masak | "We don't need timelines right now. What we need is some hacking time and to bring some fun back into PHP development. It hasn't been fun for quite a while. Once we have a body of new interesting stuff, we can start pondering releases..." lwn.net/SubscriberLink/379909/d0cab59913dced2c/ | 14:53 | |
sounds like the cup-throwing incident. | 14:54 | ||
(but sans the cup) | |||
mathw | I guess it's a pretty hard task to take PHP and make it good | ||
to keep it moving forward without breaking it all | |||
Of course I'm biased | 14:55 | ||
moritz_ | it's also a hard task with Perl 5 | 14:56 | |
PerlJam | masak: yes, the PHP community tends to do the same things as the Perl community only years later. | ||
moritz_ | like... introducing namespaces | ||
masak | :) | ||
moritz_ | or Unicode | 14:57 | |
mathw | extensions | ||
masak | Unicode seems to be the big thing PHP 6 tries to do. | ||
mathw | and their biggest stumbling block too | ||
although they do need it | |||
but unicode is hard! | 14:58 | ||
we know this | |||
lots of people know it | |||
jnthn | 127 chars should be enough for anyone | ||
;-) | |||
masak | 128. :) | ||
jnthn | Well, I guess NULL is a char in the zen sense. :-) | ||
moritz_ | akshually ASCII didn't assign 127, or so I have heard | ||
PerlJam | NUL | ||
moritz_ says CREAT | 14:59 | ||
masak | moritz_: 127 is DEL or some such. | ||
14:59
dalek joined
|
|||
masak | jnthn: NUL is very much a real character, no zen sense necessary. | 14:59 | |
jnthn: it's only in C and the like it's sometimes used out-of-band, but it's still a character. | |||
jnthn | masak: I'm brain damaged by C. :-P | ||
masak | clearly :) | ||
PerlJam | the C form of brain damage is still the best kind to have overall | 15:00 | |
masak | even in C, you can have chr(0) in your strings... you just can't use the common string library functions on them and expect everything to work. :) | ||
mathw | well then you're dealing with binary buffers, which are a different kettle really :) | 15:03 | |
moritz_ | did you mean: (char) 0 ? :-) | ||
mathw means static_cast<char>(0) :) | |||
mathw is a C++ guy | 15:04 | ||
aaaw | 15:05 | ||
my cat's doing a scarf impression | |||
jnthn | Cats are The Awesome. | 15:07 | |
mathw | oh yes | ||
masak | mathw: does that mean it's draping itself over the back of your neck? | 15:09 | |
mathw | yup | ||
masak | that must be a sign that it really trusts you :) | 15:10 | |
mathw | yeah he does a lot of really trusting stuff | ||
stretching out belly-up on my lap and going to sleep, that sort of thing | |||
15:10
uniejo left
15:11
iblechbot left
|
|||
PerlJam | mathw: clearly you are an inferior being, otherwise the cat would regard you with more suspicion. ;) | 15:11 | |
mathw | heh | ||
quite possibly | |||
he knows my aikido training only covers human opponents | |||
jnthn | Dog: "You feed me, you care for me, you must be god." Cat: "You feed me, you care for me, I must be god." | 15:12 | |
PerlJam | jnthn++ | ||
mathw | that's about right, I think | ||
but I can't help it, he's so lovely | |||
15:13
uniejo joined
|
|||
masak | Do subs and methods still default to 'our' scope, as www.dlugosz.com/Perl6/web/class-declarators.html says? ISTR at least methods are now 'my' by default. | 15:13 | |
jnthn | no | 15:14 | |
subs are my by default | |||
15:14
uniejo left
|
|||
moritz_ | methods are 'has' by default | 15:14 | |
jnthn | methods are haz by default | ||
masak | what does it mean for a method to be 'has'? | 15:15 | |
jnthn | Only exists in the methods table. | ||
Not in the lexpad or package. | |||
masak | and that 'Only' means that you can't do what? | ||
masak wants details :) | |||
jnthn | Call it with anything but a dotty (or by asking the metaclass to give it to you) | 15:16 | |
(e.g. by .methods or .can) | |||
masak | jnthn: ok, so A::foo won't work? | ||
jnthn | Correct. | ||
moritz_ | huh, can an attribute in PIR only be a PMC? | ||
jnthn | You need to say "our method" for that. | ||
moritz_ | (and not an int) | 15:17 | |
jnthn | moritz_: Yes. :-/ | ||
moritz_ | let me say "huh". | ||
masak | jnthn: ok. | ||
jnthn | moritz_: And a lexpad too. | ||
moritz_: Which is one thing that'll need to change in Parrot before we do native types. | |||
chromatic++ mentioned knowing how to do that for lexpads, mind. | 15:18 | ||
But I still suspect we may see proper support for native types on another backend first. | |||
PerlJam | Does that "suspect" really mean "I'm working on it and I expect to beat chromatic to the punch"? :) | 15:19 | |
moritz_ | we need more chromatics :-) | ||
jnthn | PerlJam: I'm actually disciplining myself not to get distracted on the backends stuff until Rakudo * is out. | ||
PerlJam | moritz_: indeed. | ||
mathw | jnthn: something to do in .NET perhaps | ||
PerlJam | jnthn++ discipline is good | ||
mathw wonders what the big release after rakudo * will be called | 15:20 | ||
Rakudo Nebula? | |||
:) | |||
Super Rakudo Galaxy :D | |||
jnthn | Rakudo ** # includes slice support! | ||
mathw | (that's the one with Parrot, .NET, JVM and LLVM backends) | ||
PerlJam | Rakudo Nova ... seeding galaxies everywhere with fresh Perl 6 matter | 15:21 | |
Rakudo * can also be read as "Rakudo splat", so maybe Rakudo * has a whole other meaning we're not aware of ;) | 15:22 | ||
Su-Shee | I wouldn't go for stellar names unless you really dig puns on speed of light versus rakudo :) | ||
mathw | well of course it's also Rakudo Whatever | ||
PerlJam | Su-Shee: the more punnable, the better | 15:23 | |
jnthn | -Opun | ||
mmm...I has a stroopwafel. | |||
moritz_ is envious | 15:24 | ||
I pushed the refactor_mob_generation to the nqp-rx github repo | |||
masak | mathw: last I heard, it'll be 'Rakudo Star' for at least a couple of releases, since the name refers to a distribution, not a release. | ||
moritz_ | it now has a constructor in the Regex::Match class | 15:25 | |
not yet used, not yet tested | |||
plan is to call that from Regex::Cursor.MATCH | |||
masak | jnthn: I don't have a girlfriend to give stroopwafels to like moritz_, but I gave one to a girl friend. :) | ||
moritz_ | and then build a Perl 6 Match object | ||
jnthn | masak: I actually have an incredibly large supply thanks to (Netherlands Perl Workshop)++. Maybe enough to bring a packet to Uppsala. ;-) | 15:26 | |
masak | jnthn: mmm. :) | ||
jnthn: I won't hold it against you if you do. :) | |||
jnthn | .oO( Might hold it against me if I don't...best not accidentally the whole supply. ) |
15:27 | |
masak | :P | ||
jnthn: knowyourmeme.com/photos/4165 | 15:29 | ||
jnthn | masak: lol | 15:32 | |
moritz_ | rakudo: 'foo' ~~ /<alpha>+/; say $<alpha>.PARROT | ||
p6eval | rakudo db0f85: OUTPUT«Method 'PARROT' not found for invocant of class 'ResizablePMCArray'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
moritz_ | so... | ||
masak | hm... | ||
moritz_ | rakudo: 'foo' ~~ /<alpha>/; say $<alpha>.PARROT | ||
p6eval | rakudo db0f85: OUTPUT«Method 'PARROT' not found for invocant of class 'Regex;Match'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
masak | internals poking out... :/ | 15:33 | |
moritz_ | aye | ||
that's what I'm trying to fix atm | |||
but it's hard | |||
masak | nod. | ||
jnthn can imagine that as being tricky. :-/ | 15:34 | ||
15:36
bbkr left
|
|||
dalek | p-rx: becd0e9 | duff++ | (3 files): remove un-perly fatarrow extension |
15:37 | |
jnthn | ...wasn't that patch from a while ago? :-/ | 15:42 | |
moritz_ | I don't understand the cstack at all | ||
PerlJam | jnthn: the fatarrow one? | ||
jnthn | yeah | 15:43 | |
oh, no | |||
There was another fatarrow one a little while back | |||
moritz_ | and how it interacts with caparray | ||
PerlJam | I'd added a fatarrow extension for fperrad and friends. It was unperly and pmichaud said he was going to remove it. I notice he hadn't yet, so I did before it propagated too much. | 15:44 | |
jnthn | Ah, OK. | ||
moritz_ | the problem was that it parsed "a" => 1 and a => 1 the same way | 15:45 | |
so it would break the named arg vs. positional arg distinction | |||
jnthn | Yes | ||
It's better than NQP tries to stay a proper subset, IMHO. | |||
masak really liked webchick.net/files/women-in-floss.pdf | 15:48 | ||
15:52
bbkr joined
|
|||
Su-Shee | uah. ;) | 16:00 | |
masak | Su-Shee: what? :) | ||
Su-Shee | this is an insult to women like me. seriously. I _hate_ those kind of argumentation. un-be-lie-va-ble. | 16:01 | |
masak | Su-Shee: oh, you'll have to explain that. the presentation seemed very balanced to me. | 16:02 | |
but I'm male, so I'm sort of biased by design :) | |||
Su-Shee | besides the social factor - "not just rtfm - take 30 seconds to point the way" WTF? why need women to be cuddles and pointed to the documentation instead of just ... doing rtfm? | ||
16:02
buubot left
|
|||
jnthn | I didn't see how that particular one related to women at all, fwiw. | 16:03 | |
RTFM is always quite unhelpful. | |||
Su-Shee | jnthn: exactly. either that - then we could say "the foss culture of just saying rtfm sucks" - but saying that _this_ is something to drive women away.. well.. | ||
jnthn | It's a good point, but...yes, I found that weird. | ||
16:04
buubot joined
|
|||
Su-Shee | what I essentially hate most is: we're talking grown up upper level educated women here usally. they _have_ to learn to jump over their socialisation. and all this pointing to men in foss and asking _them_ for change.. well, change yourself first. | 16:05 | |
16:05
flity left
|
|||
masak | Su-Shee: why, according to you, are there so few women in FOSS circles? | 16:06 | |
16:06
flity joined
|
|||
huf | why are there so few men teaching in kindergartens? | 16:06 | |
i'm not saying it's the right approach but cant we just accept some things as is | 16:07 | ||
? | |||
Su-Shee | masak: because of the huge amount of time it takes to participate - which women if they have it - usally divide between more things than just open source and hacking. | ||
diakopter | why are there so few men bearing children? | ||
huf | diakopter: sadly, technological reasons | ||
but sooooooon.... | |||
masak | Su-Shee: ah, so because more men are monomaniacs, essentially... :) | ||
Su-Shee | masak: and plain disinterest. there are few women doing technology anway - probably of this number, the number of women in foss might even not be that low. | 16:08 | |
masak | nod. | ||
Su-Shee | masak: and they usally have more opportunity to be monomaniacs. be it for social acceptence reasons or be it for age. | 16:09 | |
masak | Su-Shee: it makes sense. | ||
Su-Shee | but for this to change, women have to decide to change themselves. programming foss ain't going to get any easier - so it takes you even _more_ time to get into it. | ||
and I'm sorry to say: but if you _really_ get shocked in a 600 men-3 women channel by the three asses you _OF COURSE_ will encounter: then you have no business on the internet. | 16:10 | ||
16:10
sundar joined
|
|||
Su-Shee | and obviously you missed that there are 597 men behaving appropriately. | 16:11 | |
(which is a damn great quota, I'd say.) | |||
bbkr | and this ratio is even worse on #perl7 :) | ||
16:13
clintongormley left
|
|||
masak | bbkr: what's this obsession about Perl 7? I'm not even getting started sucking on the Perl 6 candy. :P | 16:14 | |
huf | better start perl7 now so it'll be ready for christmas 2097? | ||
huf hides | |||
masak | Su-Shee: my mother has similar complaints about "wonem's networks" and the like. she says "I don't consider being a woman a factor in being an entrepreneur. why would I join a network that pretends it is?" | 16:15 | |
s/wonem/women/ | |||
16:18
cdarroch joined,
cdarroch left,
cdarroch joined
|
|||
Su-Shee | masak: I had my epiphany when I saw myself in a discussion about outing some rapist in the neighbourhood. all women threw all their energy onto the outing, the campaign - essentially _him_. instead of teaching themselves self defense and focussing on _themselves_. | 16:18 | |
masak | Su-Shee: good point. | ||
maybe men have an easier time thinking of themselves first. :) | 16:19 | ||
Su-Shee | so the lesson is: do foss, write code, focus on the cool guys, ignore the rest (or get a sharp tongue) and first and foremost: ask yourself what you can change about your female behavior. | ||
16:19
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
Su-Shee | example is usally: it's not personally against you specifically as a woman if you get the full beat down of "your code is shit". ;) | 16:20 | |
masak | heh. | 16:21 | |
I sometimes forget women tend to put an equivalence sign there. :) | |||
Su-Shee | masak: it's mostly that the culture of political resistance and change and emancipation tends to search for something to fight against instead of something to be engaged _for_ | ||
masak | Su-Shee: aye. | 16:22 | |
a bit of "ok, so we're reached the land of potentiality, but we're unable to dismantle the movement that brought us here" | |||
Su-Shee | like: your fight against privacy violations of companies instead of engaging yourself in a information has to be free movement. | ||
pugssvn | r30199 | lwall++ | [STD, gimme5] various tiny speed tweaks, fossil removal | ||
masak | or like p6l keeping on producing spec when we should really be doing implementation :) | 16:23 | |
Su-Shee | seriously: afterall - I just don't know what women are avoiding in foss. it's cheap. it's documented in miles of papers. it's open. it's there. you just have to sit down on your computer and _do_ it. | ||
masak | Su-Shee: could be just an accidental assymmetry. it tilted over early on and never changed. | 16:24 | |
probably not so accidental, even, since a lot of other factors favor men in FOSS. | |||
but it could definitely be self-reinforcing. | 16:25 | ||
Su-Shee | yeah well - in the end the factors doesn't matter. either you do foss or you don't. either you take the power you want or you don't get it. if our grandmother's would have waited for things to change, I still wouldn't have a banking account. | 16:26 | |
masak | :) | ||
TimToady | We who are Live White Males have been trained to think that we're supposed to be good Dead White Males someday, so we erect monuments to ourselves... | ||
Su-Shee | *hihi* :) | ||
TimToady | ...but knowing that, it still doesn't excuse us from not trying to do something monumental. :) | 16:27 | |
Su-Shee | well, a nice monument would look great in every woman's living room as well. ;) | ||
16:28
Patterner left
|
|||
Su-Shee | masak: aren't you supposed to be the prime example of an egaliterian society in sweden? | 16:28 | |
masak | Su-Shee: we're pretty egalitarian, IIUC. | 16:29 | |
Su-Shee: still doesn't mean men aren't pigs sometimes. | |||
and still doesn't mean there aren't stupid gender-based injustices. | |||
Su-Shee | masak: let's call it the "viking heritage" maybe. ;) | ||
masak | if it were only that... :) | ||
Su-Shee | masak: sure - but: I don't see the masses of swedish women flocking into science and computing as well. | 16:30 | |
16:30
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
masak | Su-Shee: true. | 16:30 | |
Su-Shee: it's a male-dominated landscape in the natural sciences and C.S. | |||
Su-Shee | if you go by numbers women surpassed in germany men two or three years ago in terms of grades, education and going to university. still: not into science and computing. | 16:31 | |
masak | nod. | ||
girls get higher grades here too, in almost all levels of education. | |||
Su-Shee | (german newspapers are full of articles recently about the discrimination of boys :) | 16:32 | |
masak | there's discrimination both ways, sure. but it's often in different ballparks. | ||
Su-Shee | masak: still don't choose science or computing.. not even for the sake of never being unemployed or the salaries or the freedom to choose your jobs instead of applying against 46856 competitors.. | 16:33 | |
moritz_ | also it was long a taboo to talk about sexual abuse of boys/men | ||
masak prepares to go swimming | |||
16:38
mberends left
|
|||
masak | Su-Shee: ok, so the solution is not for communities to cater for women, it's for women to think about themselves? | 16:38 | |
16:39
iblechbot joined
|
|||
masak | or about accepting that maybe women aren't interested in FOSS? | 16:42 | |
lue | interesting conversation :) | 16:46 | |
16:47
lue left
|
|||
Su-Shee | masak: I personally think so, yes. | 16:48 | |
masak: it's really not about the average joe foss hacker having to change. | |||
masak | Su-Shee: ok. thank you, this helped me as a male get a different perspective on this discussion than I had before. | 16:49 | |
16:49
chromatic joined,
lue joined
|
|||
lue | hooray for segfaults :/ | 16:49 | |
Su-Shee | masak: I personally consider for example allison or the kernel woman whose name I forgot more of a role model. to my view, those women just _do_ foss. | ||
16:50
kidd joined
|
|||
masak | Su-Shee: Jacinta Richardson? aye, agree. | 16:50 | |
chromatic | Valerie Aurora? | ||
Su-Shee | lemme look. | 16:51 | |
lue | In S02, state variables are defined as "lexically scoped but persistent names". What does the persistent part mean? | ||
16:52
sundar left
|
|||
Su-Shee | YES! | 16:53 | |
I know her as val henson. | |||
masak | seems she did a s/henson/aurora/ | ||
lue | hi masak! o/ | ||
Su-Shee | though I know that her opinion is more along the lines of this presentation pdf. | 16:54 | |
masak | lue: hi! I'm just leaving for a nice swim. | ||
lue: will I return to find awesome activity on RT? :) | |||
swimming & | 16:56 | ||
16:56
masak left
|
|||
lue | I'm leaving for a couple of days, so no :/ | 16:56 | |
When I'm back though, I'll be sure to pile up all the old, resolved tickets and set them on fire :) | 16:59 | ||
Anyway, can anyone explain to me the difference between a my variable and a state variable? | 17:00 | ||
17:02
envi^home left
|
|||
Su-Shee | phenny: tell masak, I just remembered the foss exception of the rule: the arduino/maker/wearables community. | 17:03 | |
phenny | Su-Shee: I'll pass that on when masak is around. | ||
chromatic | lue, a state variable gets initialized once. They have the same scoping rules, but the value of the state variable persists even as control flow exits its scope. | 17:06 | |
Think of it as a closed over variable that doesn't require an outer lexical scope to persist. It's like a telegraph with no cat. | |||
lue | So... my is a wimp, and dies as soon as the program leaves that scope, while state is a solider, who will stand there until the whole thing's called off? | 17:08 | |
TimToady | rakudo: sub incr { state $s = 0; say $s++ }; incr; incr; incr; incr; | ||
p6eval | rakudo db0f85: OUTPUT«Symbol '$s' not predeclared in incrcurrent instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)» | ||
TimToady | alpha: sub incr { state $s = 0; say $s++ }; incr; incr; incr; incr; | 17:09 | |
p6eval | alpha 30e0ed: OUTPUT«0123» | ||
TimToady | you'll note also that the initializer only runs once | ||
oh, chromatic said that | |||
chromatic | C'mon, TimToady. Get on the trolley! | 17:10 | |
chromatic checks off another life goal | |||
TimToady | I don't think my trolley connects with your trolley yet... | ||
chromatic | By airplane it does. | ||
lue | and obviously, state is NYI in rakudo... | ||
TimToady | chromatic++ and I can't agree on state either :) | ||
lue | If you need help, my TARDIS is just a ways away. It can help connect your trolleys | 17:11 | |
TimToady | I thought TARDIS could only go backward in time, not forward (well, not forward faster than anyone else goes forward) | ||
huf | i thought it can do anything the writers want it to do | 17:12 | |
TimToady | it's probably the disagreement about state that prevents our trolleys from connecting... | ||
lue | where is my, our, has, and so on implemented in Rakudo? | 17:13 | |
TimToady | I will admit that chromatic's trolley is probably a bit friendlier, Portland being all full of...er...Portlanders...and Silicon Valley being all full of...who knows what... | ||
17:13
kidd left
|
|||
TimToady | lue: grep and friends are your friends too | 17:14 | |
17:14
holli joined
|
|||
lue | (It does go forward. The only thing the TARDIS can't do is blend in with its location (broken Chameleon unit). That's why it's always a blue '50s Police Box) | 17:14 | |
I did try grep, but it comes up with every single occurance of 'my'. (trying 'has') | 17:15 | ||
TimToady | I have no idea where anything is, and only a vague notion of when it is. | ||
you probably want to look for <has> or :has or some such | 17:16 | ||
17:16
Alias left
|
|||
jnthn | lue: Everything, looking for things that care about $*SCOPE will probably be more meaningful. | 17:16 | |
lue | I found something in Grammar.pm, that's probably it. | ||
17:16
Alias joined
|
|||
jnthn | *Everywhere, even. :-) | 17:16 | |
my/state/our etc generallly just set $*SCOPE and leave over things to worry about how to scope themselves. | |||
lue | alright, I'll (try) to (almost) fix the fact that state is NYI after getting some stuff done. | 17:18 | |
lue & | |||
17:18
pausenclown left
17:20
rv2733 left
17:25
Trashlord left
17:26
Trashlord joined
17:29
iblechbot left
17:43
espadrine joined
|
|||
pugssvn | r30200 | lwall++ | [STD] be clearer about if() {...} and $x = given {...} errors | 17:45 | |
17:56
dakkar left
|
|||
moritz_ | jnthn: if you have some time, please look in the refactor_mob_generation branch of nqp-rx | 17:58 | |
jnthn: I'm having problems writing/calling a constructor - maybe you have some ideas on how to fix that | |||
t/nqp/29-make.t ........... too few named arguments: no argument for required parameter 'orig' | |||
current instr.: 'parrot;Regex;Match;new' pc 2603 (src/Regex/Match.pir:34) | |||
18:00
astrojp joined
|
|||
jnthn | moritz_: Are the named paramters actually all required, or is it OK if some are missing? | 18:02 | |
moritz_: Note that nameds don't default to optional in PIR | |||
You have to add :optional as well | 18:03 | ||
moritz_ | jnthn: it's ok for them to be required... | ||
jnthn: what I want is basically first create an empty object | |||
on which you can call .new with all those named arguments to create a "real" match object | 18:04 | ||
jnthn | match = new ['Regex';'Match'] | ||
rong | |||
moritz_ | I thought so | 18:05 | |
jnthn | match = get_hll_global ['Regex'], 'Match' should fetch the protoobject. | ||
moritz_ | ok | ||
and then I can call .new on the protoobject? | |||
jnthn | yes | 18:06 | |
Just replace the rong with the rite and it might work. :-) | |||
lue | > ./perl6 -e "sub incr { state $s = 0; say $s++ }; incr; incr; incr; incr;" | 18:07 | |
Malformed state at line 1, near "= 0; say +" | |||
ever so closer :) | |||
moritz_ | jnthn: even then I get the same errors... which suggests that it's not called from where I thought it was called | 18:08 | |
jnthn | Ah. | ||
:-/ | |||
[particle] | start a trace | ||
18:09
dukeleto joined
|
|||
jnthn | moritz_: Is the backtrace indicative at all? | 18:09 | |
[particle]: Last time I did that I won a free segfault. :-/ | |||
moritz_ | called from Sub '_block11' pc 0 (EVAL_1:5) | ||
called from Sub 'parrot;PCT;HLLCompiler;eval' pc -1 ((unknown file):-1) | |||
jnthn | Oh, ouch. | ||
lue | afk | ||
jnthn | That's...early. | ||
Oh, maybe not.. | 18:10 | ||
Hmm | |||
moritz_ | jnthn: ... it's called from the stage 0 compiler. sigh. | ||
jnthn | moritz_: Ah. :-/ | 18:11 | |
moritz_ | doesn't seem to be the problem | 18:13 | |
actually I also used match = new ['Regex';'Match'] within the constructor itself | |||
fail :( | |||
[particle] | ack 'new \[' <moritz's code> | 18:14 | |
moritz_ | that's what i#ve used | 18:15 | |
[particle] | :) | ||
jnthn | moritz_: The problem isn't new \[ though, it's things doing .'new' elsewhere, I guess. | 18:17 | |
alester | Remember the -Q | 18:24 | |
If I can possibly help it, I avoid all the backslashin' | 18:25 | ||
[particle] | \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ | 18:26 | |
i have plenty to spare. | |||
moritz_ | alester: I do use \Q quite often | 18:27 | |
alester | not \Q, -Q | ||
ack 'new [' -Q | |||
is the same as | |||
ack 'new \[' | |||
moritz_ | erm, that's what I meant. But typing is hard :-) | ||
18:28
Patterner left
18:36
cdarroch left
18:38
alfieANDfred joined,
alfieANDfred left,
cdarroch joined,
cdarroch left,
cdarroch joined
18:39
clintongormley joined,
SmokeMachine left
|
|||
alester | I hope my fixin' up of the gc/ dir isn't pointless | 18:41 | |
18:44
lichtkind joined
|
|||
lichtkind | jnthn: o/ | 18:45 | |
jnthn | o/ | 18:46 | |
Mozem ti pomoct? :-) | |||
lichtkind | jnthn: ještě ne diky | 18:47 | |
jnthn | Phew. :-) | 18:48 | |
lichtkind | jnthn: slovak is also hard to me :9 | ||
jnthn: but i wouldnt exlude that because i want to master now special blocks and parameter traits | 18:49 | ||
jnthn | Yes, your Czech response did parse after throwing away the j and wondering what the mekcen was doing over the last e. :-) | ||
lichtkind: Ooh, I know a little bit about traits. :-) | 18:50 | ||
lichtkind: I need to go eat soon though, but I'm around most of the evening. :-) | |||
lichtkind | jnthn: i also needed second to get that Mozem is weird form of mužem :9 | 18:53 | |
i think first i will check if all www.perlfoundation.org/perl6/index....ure_traits are in index A | 18:54 | ||
jnthn | lichtkind: It's možem if I'd typed it properly. :-) | 18:55 | |
lichtkind | jnthn: and hej all my 3 talks were accepted, that mean real work since all are new :) :( :) | ||
jnthn | lichtkind: Ooh, where at? | ||
German Perl Workshop? | |||
lichtkind | yes | 18:56 | |
jnthn | Cool | ||
lichtkind | you will be there? | ||
pisa i submitted put i seemed to be first :) | |||
jnthn | lichtkind: Don't think I can make it to GPW. | 18:57 | |
Already trying to do Nordic and French and maybe Ukrainian... | |||
18:58
payload joined
18:59
SmokeMachine joined
|
|||
lichtkind | jnthn: i wantent attent the letvian, but hm i .. where is nordic this year? | 19:02 | |
moritz_ | iceland | 19:03 | |
jnthn | It's gonna be cool. | 19:04 | |
OK, dinner time! \o/ | |||
bbiab | |||
19:04
payload left
|
|||
moritz_ | rakudo: say 0.9 * 2**20 | 19:17 | |
p6eval | rakudo db0f85: OUTPUT«943718.4» | ||
19:19
_jaldhar joined
19:20
jaldhar left
19:30
vapace joined
|
|||
dalek | kudo: 9a4cabb | chromatic++ | src/ (2 files): [ops] Moved P6LowLevelSig initialization to the PMC out of allocate_signature |
19:30 | |
19:30
ilogger2 joined
19:32
Gothmog_ joined,
pyrimidine joined
|
|||
chromatic can't figure out how to rebuild Rakudo's C components with debugging symbols. | 19:35 | ||
19:36
ShaneC joined
|
|||
lue | and so, I bid you adieu for a few days | 19:44 | |
19:54
pmurias joined
|
|||
pugssvn | r30201 | lwall++ | [Cursor] win back some speed by letting cursor_xact cheat on immutability | 19:57 | |
moritz_ | Moose 1.0 has been uploaded to cpan | 19:58 | |
stevan++ | |||
jnthn | chromatic: That's odd...must be something platform specific. I get them. | 20:01 | |
TimToady | yes, stevan++, but STD's most time consuming routine is currently Try::Tiny::try, pulled in by Moose, alas | ||
PerlJam | TimToady: patches welcome! ;) | 20:02 | |
TimToady | I just want to complain. | ||
I'm no good at Perl 5 internals... | 20:03 | ||
sjohnson | heheh | ||
that makes two of us | |||
moritz_ | chromatic: your last patch made two test in t/spec/S12-attributes/instance.t fail | 20:04 | |
jnthn | moritz_: It didn't. | 20:06 | |
moritz_: It's a "if you get lucky it passes" one. | |||
moritz_: I'll fix it soon. | 20:07 | ||
moritz_ | oh | ||
then sorry for the noise | |||
jnthn | me-- to blame for that. | ||
moritz_ | is it... attribs are stored in hashes? | ||
jnthn | No, no worries...it does come and go. | ||
Yes, it's that. | |||
moritz_ | we've had that in alpha too | ||
jnthn | Well | ||
The silly thing is | |||
I worked out how to handle it fine in the metamodel | |||
But this time managed to screw it up in the compilation stage. :-/ | 20:08 | ||
Easy fix, anyways. | |||
20:09
dukeleto joined
|
|||
jnthn | chromatic: Huh...how long have I been missing init_int for?! | 20:10 | |
chromatic: Anyway, nice patch...I only knew of the init_pmc and thought init_str had got deprecated. Maybe I'm hazy though. | |||
chromatic | A couple of weeks. | ||
20:10
hirschnase joined
|
|||
jnthn | chromatic: Oh. | 20:10 | |
chromatic: I don't feel bad for missing it when I wrote that code a few months ago then. ;-) | 20:11 | ||
chromatic | Nope, it's definitely an improvement. | ||
jnthn | Yeah, it's much nicer way to do it. | ||
20:11
perlpilot joined
20:12
hirschnase left
20:14
dukeleto left,
pugssvn joined,
mberends joined
|
|||
perlpilot | feather is all kinds of painful today | 20:15 | |
$ uptime | |||
20:14:20 up 1 day, 5:04, 3 users, load average: 40.78, 33.76, 18.72 | |||
jnthn | I think that counts as "load above average" | 20:16 | |
20:17
dukeleto joined,
PerlJam joined
|
|||
mathw | evening | 20:22 | |
loadavg 40 is not good! | |||
20:23
dukeleto left
|
|||
perlpilot | I expect PerlJam to disappear soon too | 20:23 | |
20:24
dukeleto joined
|
|||
perlpilot is having trouble talking to that particular IRC instance | 20:24 | ||
20:28
pugssvn left
20:30
pugssvn joined
20:40
colomon left
|
|||
lichtkind | what difference between CATCH and CONTROL? | 20:40 | |
moritz_ | CONTROL is for control exceptions | 20:41 | |
and CATCH for all other exceptions | |||
jnthn | As far as I grok it, CONTROL catches control exceptions (like next/last/return etc) where as CATCH catches the others. | ||
Gah, beaten. :-) | |||
lichtkind | thanks both | 20:43 | |
20:46
colomon joined
20:47
ive joined,
pmurias left
20:50
colomon_ joined,
colomon left,
colomon_ is now known as colomon
20:52
dalek joined
|
|||
lichtkind | theses special blocks have same namespace as surrpounding block right? | 20:54 | |
20:55
ash__ joined
|
|||
moritz_ | they are not visible inside a namespace | 20:55 | |
but since in Perl 6 almost all lookups are either lexical or dynamic (and not namespace), that doesn't really matter | 20:56 | ||
perlpilot | lichtkind: they exist more in a when than a where :) | ||
ash__ | does anyone know if irc.perl.org listens on any non-standard irc ports? like how freenode listens on 8001 | ||
BinGOs | are you on irc.perl.org? | 20:57 | |
type /stats P | |||
lichtkind | moritz_: but in other words if i defcla an var in BEGIN block its not known in sourrounding block? | 20:58 | |
ash__ | BinGOs: i am not on irc.perl.org, its blocked on my campus for some reason | ||
i think its the port thats blocked | |||
perlpilot | ash__: you don't have a feather account? | 21:00 | |
moritz_ | lichtkind: correct | ||
ash__ | perlpilot: umm... i don't think i have one... | ||
perlpilot | (not that it'd help you today with feather's aperiodic heightened load average) | ||
moritz_ | lichtkind: but you can use BEGIN as a statement prefix | ||
std: sub a { BEGIN my $x = 3 * 3; ...; $x } | 21:01 | ||
p6eval | std 30201: OUTPUT«ok 00:01 108m» | ||
BinGOs | ash__: scsys.co.uk:8002/41324 | ||
lichtkind | moritz_: great now i understand what was explained there with expression | ||
BinGOs | should be the same on all the servers | 21:02 | |
jnthn | moritz_: Note that mixing BEGIN and lexicals that are meant to outlast the BEGIN ain't likely to end well ATM. | 21:04 | |
moritz_ | rakudo: BEGIN say 3 | 21:05 | |
p6eval | rakudo db0f85: OUTPUT«3» | ||
moritz_ | jnthn: I didn't even know that BEGIN as a statement prefix worked :-) | ||
rakudo: my $x = 3; BEGIN $x = 5; say $x | |||
p6eval | rakudo db0f85: OUTPUT«Symbol '$x' not predeclared in <anonymous>current instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)» | ||
moritz_ | ah, that's what you meant :-) | ||
jnthn | yeah | 21:06 | |
Things like my $x = BEGIN time; work though | |||
rakudo: sleep 2; say time; say BEGIN time; | 21:07 | ||
p6eval | rakudo db0f85: OUTPUT«1269550347.51151269550345.24536» | ||
moritz_ | rakudo: say 1269550345.24536 - 1269550347.5115 | ||
p6eval | rakudo db0f85: OUTPUT«-2.26614» | ||
jnthn | Heh. Since it computes it at the appropriate point during the parse, you can use it as a way to see how long it takes to get from the parse at that point to execution. ;-) | 21:08 | |
21:13
_jaldhar joined
21:17
hicx174 joined
21:22
holli_ joined,
eternaleye joined
21:26
Trashlord joined
21:27
Trashlord is now known as Guest88978
21:28
wknight8111 joined,
eternaleye left
21:30
eternaleye joined
21:31
colomon left
21:33
pyrimidine left
21:43
payload joined
|
|||
lichtkind | jnthn: thanks i use a quote from you for docs | 21:44 | |
jnthn | uh oh, I hope it wasn't one where I said something silly. | ||
lichtkind | moritz_: i used something from you too :) | 21:45 | |
jnthn: no its exactly "(like next/last/return etc)" | |||
ecplaining control | |||
jnthn | oh, that's not so incriminating. :-) | ||
21:49
ignacio_ joined,
payload left
21:54
pmurias joined
21:58
perlpilot left,
iblechbot joined
|
|||
chromatic | db9c0ea is a bit risky, but it seems to help. | 22:00 | |
If it's not right, jnthn should know enough to make it right. | |||
22:02
sundar joined
|
|||
jnthn | ->constraints? | 22:04 | |
I thought I'd removed that. :-/ | |||
Checking. | |||
ah, no, it still lives on. | 22:05 | ||
dalek | kudo: db9c0ea | chromatic++ | src/pmc/perl6multisub.pmc: [PMC] Fixed a memory leak in Perl6MultiSub of candidate constraints and types. |
22:06 | |
kudo: 4b7dbf3 | chromatic++ | src/pmc/perl6multisub.pmc: [PMC] Tidied code in Perl6MultiSub PMC; no functional changes. |
|||
jnthn | chromatic: It looks sane. | 22:10 | |
I think. | |||
The candidate sorter isn't the simplest bit of code. :-) | |||
mberends | in rakudo/build/Makefile.in, is the order of module names in CORE_SOURCES significant? I'd like to re-order them in the split-gen-settings-2 branch. | 22:18 | |
moritz_ | mberends: yes, it is significant (at least right now) | 22:19 | |
jnthn | Yes, it is. | ||
For example, whatever you do, make sure traits.pm stays first. | |||
moritz_ | mberends: because they are concatenated, and some modules rely on type names being known | ||
jnthn | It defines is export | 22:20 | |
If you don't have that first, then probably no exports work. ;-) | |||
And what moritz_++ said. | |||
moritz_ -> bed | 22:21 | ||
22:21
nihiliad joined
|
|||
moritz_ | good $rest_of_waking_time and then sleep to all UTC-ish channel inhabitants :-) | 22:21 | |
mberends | thanks moritz_, good UTC-night | 22:22 | |
jnthn | o/ moritz_ :-) | 22:23 | |
mberends | compiling each one separately, there are lots of patches to go in such as stub classes and use MONKEY_TYPING. I wonder how their PIR will shape up when they are all concatenated. | ||
jnthn | mberends: I'm not sure. | ||
use MONKEY_TYPING has no PIR side-effects. | |||
mberends | I can but try | ||
jnthn | It's purely parse-time | ||
mberends: You're probably discovering now why it's not such a trivial task, anyways. | 22:24 | ||
mberends | yes. hmm, Seq.pm compiled separately says Missing block at line 18 :-( | ||
the block is probably not missing | 22:25 | ||
lichtkind | mberends: cheers | ||
mberends | hi lichtkind | ||
lichtkind | mberends: there is massive action going on need help :) | 22:28 | |
mberends | lichtkind: what massive action? | ||
lichtkind | in tpf in pcde wiki | 22:29 | |
and pc.de wiki | |||
jnthn | .oO( There's massive action in Rakudo too...oh wait, that's actions.pm ) |
22:32 | |
22:37
kfo_ joined
22:38
pmurias left
22:42
kfo left,
kfo_ is now known as kfo
22:45
ignacio_ left
22:47
riffraff joined
|
|||
sundar | Hi... I'm trying to learn Perl6 and do some Project Euler problems with it... Is Moritz's "Perl 5 to 6" the best current documentation? | 22:48 | |
lichtkind | jnthn: :) | 22:49 | |
jnthn: is CATCH also executed when next is called? | |||
mberends | sundar: it's current, so begin there, but then continue reading more from perl6.org | 22:50 | |
lichtkind | sundar: try the tablets bit there are still very incomplete | 22:51 | |
sundar | lichtkind: What are the "tablets"? | ||
22:52
nihiliad left
|
|||
lichtkind | sundar: www.perlfoundation.org/perl6/index...._6_tablets | 22:52 | |
the indexes are comprehensive | 22:53 | ||
the rest in construction | |||
pugssvn | r30202 | lwall++ | [Cursor] no need to keep xact pointer for bound submatches | 22:59 | |
sundar | lichtkind: whoa, the index is very useful indeed. thanks.. | 23:00 | |
snarkyboojum | sundar: depending on your programming expertise, the Perl 6 advent calendar has some fantastic info in it perl6advent.wordpress.com/2009/12/0...t-calendar | 23:01 | |
lichtkind | sundar: all 5 inecies :) | ||
23:02
ash__ left
|
|||
snarkyboojum | sundar: there's also quite a few Perl 6 examples out there, check out github.com/perl6/perl6-examples | 23:06 | |
TimToady | sundar: and pretty much all the links you follow from perl6.org will be useful on some level or other. | 23:10 | |
the "best" current documentation in the sense of completeness is the synopses. | 23:11 | ||
but it's not terribly well organized, and it's reference, not tutorial | |||
23:12
colomon joined,
iblechbot left,
colomon_ joined
|
|||
sjohnson | hows it going colomon | 23:13 | |
colomon_ | checking in from Ambercon! | ||
sundar | snarkyboojum: great, that even has a list of Euler problems, which was what I set out to write. | ||
TimToady | sundar: perhaps most importantly, there are some slightly bitrotted Project Euler problems already done in svn.pugscode.org/pugs/examples/euler | ||
after you've tried coming up with your own solutions, you could compare to the old ones, and if yours works better, replace the ones that are there | 23:14 | ||
jnthn | colomon_: Having fun? :-) | ||
TimToady | we can give you a pugs repo commit bit if you like | ||
colomon_ | yes! | 23:15 | |
lots of old friends here. | |||
23:15
ive left
|
|||
TimToady | shadow walking, are you? | 23:15 | |
colomon_ | TimToady: not yet, but soon... ;) | ||
23:16
colomon left
23:17
colomon_ is now known as colomon
|
|||
sjohnson | statistically speaking, #perl6 is the friendliest place on freenode today | 23:17 | |
colomon has killed off the impostor... | |||
sundar | TimToady: Thanks.. I found some solutions at github.com/perl6/perl6-examples/tre...ter/euler/ too, and to me they appear to teach more of the power of Perl6 and also that 'timtoady'.. :) | 23:19 | |
23:20
masak joined
|
|||
masak | ahoy, landlubbers! | 23:20 | |
phenny | masak: 17:03Z <Su-Shee> tell masak I just remembered the foss exception of the rule: the arduino/maker/wearables community. | ||
jnthn | masak: ahej! | ||
masak | hm. I've heard about that exception. | 23:21 | |
it's an interesting one. | |||
jnthn: the night shift begins! | |||
jnthn | \o/ | ||
jnthn fetches a beer | |||
masak | [backlogging] "a telegraph with no cat"? | 23:22 | |
23:23
ash_ joined
|
|||
masak | std: grammar G { regex foo { :has $!bar; } } | 23:24 | |
p6eval | std 30201: OUTPUT«===SORRY!===Semicolon must be quoted at /tmp/Haq22rH48R line 1:------> grammar G { regex foo { :has $!bar;⏏ } }FAILED 00:01 108m» | ||
masak | hm, 'has' probably isn't a scope declarator :) | 23:25 | |
is it possible to emulate loops with macros? | |||
I mean, without the macro substitutor thingy itself looping indefinitely. | |||
jnthn | has is a cope declarator. | ||
masak | what's a cope? | 23:26 | |
jnthn | A scope with a missing s. | ||
masak | :) | ||
jnthn | :-P | ||
bkeeler | ello ello | ||
masak checks what S05 has to say about scope declarators in regexes | |||
bkeeler: \o | |||
jnthn | masak: I doubt has makes that much sense as a scope delcarator in a regex though | 23:27 | |
Just as it doesn't make much sense inside a method either. | |||
(Heck knows what happens if you try it... :-)) | |||
masak | jnthn: well, I wanted to see if STD could parse it. | ||
jnthn | Aye | ||
masak | jnthn: S05:544 says it should be OK. | ||
jnthn | Syntacticly or semanticly? | ||
masak | syntactically. | ||
bkeeler | A regex is a method in that context. Would you use has in a method? | 23:28 | |
jnthn | Ah | ||
bkeeler: I hope not. | |||
:-) | |||
masak | no, I wouldn't. | ||
jnthn | At least, I've never seen it done. | ||
masak | it doesn't belong in that scope. | ||
jnthn | masak: I suspect it may be OK syntactically, but should fail a semantic check. | ||
masak | but jnthn said it's a scope declarator, so it should be allowed syntactically. | ||
jnthn | Yes, I'm a bit surprised on that front. | ||
Maybe it's just an LTA message. | |||
masak | no, I think STD shouldn't fail. | ||
provided that 'has' *is* a scope declarator. | 23:29 | ||
I mean, it has traits of not being one. | 23:30 | ||
23:30
riffraff left
|
|||
bkeeler | Well, when I was doing the grammars, I pretty much copied what STD had | 23:31 | |
jnthn | masak: It's parsed like this: | ||
token mod_internal:sym<:my> | |||
In STD | |||
Not using scope_declarator | |||
masak | ok. | ||
jnthn | here it is in full: | 23:32 | |
token mod_internal:sym<:my> { ':' <?before ['my'|'state'|'our'|'anon'|'constant'|'temp'|'let'] \s > [:lang($¢.cursor_fresh(%*LANG<MAIN>)) <statement> <eat_terminator> ] } | |||
bkeeler | Hmm, OK I guess I didn't copy that | ||
jnthn | bkeeler: We probably only know what to do with my right now anyway, tbh. | 23:33 | |
bkeeler | Hmm, company it seems | 23:36 | |
Was a short rakudo hacking session :/ | |||
bbl | 23:37 | ||
jnthn tries to summon energy to fix that embarassing attributes fail. | 23:39 | ||
23:39
cognominal left
23:40
cognominal joined
|
|||
masak | pugs: class A {}; class B { trusts A } | 23:40 | |
p6eval | pugs: ( no output ) | ||
masak | pugs: class A { has $!foo }; class B { trusts A; method bar(A $a) { say $a!foo } }; B.new.bar(A.new) | 23:41 | |
p6eval | pugs: OUTPUT«» | ||
23:41
nihiliad joined
|
|||
masak | pugs: class A { has $!foo }; class B { trusts A; method bar(A $a) { say $a!foo } }; B.new.bar(A.new(:bar(42))) | 23:42 | |
p6eval | pugs: OUTPUT«» | ||
masak | hm. | ||
23:43
Alias joined
|
|||
TimToady | you've got your trusts in the wrong class | 23:47 | |
the class defining the private variable is the one doing the trusting | |||
jnthn never quite figured out how trusts should be implemented. | 23:48 | ||
TimToady | also, your calling syntax is wrong according to S12:1314 | ||
masak | oh wow, am I wrong tonight. | 23:49 | |
masak checks | |||
jnthn | $a!foo would call a private method. | ||
jnthn forgets the syntax for getting at a private attribute. | 23:50 | ||
m6locks | through a method? | 23:52 | |
at least, that's the kosher way | |||
masak | indeed. but we're trying to do it with trust. :) | ||
jnthn | Yes, but has $!a doesn't imply a method. :-) | ||
cognominal | ! instead of . ? | 23:53 | |
23:54
fda314925 joined
|
|||
masak | I sense a degree of confusion in this discussion :P | 23:54 | |
m6locks | haha | ||
cognominal | compiling rakudo takes about an hour on my mac 2Go. Things have gone wrong the last few weeks. :( | ||
m6locks | how about adding a dot before it | ||
liek .$!a | 23:55 | ||
masak | cognominal: yes. it's a Parrot memory problem. it's being worked on. | ||
ash_ | cognominal: a whole hour? dang.... i don't think mines that bad, but i might not be paying close attenntion | ||
cognominal | ho, I a twit from chromatic about that | 23:56 | |
I don't mind the compilation length but being unable to do anything with my mac in the mean time. | 23:57 | ||
masak | colomon: you might want to limit virtual memory use. I'm on a Mac, and I do that. | ||
er, cognominal. sorry :/ | |||
colomon | no worries. ;) | ||
m6locks | oh yeah and nice is a nice tool also | 23:58 | |
setting low priority | |||
cognominal | masak, that would trigger parrot garbage collection? | ||
that would be better than swapping :) | |||
masak | cognominal: seems to for me. | ||
ash_ | how do you limit the virtual memory? | 23:59 | |
i haven't ever done that before on a mac |