»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! | Rakudo Star Released! Set by diakopter on 6 September 2010. |
|||
dalek | ecza: fc0abe9 | sorear++ | / (4 files): Use new contexts in part of setting |
00:00 | |
TimToady | in general, as soon as you want subrules, you really want a grammar, so the rules can call each other as methods | ||
also, you generally want to go with tokens till you know you need the whitespace matching of rules | |||
tadzik | experiment gone wrong: gist.github.com/708292 how should it look like? | 00:01 | |
00:01
jrockway left
|
|||
tadzik | oh, and I get NULL PMC access when changing || to or | 00:01 | |
00:02
jrockway joined
|
|||
edenc | yes, for the case I'm trying to get to, it's safe to assume that tokens are produced by non-'/', since I'll be matching a uri construct | 00:02 | |
dalek | ecza: 21feb67 | sorear++ | lib/Kernel.cs: Add native context handlers for Mu.defined and Mu.Bool |
||
TimToady | this is strange, github claims not to know what github.com/perl6/mu/raw/master/src...l6/STD.pm6 is | 00:03 | |
sorear | TimToady: try perl6/std/STD.pm6 | ||
mu was split up | 00:04 | ||
TimToady | oh, then the link on perl6.org is wrong | ||
ruoso | rakudo: grammar MyApp { token baz { "/baz" { say "subtoken" }}; token bar { "/foo/bar" { say "hello" } <baz> { say "world" } } }; "/foo/bar/baz" ~~ /<Foo::bar>/ | ||
p6eval | rakudo : OUTPUT«===SORRY!===regex assertion not terminated by angle bracket at line 22, near "::bar>/"» | ||
ruoso | how do I match a token inside a grammar? from outside? | ||
TimToady | MyGrammar.parse("string") | 00:05 | |
the top rule in the grammar is customarily called TOP | |||
ruoso | rakudo: grammar MyApp { token baz { "/baz" { say "subtoken" }}; token bar { "/foo/bar" { say "hello" } <baz> { say "world" } } }; MyApp.bar("/foo/bar/baz"); | 00:06 | |
p6eval | rakudo : OUTPUT«Too many positional parameters passed; got 2 but expected 1 in 'MyApp::bar' at line 22:/tmp/KxIgx0srm1 in main program body at line 22:/tmp/KxIgx0srm1» | ||
masak | Result: PASS | ||
it's so nice to see this in the spectests :) let's keep it that way. | 00:07 | ||
masak commits/pushes | |||
TimToady | ruoso: you need a TOP token/rule | ||
ruoso | rakudo: grammar MyApp { token baz { "/baz" { say "subtoken" }}; token bar { "/foo/bar" { say "hello" } <baz> { say "world" } }; token TOP { <baz> | <bar> } }; MyApp.parse("/foo/bar/baz"); | 00:08 | |
p6eval | rakudo : OUTPUT«hellosubtokenworld» | ||
ruoso | rakudo: grammar MyApp { token baz { "/baz" { say "subtoken" }}; token bar { "/foo/bar" { say "hello" } <baz> { say "world" } }; token TOP { <baz> | <bar> } }; MyApp.parse("/foo/bar/baz"); MyApp.parse("/baz"); | ||
p6eval | rakudo : OUTPUT«hellosubtokenworldsubtoken» | ||
ruoso | TimToady++ | ||
TimToady | .parse is essentially a constructor for a match | ||
ruoso | edenc: so the TOP token would list all the starting points.. | 00:10 | |
tadzik | is that what you mean as a dispatcher in grammars? gist.github.com/708292 | ||
dalek | kudo: 8ddf7f2 | masak++ | src/core/Cool-str.pm: [src/core/Cool-str.pm] changed to 'my class' Used to be a regular lexical variable. Suggestion by jnthn++. Also changed the name of a variable for greater consistency. |
00:11 | |
sorear | masak: RAKUDO PASSED THE SPECTESTS?!?! | ||
flussence | ? | ||
ruoso | tadzik: something like that, but the actions can be in the tokens | ||
flussence | been passing for a while: smolder.parrot.org/app/projects/smoke_reports/5 | ||
tadzik | ruoso: sure | ||
flussence | modulo the yellow-green text | ||
dalek | odel: d73ce45 | jonathan++ | dotnet/runtime/ (2 files): [dotnet] Add variant of the capture former that takes a flattening specification. |
00:12 | |
odel: f3c12fd | jonathan++ | dotnet/runtime/Runtime/Signatures/SignatureBinder.cs: [dotnet] Simple implementation of flattening in the signature binder. |
|||
odel: 63f91ae | jonathan++ | dotnet/compiler/Actions.pm: [dotnet] Fix in JnthnNQP - suspect nqp-rx has similar issue but it gets hidden somehow - in check for |%foo things. |
|||
odel: 3a28d12 | jonathan++ | dotnet/compiler/PAST2DNSTCompiler.pm: [dotnet] Implement compilation of .flat on PAST nodes, so we can now support flattened args. |
|||
masak | sorear: well. modulo fudging. | ||
sorear: but it's actually not as crazy as it sounds. we're almost out of spectests. | |||
tadzik | ruoso: but I don't think that's necesarilly a good idea | ||
edenc | tadzik: well, the more flexibility, the merrier | ||
tadzik: why? | |||
sorear | masak: I'll have to add some of the crazier niecza tests to roast | 00:13 | |
tadzik | edenc: well, the code would look really messy then :) Now it looks pretty straithforward to me: a list of paths, and then a list of methods-controllers | ||
sorear | I've got lots of LTM tests... that stuff is pretty fragile and *needs* it | ||
tadzik | that's just my thinko | ||
edenc | tadzik: well, yes, for a production scale app, it makes sense to have everything factored out | 00:14 | |
masak | sorear: I've said it before: looking forward to two active implementations sharing the spectest suite. | ||
dalek | odel: 0fd99ef | jonathan++ | t/nqp/41-flat.t: [t] We now pass 41-flat.t. |
00:15 | |
ruoso | now we just need to figure out the magic jnthn mentioned to resolve the uri_for_action | ||
edenc | tadzik: but I intend to have inline actions merely for hype | ||
dalek | ecza: e22b4f7 | sorear++ | lib/SAFE.setting: Use new contexts in rest of setting |
||
ruoso | if the action is just "forward to view X", no reason to have a method for it | ||
edenc | yes, that too | 00:16 | |
ruoso: I believe I missed the bit of magic you're referring to | |||
dalek | odel: 2ff0334 | jonathan++ | dotnet/compiler/ROADMAP.txt: [dotnet] Remove a completed ROADMAP item. |
||
ruoso | the introspection of the token declaration | ||
00:16
gbacon left
|
|||
tadzik | edenc: well, it doesn't look bad: gist.github.com/708292 | 00:16 | |
edenc | yes, I agree | 00:17 | |
flussence | I have to say, that's one of the most crazy-awesome ideas I've seen in a while. | 00:18 | |
tadzik | agreed | ||
what's the problem now? | |||
ruoso | resolving uri_for_action | ||
edenc | tadzik: <main> | <about> | <contact> | ( <api> {send_to_json_serializer} | {send_to_html_generator}) | ||
that would be interesting | 00:19 | ||
tadzik | hmm? | ||
ruoso | I think you meant... | ||
edenc | actually | ||
(<main> | <about> | <contact> ) ( <api> {send_to_json_serializer} | {send_to_html_generator}) | |||
tadzik | lemme code something | ||
ruoso | that | ||
edenc | or something | ||
dalek | href="https://perl6.org:">perl6.org: bc90b40 | TimToady++ | source/ (2 files): STD.pm6 link was suffering 'brot |
||
edenc | sorry, I don't grok the p6 grammar language yet | ||
tadzik | hmm, I'd go for actions here | 00:20 | |
edenc | ruoso: oh, and how would you go about interrupting the parse from inside the action? | 00:21 | |
diakopter | nqpnet: say('still works?') | ||
p6eval | nqpnet: OUTPUT«still works?» | ||
diakopter | oh goody | 00:22 | |
jnthn | diakopter: How offen it updates? | ||
diakopter | x:05 | ||
jnthn | 'k | ||
diakopter | hourly like the others | ||
ruoso | edenc: take a look at the spec... there are some options | 00:23 | |
jnthn | edenc: If you wanted to for example say "this must return a true value to continue parsing" you can use like <?{ ...stuff... }> | ||
diakopter | jnthn: actually though, `make -f Makefile.linux` is in the try2.sh, and git pull would be an imperceptible addition... so theoretically it could check/update on every run :) | ||
masak | decommute & | 00:24 | |
00:24
masak left
|
|||
diakopter | jnthn: note I took the easy route and forked the Makefile | 00:24 | |
00:24
TiMBuS joined
|
|||
jnthn | diakopter: That's fine for the time being. :) | 00:24 | |
tadzik | edenc: did you mean something like this? gist.github.com/708292 | 00:27 | |
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index...._io_tablet | ||
ruoso | edenc: tadzik: gist.github.com/708304 | 00:30 | |
tadzik | nice | 00:32 | |
edenc | I don't get why you're using tokens though | ||
tadzik | I assume you mean $<customer_id>=[ \d+ ] | 00:33 | |
ruoso | tadzik: I might have some things wrong there, yes | ||
edenc: there is one other thign... | 00:35 | ||
is there some way to know through which tokens the match went? | 00:36 | ||
edenc | well, that's easy to solve | 00:37 | |
tadzik | { @a.push('some token') } in every one of them? | ||
edenc | yeah | ||
ruoso | I meant for the automatic selection of the template | ||
jnthn | ruoso: What are you wanting, to record the path taken through the rules? | ||
ruoso | yes | 00:38 | |
jnthn | ruoso: Calling rules is just calling methods. | ||
00:38
TiMBuS left
|
|||
jnthn | ruoso: Maybe a simpler solution is a custom meta-class that logs the called methods or something? | 00:38 | |
ruoso | hmm... maybe... | ||
edenc | ruoso: there are several neat approaches you can take for that | 00:39 | |
ruoso: it doesn't necessarily need to be rule1/rule2/rule3 | |||
you can instead stack three templates instead | |||
with less instead | 00:40 | ||
00:41
risou joined
00:42
TiMBuS joined
|
|||
edenc | anyway, I'm out | 00:42 | |
I'll be back to annoy you guys once I have minimal grokage of the grammar syntax | |||
jnthn | :) | ||
edenc | & | ||
jnthn | o/ | ||
tadzik | o/ | ||
ruoso | edenc: gist.github.com/708304 | 00:43 | |
jnthn: the above gist illustrates what eneds to be automatized | |||
having to manually specify the template like that is boring... | 00:44 | ||
00:45
obsd123 left
00:48
Trashlord joined,
justatheory joined
|
|||
dalek | ecza: d8d4ab9 | sorear++ | lib/Builtins.cs: PostIncrement needs to handle undefined values |
00:48 | |
colomon | jnthn: does nqp-rx have .defined? | 00:53 | |
diakopter | yeah | ||
colomon | pir::defined ? | 00:54 | |
jnthn | That'll work | 00:55 | |
If the thing itself doesn't have a .defined method | |||
diakopter | nqpnet: say(Mu.defined) | ||
p6eval | nqpnet: OUTPUT«0» | ||
tadzik | nqpnet: say(5.defined) | ||
p6eval | nqpnet: OUTPUT«1» | ||
colomon | pir::defined it is. | 00:56 | |
diakopter | nqp: say(pir::defined(Mu)) | ||
p6eval | nqp: OUTPUT«0» | ||
00:59
risou_ joined
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet | 01:00 | |
tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet | |||
01:01
risou left
|
|||
colomon | jnthn: does NQP::Compiler derive from HLL::Compiler? | 01:08 | |
I've got this: $P0 = getattribute nqpproto, '@cmdoptions' | |||
jnthn | colomon: I e^Hbelieve so. | ||
colomon | and given that HLL::Compiler has @!cmdoptions, I need to figure out how to make that line work now. | ||
jnthn | Is NQP::Compiler written in PIR? | 01:09 | |
colomon | yes | ||
at least the bit I'm looking at. | |||
jnthn | ah ... | ||
Yeah | |||
hm | |||
I guess it currently used 6model at the moment. | |||
er | |||
colomon | oh, duh, 'parent'=>'HLL::Compiler' | ||
jnthn | P6object sorry | ||
Yeah, but that's using P6object, not 6model. | |||
01:11
mikehh joined
|
|||
dalek | odel: 6fd5926 | jonathan++ | dotnet/compiler/NQPOptimizer.pm: [dotnet] Stub in an NQP Optimizer. Only one optimization at the moment, which strips off return handlers from routines if they're never used (something we can statically detect in NQP). |
01:13 | |
odel: a6d8d72 | jonathan++ | dotnet/compiler/ (2 files): [dotnet] Add building of NQP optimizer to the Makefile. Currently all the stuff to use it in compile.pir is commented out though - if you want to test it, uncomment the three commented lines in this patch. At some point it should become a -O flag. |
|||
sorear | you mean you don't have a zero not taken overhead implementation of exceptions? | 01:14 | |
jnthn | sorear: They don't incur a runtime cost. | ||
sorear: They do bloat the DLL a little. | 01:15 | ||
sorear | ...dll? | ||
jnthn | sorear: Perhaps more than they really should. I was mostly after an easy first optimization to implement. :) | ||
sorear: As in, the generated code. | |||
sorear | ah. | ||
you can generate dlls now? | 01:16 | ||
sorear is scared... the comptetion is catching up! | |||
jnthn | sorear: Calm down :P | 01:18 | |
sorear: You're running STD. :) | 01:19 | ||
dalek | ecza: c0b78fe | sorear++ | v6/tryfile: Optimize canonicalize_name a bit |
01:25 | |
ecza: fe1de1e | sorear++ | docs/lhf.txt: Add another LHF |
|||
colomon is trying to find examples of source where PIR accesses attributes to steal... | 01:29 | ||
01:40
justatheory left
01:48
solarion left,
solarion joined
|
|||
dalek | odel: 361ec9a | jonathan++ | dotnet/compiler/PAST2DNSTCompiler.pm: [dotnet] Implement vivislef for PAST::Var register nodes. |
01:54 | |
02:01
Sarten-X joined
|
|||
dalek | odel: a7baae0 | jonathan++ | dotnet/compiler/NQPOptimizer.pm: [dotnet] Quick and dirty experimental optimization that demotes lexical to locals in a few places (so their storage slot goes on the stack and is instantly to hand). Again, optimizer not enabled by default. |
02:02 | |
takadonet | what is the url for the rakudo stat benchmarks? | 02:05 | |
jnthn | sleep, night | 02:06 | |
02:10
nymacro joined
02:14
linuxas joined
|
|||
lichtkind | jnthn: good night | 02:15 | |
02:15
takadonet left
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet | 02:15 | |
02:16
envi joined
02:24
risou_ left
02:26
risou joined
02:35
ch3ck3r joined
02:38
ch3ck left,
nym joined
02:39
kanishka joined
02:40
nymacro left
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ign_tablet | 02:42 | |
02:53
kanishka left
02:54
kanishka joined,
kanishka left
02:56
am0c left
02:57
rgrau` left
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ign_tablet | 02:59 | |
tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....lta_tablet | |||
lichtkind | TimToady: please tell me if anything is missing , thanks www.perlfoundation.org/perl6/index....ign_tablet | 03:00 | |
03:06
meppl left
03:15
Guest28409 joined
03:25
cwo_pengen_Gtuan joined
|
|||
cwo_pengen_Gtuan | bots www.1filesharing.com/download/1JWQU....3.1_5.rar | 03:25 | |
03:25
cwo_pengen_Gtuan left
|
|||
zibri | ... | 03:25 | |
diakopter | yeah | 03:28 | |
03:30
obsd123 joined
03:32
nadim left
03:41
obsd123 left
03:42
Guest28409 left,
lichtkind left,
ch3ck3r left
03:55
nym left
03:56
nymacro joined
03:59
risou_ joined
04:01
risou left
04:16
nymacro left
04:23
MindosCheng joined
04:27
Bzek joined
04:30
Bzek_ left
04:35
sunnavy left,
frooh left
04:38
kanishka joined
04:39
justatheory joined
04:48
ch3ck joined,
ch3ck left
04:56
_xiaomo_ joined,
_xiaomo_ left
|
|||
dalek | odel: 33cf495 | diakopter++ | / (2 files): [dotnet] port another coupla hundred .pir lines from Cursor.pir |
04:59 | |
odel: 0b3a6ad | diakopter++ | dotnet/compiler/ (2 files): Merge branch 'master' of github.com:jnthn/6model |
|||
05:00
risou joined
05:04
risou_ left
|
|||
dalek | odel: 05db157 | diakopter++ | common/NQP/P6Objects.pm: [P6Objects] oh look, that's all the Cursor we need at the moment. |
05:09 | |
05:30
TheHarlot left
05:37
Limbic_Region left
|
|||
dalek | ecza: 8b8035d | diakopter++ | docs/lhf.txt: test commit; plz ignore! |
05:39 | |
diakopter | whee | ||
sorear: let's say I wanted to make a test (from roast) pass (that currently doesn't).. where in roast might be a good place to start looking around | 05:42 | ||
(assume I've already read lhf.txt) | 05:43 | ||
dalek | ecza: 817a4ee | sorear++ | docs/tracing.pod: Add documentation for NIECZA_* knobs |
05:45 | |
sorear | S02, S03, S05, S32 | 05:46 | |
diakopter | anything more specific? :P | 05:47 | |
05:52
sunnavy joined
|
|||
sorear | Not without myself looking | 05:52 | |
dalek | ecza: e11286c | sorear++ | docs/lhf.txt: LHF item for VS/csc.exe integration |
05:54 | |
sorear | I looked into running tests from roast a long time ago, but stopped when I realized how dependant on &eval it was | 05:55 | |
diakopter | oh :( | 05:58 | |
05:59
alester joined
|
|||
diakopter | I realized with surprise I finished porting the barebones of Cursor.pir | 05:59 | |
sorear | I suppose in theory I could write an &eval that always returns Nil, and stub &eval_lives_ok / &eval_dies_ok to ok NN - MMM # SKIP - No eval | ||
06:00
kanishka left
|
|||
diakopter | for nqpnet regexes, now I "just" need to compile the proper PAST nodes... | 06:03 | |
06:04
ch3ck joined
|
|||
sorear | perl6: say Match ~~ Cool | 06:08 | |
p6eval | rakudo : OUTPUT«1» | ||
..pugs: OUTPUT«*** No such subroutine: "&Cool" at /tmp/37mTTtm7kF line 1, column 5 - line 2, column 1» | |||
06:10
sunnavy left
06:14
sunnavy joined
|
|||
sorear | buubot: eval substr("hello", -2, 4) | 06:16 | |
buubot | sorear: lo | ||
diakopter | buubot: eval substr("hello", -2, 4) | 06:17 | |
buubot | diakopter: lo | ||
diakopter | buubot: eval substr("hello", -2, -1) | ||
buubot | diakopter: l | ||
diakopter | buubot: eval substr("hello", -2, -3) | 06:18 | |
buubot | diakopter: No output. | ||
diakopter | buubot: eval substr("hello", -2, -0) | ||
buubot | diakopter: No output. | ||
diakopter | buubot: eval substr("hello", -2, 0) | ||
buubot | diakopter: No output. | ||
diakopter | buubot: eval substr("hello", -2, 3) | ||
buubot | diakopter: lo | ||
diakopter | buubot: eval substr("hello", -2, 2) | ||
buubot | diakopter: lo | ||
diakopter | oh buubot | ||
06:19
kanishka joined
06:21
_twitch joined
06:22
hdanak joined
|
|||
sorear | buubot is perl 5 | 06:23 | |
buubot | sorear: No factoid found. Did you mean one of these: [is broken and horrble and not real buu and outdated and bless and overload] [is broken. until he] [is perl, Svadilfari] | ||
sorear | um, wow | 06:25 | |
S32-str/substr.t | |||
Perl 6 had scalarrefs ever? there are some ancient fossils here | 06:26 | ||
06:26
TheHarlot joined
06:33
kanishka left
06:37
hdanak left
|
|||
dalek | ecs: cf529a7 | sorear++ | S (13 files): Update provenance blurbs to point at GitHub |
06:47 | |
diakopter | buubot: buubot? | 06:57 | |
buubot | diakopter: buubot is buubot is buubot is buubot is buubot is buubot is cheesecake | ||
diakopter | buubot: what is buubot? | 06:58 | |
buubot | diakopter: Stored what is buubot? | ||
diakopter | buubot: what?? | ||
buubot | diakopter: what is buubot? | ||
diakopter | buubot: what? | ||
buubot | diakopter: what is buubot? | ||
diakopter | buubot: ?what? | ||
buubot | diakopter: what is buubot? | ||
diakopter | buubot: tickle | ||
buubot | diakopter: Couldn't match input. | ||
diakopter | buubot: tcl | ||
buubot | diakopter: Couldn't match input. | ||
07:31
Chillance left
07:57
MilLionsOfLions left
08:04
Axius joined
08:15
whiteknight joined,
Eevee left
08:17
neroxx joined
08:29
Axius left
08:32
neroxx left
08:33
Eevee joined
08:36
Axius joined
|
|||
dalek | ecza: 04e4b93 | sorear++ | lib/SAFE.setting: Match should be Cool |
08:48 | |
ecza: 2a5333e | sorear++ | / (3 files): Implement lax substr() |
|||
ecza: 32bfe5c | sorear++ | v6/tryfile: [v6] stub in lookup_dynvar and check_old_cclass |
08:57 | ||
09:02
risou_ joined
09:03
risou left
09:08
justatheory left
09:11
lamstyle joined
09:17
masonkramer_ joined,
masonkramer left,
masonkramer_ is now known as masonkramer
09:50
teslos left
09:56
am0c joined
|
|||
tadzik | I've been thinking about the dispatching with grammars idea. gist.github.com/708292 -- any idea how could I reach the Request object from inside the grammar actions here? I was expecting to see it in Match.orig, but no luck | 09:59 | |
moritz_ | tadzik: put it in a contextual | 10:02 | |
tadzik | moritz_: contextual? | ||
moritz_ | my $*REQUEST | 10:03 | |
tadzik | wouldn't that mean a global variable? | ||
or do I need to read about twigils again? :) | 10:04 | ||
moritz_ | not global, only accessible in the lexical and dynamic scope | 10:07 | |
tadzik | oh, cool | 10:09 | |
moritz_++; Any idea how can I fix the method TOP madness in this example? | 10:11 | ||
10:15
snearch joined
|
|||
diakopter | WOW | 10:18 | |
cpanm STD | |||
crazy fast | 10:19 | ||
tadzik | hmm, I think something in Rakudo is lying | 10:42 | |
wklej.org/id/423204/ | |||
am I missing something? | |||
10:55
mavrc joined
10:56
MayDaniel joined
|
|||
moritz_ | tadzik: $/.values.[0] | 10:59 | |
tadzik | that works. But thy is it so? | 11:00 | |
11:11
muixirt joined
11:22
Axius left
|
|||
moritz_ | tadzik: $/ is like an array and a hash combined. $/.values returns all captures. Since you have only one, $/.values.[0] returns the only capture | 11:37 | |
11:49
lambdabot joined
11:52
wamba joined,
kjeldahl joined
12:01
MayDaniel left
12:17
rgrau_ joined
|
|||
frettled | Good (*looks at time*) eh, afternoon. | 12:24 | |
moritz_ | good now, frettled | ||
frettled | good one :D | ||
moritz_: Hvordan går det med norsken? | |||
moritz_ | frettled: Det går bra, takk | 12:25 | |
frettled | \o/ | ||
moritz_ | Men studere norks er vanskelig, og går langsom | 12:26 | |
*norsk | |||
12:28
wamba left
12:29
orafu left,
orafu joined
|
|||
frettled | Det er ikke så rart. Selv om det er et germansk språk, så er det flere signifikante forskjeller. (In English: moritz_ says that studying Norwegian is hard and slow. Literal-ish translation of my response: That's not so strange. Even though it's a germanic language, there are several significant differences. | 12:30 | |
We can't just pile up all the verbs at the end of the sentence. ;) | 12:31 | ||
moritz_ | that's actually a good restriction | ||
muixirt | moritz_: regarding the global shift of power you better learn Chinese :-) | 12:36 | |
12:36
wamba joined
|
|||
moritz_ | muixirt: my motivation is quite local :-) | 12:36 | |
muixirt: my wife is half Norwegian, and wants to our soon-to-be child to be raised with two languages | 12:37 | ||
so I'd better learn bokmål if I want to understand my wife and daughter talking to each other :-) | |||
12:38
MayDaniel joined,
redicaps joined
|
|||
muixirt | moritz_: are you hidding the fact you learn Norwegian? :-) | 12:40 | |
moritz_ | hiding? no, what makes you think so? | 12:41 | |
muixirt | *from your wife | ||
moritz_ | not at all | ||
she reviews my vocabulary lists so that I don't have any mitakes sneaking in | |||
frettled | He blogged about it a few weeks ago. | ||
moritz_: feel free to abuse me | 12:42 | ||
moritz_ | takk :-) | 12:44 | |
frettled | Vel bekomme. | 12:45 | |
moritz_ fights with postgres | 12:46 | ||
fun | 12:52 | ||
with Debian, the default connection method is local sockets | |||
erm, I mean pipes, or however it's implemented | 12:53 | ||
flussence | "file thingy on disk that shows up as a different colour in ls"? | ||
moritz_ | but login only works if I specify localhost as hostname, thus using TCP | ||
frettled: correct :-) | |||
flussence | s/<Tab>/<Tab><Tab>/ :) | ||
moritz_ | argl :-) | ||
12:54
kanishka joined
|
|||
moritz_ really must learn to type at least two characters before pressing tab :-) | 12:54 | ||
frettled | hee-hee | ||
moritz_ | even tim<tab> isn't uniq | ||
flussence | the socket file/port thing slips me up too, not just on pgsql :) | ||
frettled | moritz_: I think it's default in pgsql, not necessarily Debian-specific. MySQL has that choice, too. | 12:55 | |
It's an assumption I often see in software design: that you run your software locally, that you're root or at least have the machine (virtual or not) for yourself. | |||
moritz_ | frettled: might very well be the case, I've just learned to be careful to say "$software does $thing by default" when there's a distribution involved too :-) | 12:56 | |
frettled | Sensible. | ||
I'm not always so sensible, but I often catch myself and add «with $distribution» afterwards :D | 12:57 | ||
jnthn | o/ #perl6 | 13:11 | |
13:17
icwiener joined
|
|||
jnthn | diakopter: Wow...just read through the ported Cursor. :) | 13:17 | |
diakopter++ | |||
13:18
lichtkind joined
|
|||
lichtkind | TimToady: please tell me if anything is missing , thanks www.perlfoundation.org/perl6/index....ign_tablet | 13:18 | |
sorry dup | |||
13:20
mavrc left,
meppl joined,
mavrc joined
13:22
Patterner left
13:34
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
MindosCheng | \o #perl6 | 13:36 | |
13:37
nymacro joined
|
|||
lichtkind | hi MindosCheng | 13:52 | |
13:58
nymacro left
|
|||
MindosCheng | Hi lichtkind | 14:00 | |
lichtkind | can i help you? | ||
MindosCheng | Just waiting exciting discussion take place. | 14:03 | |
14:03
risou_ left,
risou joined,
agentzh joined
|
|||
lichtkind | MindosCheng: about what topic? | 14:04 | |
MindosCheng | lichtkind: Perl6... | ||
lichtkind | shure i mean a special implementation or syntax or STD or wiki, docs tests | 14:05 | |
you could even help me write some docs :) | |||
or check if my latest stuff is readable | 14:06 | ||
MindosCheng | lichtkind: I am still busy on some other things. So just hanging around the channel first. | 14:08 | |
lichtkind | MindosCheng: so your lucky i just push into people to get knowledge out :) | 14:17 | |
MindosCheng | :P | 14:18 | |
lichtkind: Need to teach JavaScript tomorrow, really panic. | 14:21 | ||
lichtkind | thats easy i teach nearly every day: most important thing is to stay relaxed and in control of the situation | ||
just have ineugh stuff to get through half an our the rest will develope from that | 14:22 | ||
MindosCheng | lichtkind: I will try them, thanks. | 14:23 | |
Using the slides from Crockford. | 14:24 | ||
14:25
mssm joined
|
|||
lichtkind | MindosCheng: and also important is that you like the people you talk to, let this guide you it makes it much easier for both and you dont have to hide behind knowledge | 14:25 | |
MindosCheng | lichtkind: Got it. | 14:27 | |
lichtkind | so you know all the secrets :) | 14:28 | |
MindosCheng | lichtkind: Wow~ | 14:30 | |
lichtkind: I will try to keep them in mind tomorrow. | 14:33 | ||
14:33
dual left
|
|||
lichtkind | just relax, it will be fine :) people are very forgiving if your open | 14:34 | |
MindosCheng | lichtkind: I see. | 14:36 | |
14:38
muixirt left
14:56
cognominal left
14:57
cognominal joined
15:03
risou_ joined
15:04
risou left
15:12
am0c left
15:17
sftp left
15:20
takadonet joined
15:27
linuxas left
15:29
sftp joined
15:32
sftp left
15:34
redicaps left
15:35
zby_home_ joined,
sftp joined
15:36
ashleydev joined
15:37
kjeldahl_ joined
15:42
mikehh left
15:43
dual joined
15:50
jdv79 joined
15:52
agentzh left
15:54
frew joined,
alester left
16:04
risou joined
16:06
risou_ left
16:12
TimToady left
16:18
takadonet left,
cognominal left
16:19
Axius joined
16:20
cognominal joined
16:26
timbunce joined
16:27
Teratogen is now known as AngryHoneyBadger
16:28
AngryHoneyBadger is now known as Teratogen
|
|||
cosimo | oh hai #perl6 | 16:36 | |
Trashlord | how's it going | 16:37 | |
cosimo | great | 16:38 | |
jnthn | o/ cosimo | 16:40 | |
tadzik | hello | 16:44 | |
moritz_: I was confused that it's a Match object but its methods do not work as expected | 16:46 | ||
16:51
mila__ joined
16:55
mila_ left
16:57
jonasbn joined
17:04
nadim joined
17:05
Axius left
|
|||
cosimo | rakudo: class c { method m { say "Hello" } }; c.m(); | 17:11 | |
p6eval | rakudo : OUTPUT«Hello» | ||
cosimo | rakudo: class c { method m { say "Hello" } }; c.new.m(); | ||
p6eval | rakudo : OUTPUT«Hello» | ||
17:14
timbunce left
|
|||
cosimo | I noticed I can do 'if self { #method } else { #static }' | 17:14 | |
is that right? | |||
or the "proper" way to do it? | |||
oha | i thought a method could only be invoked on an instance :( | 17:16 | |
jnthn | cosimo: Yes, it works because boolifications falls back to definedness and type objects are undefined. | 17:17 | |
if self.defined ... is a bit more robust. | |||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet | 17:20 | |
lichtkind | pick (:replace) is renamed to roll, is that correct? | ||
17:20
timbunce joined
|
|||
tadzik | yes | 17:22 | |
lichtkind | Rakudo REPL++ | ||
tadzik: thanks | |||
except the repl dont support basic deletem insert and cursor navigation | 17:23 | ||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet | 17:25 | |
17:27
justatheory joined
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ock_tablet | 17:30 | |
tadzik | lol, I blogged! ttjjss.wordpress.com/2010/11/21/per...r-parsing/ | 17:32 | |
17:32
sftp left
17:35
whiteknight left
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index...._io_tablet | 17:36 | |
tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....tor_tablet | |||
tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....oop_tablet | |||
17:37
TimToady joined
17:41
mssm left
17:47
risou left
17:50
Trashlord left
17:51
Trashlord joined
18:00
_twitch left
18:02
wamba left
18:03
_kaare joined
18:08
rgrau_ left
18:17
sftp joined
18:31
mavrc left
18:40
mavrc joined
18:51
punkish joined
|
|||
punkish | hi all... make perl6 failed on my MacBook. Any suggestions? | 18:51 | |
following error -- "ld: pointer in read-only segment not allowed in slidable image, used in ___gmpn_divexact_1 from /usr/local/lib/libgmp.a(dive_1.o)" | 18:52 | ||
18:53
HarryS joined
|
|||
tadzik | were you building it before, is it possible that you have some object files lying around? | 18:55 | |
I assume by perl6 you mean Rakudo | |||
punkish | yes, I mean Rakudo | 18:57 | |
if I have object files "lying around," where would they be? I had installed Rakudo successfully a long while back, so I actually deleted that directory and started fresh | 18:58 | ||
all traces of the previous instance should have vanished with the removal of the entire directory | |||
I have gcc 4.2.1 (Mac OS X 10.6.5) and a custom installed Perl 5.12.1 in /usr/local/bin | 18:59 | ||
tadzik | I see | 19:00 | |
no idea, I never worked on macosx. Which Rakudo is it? | 19:02 | ||
punkish | the latest | 19:10 | |
just git cloned it | 19:11 | ||
don't know what /usr/local/bin/libgmp.a | |||
GNU Multiple Precision Math library... wonder where that came from? | 19:14 | ||
tadzik | I think Parrot makes use of that, if available | 19:15 | |
punkish | interesting... I renamed libgmp.a to libgmp.bak.a and now it configured successfully | 19:21 | |
am 'make'ing. Let's see what happens | |||
I guess I should report wherever (to whomever) appropriate that configure fails with libgmp.a | 19:22 | ||
I must installed GMP when installing the various dependencies for PDL (Perl Data Language) | 19:23 | ||
hopefully, if Rakudo makes successfully, I can rename my libgmp.a back to normal and things will be ok. | 19:24 | ||
19:26
envi left
|
|||
tadzik | did it fail during Configure.pl --gen-parrot? | 19:33 | |
diakopter | jnthn: yeah there might be another way to represent those Cursor "frames" | 19:36 | |
19:45
timbunce left,
punkish left
19:51
timbunce joined
20:02
icwiener_ joined
20:03
ch3ck left
|
|||
dalek | odel: 50b66ab | jonathan++ | dotnet/ (2 files): [dotnet] Fix package declarations with multiple namespace parts. |
20:03 | |
20:03
molaf joined
20:04
MayDaniel left,
icwiener left
|
|||
moritz_ | www.perlmonks.org/?node_id=872809 | 20:05 | |
20:05
whiteknight joined
|
|||
dalek | href="https://perl6.org:">perl6.org: c2e3bcd | (Tadeusz Sośnierz)++ | source/community/index.html: Small typo fix |
20:11 | |
20:12
sftp left
|
|||
dalek | odel: 9ae5e09 | jonathan++ | t/nqp/28-subclass.t: [t] Tests for multi-part namespaces and inheritance. |
20:14 | |
20:15
sftp joined
20:35
lichtkind left
|
|||
diakopter | sorear: eval of test.pl takes 58s (linux) | 20:36 | |
20:36
sftp left
|
|||
dalek | osystem: 14375eb | (Cosimo Streppone)++ | projects.list: Added my rewrite of Ruby Facter in Perl6 |
20:39 | |
diakopter | jnthn: how would I get parrot compile.pir to emit the past | 20:43 | |
I guess I can just use parrot-nqp | |||
k nm | |||
jnthn | yeah, that's easiest way for now. | 20:44 | |
I didn't change any of the regex past generation. | |||
diakopter | looks like it's set up to vivify regexes into the Regex namespace | 20:45 | |
er, install | |||
20:47
takadonet joined
|
|||
takadonet | o/ | 20:47 | |
diakopter | hi | ||
20:49
molaf left
|
|||
jnthn | diakopter: Ah...I suspect that installing them - for grammars - will need to look different in JnthnNQP. (more) | 20:50 | |
It'll need to be a bit like method_def | |||
e.g. call .^add_method on the current meta-object. | 20:51 | ||
20:52
HarryS left
20:55
rgrau_ joined
|
|||
diakopter | jnthn: while compiling, it'll need to have a lot of the same scaffolding as dnst_for(PAST::Block), to account for nested regex literals | 20:59 | |
sorear | good * #perl6 | 21:00 | |
diakopter | hi | ||
jnthn | diakopter: Typically, a PAST::Regex lives inside a PAST::Block. | ||
diakopter: It doesn't imply a block in its own right, iirc. | 21:01 | ||
o/ sorear | |||
diakopter | right, but it needs to track the cursor constructors | ||
jnthn | diakopter: So there shouldn't be any need to re-invent that. | ||
Ah, true | |||
diakopter: What are you looking at the PAST for at the moment, ooc? | 21:02 | ||
(what snippet of nqp source...) | |||
diakopter | "hi"~~/h/ | ||
jnthn | ah... | 21:03 | |
diakopter | I mean, does parrot-nqp support nested regex literals? | ||
regexes in code blocks | |||
jnthn | I *think* it does. | 21:04 | |
Or at least, I'd be surprised if not... | |||
diakopter | k | 21:05 | |
jnthn | nqp: say("hi" ~~ /h { say("xy" ~~ /x/) }/) | ||
p6eval | nqp: OUTPUT«xh» | ||
jnthn | diakopter: Like that? | ||
diakopter | yeah | 21:06 | |
ok | |||
jnthn | The PAST::Var node is looking up Regex::Regex IIUC | 21:08 | |
sorear | I see tadzik and jnthn STILL haven't fixed their CREDITS entries | ||
jnthn | diakopter: Oooh...I see the missing piece. | 21:09 | |
diakopter | it needs some kind of "here's the outer start of a regex" node | 21:10 | |
jnthn | diakopter: Regex::Regex is a type of code object by the looks of it. | ||
diakopter | what snippet of nqp source are you looking at? | 21:11 | |
jnthn | "hi"~~/h/ | ||
diakopter: Easier is to look at /h/ on its own first, I think. | |||
diakopter | no | 21:12 | |
b/c the past generated is quite different | |||
for just the regex node, I think | 21:13 | ||
sorear | 51m 11s 79.48% for last roast run | 21:14 | |
jnthn | diakopter: Hang on, writing some annotated versions of these PAST trees, 'cus it's easier than trying to type it all in IRC. :) | ||
This is where meatspace works best, I can point at bits of tree :) | 21:15 | ||
21:15
zby_home_ left
21:17
masonkramer left
|
|||
jnthn | diakopter: gist.github.com/709162 is /h/ | 21:17 | |
21:17
masonkramer joined
21:18
Teratogen is now known as HowardRoark
21:19
HowardRoark is now known as Teratogen
|
|||
diakopter | I thought scan was used for more than just "create a new cursor and invoke stuff on it" | 21:20 | |
21:21
sftp joined
|
|||
jnthn | diakopter: Looking at the code that compiles it, it doesn't seem to do a huge amount, though just a little more than that... | 21:22 | |
21:23
kjeldahl left
|
|||
jnthn | diakopter: gist.github.com/709170 | 21:28 | |
diakopter: This is "hi" ~~ /h/ | |||
21:28
snearch left
|
|||
jnthn | diakopter: It's mostly confusing because the regex PAST block is referenced in two places in the tree and the dumper only emits one of them and then \past to indicate the reference to the other one. Tried to explain it in the gist. | 21:28 | |
21:30
HarryS joined
21:31
y3llow_ joined
21:32
pothos_ joined
21:34
y3llow left,
pothos left,
y3llow_ is now known as y3llow,
pothos_ left,
pothos joined
|
|||
jnthn | diakopter: I think the reentrancy bit works because as_post (equivalent to PAST2DNST's dnst_for) doesn't really do the regex compilation itself. We only hit one variant of that when we first see a PAST::Regex block. | 21:36 | |
diakopter: It emits the initial prelude and the postlude | |||
diakopter: It delegates to post_regex for the rest (another couple of multis) | |||
One of those wants a PAST::Regex and then does a dynamic dispatch based upon the pasttype | |||
The other one wants anything else, and just calls back to the "normal" PAST compiler, e.g. dnst_for | 21:37 | ||
So if a nested PAST::Regex is encountered within it, we land back in the candidate that does the prelude/postlude again | |||
So no, it's not all in scan. | |||
diakopter | so a concat node will need to know whether its immediate parent is a regex node | 21:38 | |
jnthn | No. (more) | 21:39 | |
our multi dnst_for(PAST::Regex $r) { ...emit prelude... dnst_regex($r) ...emit postlude }; multi dnst_regex(PAST::Regex $r) { ... }; multi dnst_regex(PAST::Node $n) { dnst_for($n) } | 21:40 | ||
It's two sets of mutually recursive multis, but when we go between one set and the other it's the compilation boundary between regex land and non-regex land. | 21:41 | ||
So every time you hit dnst_for(PAST::Regex $r) you know that it's the entry point to compile a new regex. | |||
diakopter | hm | ||
jnthn | Note that when inside a PAST::Regex node and needing to compile its children, dnst_regex would be called | 21:42 | |
Not dnst_for | |||
diakopter | yeah | ||
that seems a good plan | |||
jnthn | concat itself is really noddy :) | ||
github.com/perl6/nqp-rx/blob/maste...x.pir#L620 | |||
Pretty much the regex version of PAST::Stmts - just compile each thing inside of it. | 21:43 | ||
diakopter | yes | ||
21:44
jonasbn left
|
|||
jnthn | diakopter: Plan to go relax and ready for a bit...any more questions before I disappear? | 21:45 | |
s/ready/read/ | |||
diakopter | nopr | ||
thanks! | |||
jnthn | :) | 21:47 | |
21:50
bluescreen joined
21:51
bluescreen is now known as Guest54531
|
|||
perigrin | w/ 23 | 22:01 | |
22:01
pochi_ left
22:04
kjeldahl_ left
22:05
pochi joined
22:16
risou joined
22:19
pochi left
|
|||
diakopter | ಠJಠ | 22:21 | |
22:23
masonkramer left
22:29
oha left
22:30
_kaare left
22:33
lichtkind joined,
sftp left
22:35
timbunce left
22:36
sftp joined,
whiteknight left
|
|||
sorear | making 10000000.0 use the constant pool brings ctxmark down to .63us | 22:47 | |
23:05
pochi joined
23:16
pochi left
|
|||
lue | ohai o/ | 23:22 | |
.u ಠ | |||
phenny | U+0CA0 KANNADA LETTER TTHA (ಠ) | ||
23:25
pochi joined
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet | 23:31 | |
lue | for tpfwiki dalek messages, why not use the edit summary as the commit message? [or is the wiki software too cool for edit summaries like the ones in MediaWiki?] | 23:34 | |
23:35
whiteknight joined
|
|||
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet | 23:37 | |
sorear | lue: There are no edit summaries | 23:38 | |
23:38
icwiener_ left
|
|||
diakopter | dalek could identify the latest revision # and query the wiki for a diff between the two revisions, and report some sort of measure from the result of that query | 23:40 | |
lue | .oO( if $changedlines < 5 { say "A little happened."; } elsif 5 < $changedliens < 50 { say "A fair bit happened"; } else { say "a whole bunch happened" }; |
23:42 | |
23:43
takadonet left
23:46
flatwhatson joined
|
|||
sorear | lue: 5 lines is a whole bunch | 23:51 | |
dalek | tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....ble_tablet | 23:53 |