pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, smop: etc.) || We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/ Set by TimToady on 25 January 2008. |
|||
00:01
apeiron left
00:12
ujwalic left
00:13
Khisanth left
00:14
Khisanth joined
00:25
cmarcelo left
00:39
vixey left
00:50
Limbic_Region joined
00:53
bacek_ left
00:59
bacek_ joined
01:10
bacek__ joined,
meteorjay joined
|
|||
rakudo_svn | r29134 | pmichaud++ | [rakudo]: Make tools/test_summary.pl summarize TODO results also | 01:11 | |
01:13
cj left
|
|||
rakudo_svn | r29135 | pmichaud++ | [rakudo]: Get empty subs to properly return undef | 01:13 | |
r29135 | pmichaud++ | * Refactor 'undef' to be a named_0ary | |||
r29135 | pmichaud++ | * Clean up routine_declarator a bit | |||
01:20
bacek_ left
01:26
cj joined
01:27
bacek_ joined
01:34
Coleoid left
01:36
bacek__ left
01:40
PZt joined
02:16
kanru left
|
|||
rakudo_svn | r29143 | pmichaud++ | [rakudo]: Make 'return' with no arguments work for now. (RT #56638, masak++ ) | 02:18 | |
r29143 | pmichaud++ | * Patch courtesy "Carl M?\195?\164sak" [email@hidden.address] | |||
r29143 | pmichaud++ | * See also note in ticket regarding proper return value. | |||
02:31
araujo left
|
|||
pugs_svn | r21263 | cjfields++ | add two tests for complement, squash with many-many array match | 02:31 | |
02:37
araujo joined
02:55
kanru joined
02:57
redicaps joined
02:58
Limbic_Region left
03:12
apeiron_ is now known as apeiron,
nothingmuch left
03:35
redicaps left
03:37
wknight8111 left
03:39
jhorwitz left
03:56
PZt left
03:57
PZt joined
04:14
sri_work joined
|
|||
speckbot | r14557 | larry++ | Clarify the role of whitespace within transliterations | 04:34 | |
r14557 | larry++ | Power up transliterations with regexes and closures | |||
r14557 | larry++ | Formally define the implied alternation as equivalent to longest-token matching | |||
04:43
cjfields joined,
cjfields left
|
|||
speckbot | r14558 | larry++ | more clarifications and remember to thank cjfields++ this time :) | 04:44 | |
04:59
Lorn left
|
|||
pmichaud | pugs: say \(3); | 05:14 | |
p6eval | pugs: OUTPUT[CaptSub {c_feeds = [:MkFeed {f_positionals = [:IFinite 3:], f_nameds = []}:]}ā¤] | ||
pmichaud | pugs: say \3; | ||
p6eval | pugs: OUTPUT[3ā¤] | ||
spinclad | .oO { so what kind of smiley is ]}:]} ? } | 05:15 | |
pmichaud | pugs: say \(3,4) | ||
p6eval | pugs: OUTPUT[CaptSub {c_feeds = [:MkFeed {f_positionals = [:IFinite 3,IFinite 4:], f_nameds = []}:]}ā¤] | ||
pmichaud | pugs: my @a = 1,2; say \@; | ||
p6eval | pugs: OUTPUT[*** ā¤ Unexpected ";"ā¤ expecting "@" or "::"ā¤ at /tmp/0UMUuTt5Vi line 1, column 21ā¤] | ||
pmichaud | pugs: my @a = 1,2; say \@a; | ||
p6eval | pugs: OUTPUT[1 2ā¤] | ||
pmichaud | pugs: my @a = 1,2; say \(@a); | 05:16 | |
p6eval | pugs: OUTPUT[CaptSub {c_feeds = [:MkFeed {f_positionals = [:VList [VInt 1,VInt 2]:], f_nameds = []}:]}ā¤] | ||
05:28
baest joined
05:29
Psyche^ joined
05:45
Patterner left,
Psyche^ is now known as Patterner
05:52
justatheory left,
justatheory joined
|
|||
rakudo_svn | r29145 | pmichaud++ | [rakudo]: Refactor Perl6Capture to use Capture_PIR, implement prefix:<\\> | 05:56 | |
r29145 | pmichaud++ | * This implementation is almost certainly buggy, but it's a start. | |||
r29145 | pmichaud++ | * Partially addresses RT #56684 (moritz++) | |||
06:04
tuxdna joined
|
|||
rakudo_svn | r29146 | pmichaud++ | [rakudo]: More updates to empty 'return', RT #56638 | 06:14 | |
r29146 | pmichaud++ | * Based on comments from TimToady++ | |||
06:24
ashizawa joined,
penk joined
06:32
Auzon1 joined,
Auzon left
06:39
cls_bsd joined
06:55
PZt left
06:57
PZt joined
07:02
cls_bsd left
07:05
justatheory left
07:14
apeiron_ joined
07:21
apeiron left
07:44
barney joined
08:08
iblechbot joined
08:17
stevan_ left
08:18
wknight8111 joined
08:22
barney left
08:30
dogmatrix joined
08:34
jferrero joined
|
|||
moritz_ | rakudo: say \3 | 08:42 | |
p6eval | rakudo 29147: OUTPUT[3ā¤] | ||
moritz_ | my @list = 1, 2, \(3, 4); say @list.perl | ||
rakudo: my @list = 1, 2, \(3, 4); say @list.perl | |||
p6eval | rakudo 29147: OUTPUT[[1, 2, {}]ā¤] | 08:43 | |
08:46
elmex joined
|
|||
bacek_ | pugs: my @array = <a b c>; my $ref = \@array; say ~$ref; say +$ref; | 08:50 | |
p6eval | pugs: OUTPUT[a b cā¤3ā¤] | ||
bacek_ | rakudo: my @array = <a b c>; my $ref = \@array; say ~$ref; say +$ref; | ||
p6eval | rakudo 29147: OUTPUT[a b cā¤0ā¤] | ||
bacek_ | moritz_: this is one of tests that failing... | ||
08:56
bacek_ left
|
|||
moritz_ | rakudo: eval '$x' | 09:02 | |
p6eval | rakudo 29147: OUTPUT[Scope not found for PAST::Var '$x'ā¤current instr.: 'parrot;PCT::HLLCompiler;panic' pc 156 (src/PCT/HLLCompiler.pir:103)ā¤] | ||
09:02
dogmatrix left
|
|||
moritz_ | rakudo: eval '$x'; say 1 | 09:02 | |
p6eval | rakudo 29147: OUTPUT[Scope not found for PAST::Var '$x'ā¤current instr.: 'parrot;PCT::HLLCompiler;panic' pc 156 (src/PCT/HLLCompiler.pir:103)ā¤] | ||
09:18
cognominal_ joined
09:26
p6eval left,
p6eval joined,
chris2 joined
09:27
penk left,
penk joined
09:47
wknight8111 left
09:55
meppl joined
|
|||
rakudo_svn | r29148 | moritz++ | [rakudo] fix RT #56692 (eval doesn't catch compilation errors). | 10:08 | |
r29148 | moritz++ | Patch curtesy of bacek++ | |||
10:09
ruoso left
10:15
meppl left
10:27
iblechbot left
10:30
meppl joined
|
|||
pugs_svn | r21264 | bacek++ | [spec] unfudge more tests for rakudo in S02-builtin_data_types/flattening.t | 10:30 | |
10:33
jan_ left
11:00
jan_ joined
11:08
pbuetow joined
|
|||
pugs_svn | r21265 | moritz++ | [spec] fudge array.t to not produce passing TODO tests. Silly but convenient. | 11:14 | |
11:39
r0bby left
11:49
ruoso joined
11:51
wknight8111 joined
11:55
penk left
12:01
icwiener joined
|
|||
rakudo_svn | r29150 | jonathan++ | [rakudo] Stub in signatures. This doesn't do anything useful yet, but does lay a lot of groundwork: Signature class is in place, :(...) is now parsed and results in a Signature object, all subs and methods get a Signature object attached (though it's not populated yet) and | 12:09 | |
..some comments explaining what is going on. | |||
pugs_svn | r21266 | ruoso++ | [smop] fixing pmurias++ code. Every object that uses smop_lowlevel should support the DESTROYALL call with the object as capture. When you ask for the invocant of a capture you need to release it later. | 12:12 | |
ruoso | @tell pmurias, I've fixed the mem leak you were having... basically, you had two problems in your code, the first is that you were calling SMOP__NATIVE__capture_invocant and were not SMOP_RELEASE'ing the object later... The second issue is that every object that uses smop_lowlevel needs to support an additional way of calling DESTROYALL with the invocant *AS* the capture itself (this is how I finish the loop to bootstrap the system, but that's something I sho | 12:14 | |
lambdabot | Consider it noted. | ||
ruoso | uld restrict to some cases...)) | ||
btw... pmurias++ (smop hacking :) | 12:15 | ||
@tell pmurias, one additional note is that when some constant identifier is assumed to be used in the core objects, you can declare it in include/smop_identifiers.h and run identifiers2C.pl that will regenerate some C files that initialize that values... | 12:17 | ||
lambdabot | Consider it noted. | ||
12:18
iblechbot joined
12:31
barney joined
12:50
stevan_ joined
12:58
donaldh joined
13:01
cmarcelo joined
13:02
pmurias joined
|
|||
ruoso | pmurias, good morning... | 13:06 | |
pmurias | ruoso: good afternoon | ||
ruoso | 10am here ;) | 13:07 | |
pmurias, have you seen the messages? | |||
or the bot suicided? | |||
;) | |||
pmurias | i read the irc logs | 13:08 | |
13:08
jferrero left
|
|||
ruoso | ah... cool... | 13:08 | |
btw... I'm right now working on removing the need for the non-capture DESTROYALL call for other objects | 13:09 | ||
pmurias | thanks for the fix, i don't think i would have figured it easily | ||
ruoso | yeah... good old refcounting gc ;) | ||
you always forget it somewhere ;) | 13:10 | ||
pmurias | i think i'll implement basic strings, when i sort-of-finish my ajaxy sms sender | 13:14 | |
13:20
drbean joined
|
|||
ruoso | pmurias, ok... you will only need to figure out how the API looks like ;) | 13:20 | |
which I don't really know | |||
pmurias | ruoso: do you know how to convert a string to a utf8 buf? | 13:21 | |
ruoso | libiconv takes care of that... | ||
pmurias | in perl6 | 13:24 | |
ruoso | none of the autoboxings to native types are specified | 13:26 | |
I think TimToady is waiting to see what we come with... | |||
pmurias | you mean unboxings? | 13:27 | |
pugs: 1.int | |||
p6eval | pugs: RESULT[1] | ||
pmurias | pugs: say1.int32 | ||
p6eval | pugs: OUTPUT[*** No such subroutine: "&say1"ā¤ at /tmp/qpRckNzb8q line 1, column 1 - line 2, column 1ā¤] | ||
pmurias | pugs: say.int32 | ||
p6eval | pugs: OUTPUT[ā¤*** No such method in class Bool: "&int32"ā¤ at /tmp/8PE5U5Ppeg line 1, column 1 - line 2, column 1ā¤] | ||
pmurias | ruoso: foo.native_type_name is the smop convention? | 13:28 | |
moritz_ | pmurias: $obj.OtherType coercions are in the specs | ||
pmurias: although it doesn | |||
't specify that all conversions have to be available in this way | 13:29 | ||
ruoso | if that applies to native types also | ||
that's just fine | |||
although I still miss the bytebuf native type in the spec | 13:30 | ||
pmurias | buf is spec | ||
ed | 13:31 | ||
ruoso | buf is a buf of ints | ||
not a buf of bytes | |||
that's a big difference for what you mean... | |||
pmurias is confused by your int/byte destinction | 13:33 | ||
$foo.buf8 is speced *not* to return utf8 | 13:35 | ||
ruoso: what do you mean by a bytebuf? | |||
ruoso | a byte has 8 bits | 13:36 | |
a int has 32 or 64 bits | |||
a bytebuf can be used as a parameter to strcmp | |||
or strncmp | |||
if buf is an array of ints | |||
you won't be able to use it as a regular char* | 13:37 | ||
which is what iconv deals with (iirc) | |||
pmurias | a buf8 is an array of bytes | ||
ruoso | oh... ok | 13:38 | |
I missed that | |||
13:38
jhorwitz joined
|
|||
ruoso | pmurias, one other thing you need to be carefull is how this series of casts are done | 13:40 | |
I mean... | |||
you need some kind of MMD to make it work | |||
(for now you can check if it is one of your known responder interfaces | |||
13:40
nothingmuch joined
|
|||
ruoso | but you probably want to cast them to Str before | 13:40 | |
pmurias | ruoso: i'll check for my string class responder interface | 13:43 | |
13:43
rdice joined
|
|||
ruoso | cool... special casing is the ordinary way of bootstrapping the type system in smop | 13:44 | |
pmurias | as i don't know what the Str->(utf8 buf8) conversion is | ||
ruoso | that's the point | ||
if you receive something different than your known object | |||
you need a sm0p block | |||
that will call .Str | |||
and then | |||
.buf8 | |||
pmurias | no | 13:45 | |
.buf8 dosn't work for utf | |||
ruoso | won't it leave the wide chars as two bytes? | ||
(or as many as needed, actually) | 13:46 | ||
13:47
ashizawa left
|
|||
ruoso | pugs: "Ć”".buf8.length | 13:47 | |
p6eval | pugs: OUTPUT[*** No such method in class Str: "&buf8"ā¤ at /tmp/RF6XQ2Ev7G line 1, column 1 - line 2, column 1ā¤] | ||
ruoso | hm | ||
rakudo: "Ć”".buf8.length | |||
p6eval | rakudo 29151: OUTPUT[Method 'buf8' not found for invocant of class 'Perl6Str'ā¤current instr.: '_block11' pc 21 (EVAL_11:13)ā¤] | ||
pmurias | S02:851 | ||
ruoso | kp6: "Ć”".buf8.length | 13:48 | |
p6eval | kp6 21266: OUTPUT[syntax error at position 9, line 1 column 9:ā¤"Ć”".buf8.lengtā¤ ^ HEREā¤] | ||
ruoso | kp6: ("Ć”".buf8()).length() | ||
p6eval | kp6 21266: OUTPUT[no method 'buf8' in Class 'Str'ā¤ at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 345ā¤ ] | ||
ruoso | hmpf | ||
pmurias | ruoso: seen the spec link? | ||
ruoso | just read it | 13:49 | |
pmurias | ruoso: why are node positions to Capturize relative | ||
ruoso | TimToady, which is the api to convert a Str into a raw array of bytes? | 13:50 | |
pmurias, because at first the frame would only point to the current node | |||
but I changed it later to have the array and a pc | |||
pmurias | ruoso: is it ok if i change it to absolute positions (once labels are in place) | 13:51 | |
? | |||
ruoso | I can't think of a reason against it | 13:52 | |
feel free to do it... just update all the sm0p blocks and the wiki | |||
TimToady, more importantly... which is the api to convert a Str into a *native* array of bytes? | 13:53 | ||
pmurias | is smop_s1p_str the right place for my simple str implementation? | ||
ruoso | yes... that's ok | 13:54 | |
pmurias | TimToady, and what is the right api to convert into utf8 | ||
moritz_ | pmurias: S29, Str.bytes | ||
oh no, that's only the size | 13:55 | ||
ruoso | which is kinda weird | ||
moritz_ | I guess that Str.pack can be abused ;) | ||
well, I guess we'll have a Str.buf($normalization, $encoding) or some such | 13:56 | ||
ruoso | our buf8 multi pack( Str $template, *@items ) | 13:57 | |
that seems to do it | |||
it would be nice to have an additional signature | 14:05 | ||
but actually... | |||
why are all that "sub" instead of "method"? | |||
our buf8 multi method pack() | 14:06 | ||
a pack without template returns the raw stream of bytes | |||
what do you think? | |||
moritz_ | in which encoding and which normalization? The default ones? | 14:07 | |
ruoso | yes... | ||
and the default is implementation-dependant | 14:08 | ||
14:08
donaldh left
14:10
drbean left
|
|||
ruoso | it's important to realise that this is probably only be used for low-level string comparision | 14:10 | |
moritz_ | or for serialization | 14:11 | |
ruoso | yeah... | 14:17 | |
serialization is expected to be implementation-dependent, right? | |||
moritz_ | depends on the kind of serialization, I guess | ||
I expect $anything.perl to give me valid Perl 6 that will work the same way on every implementation | 14:18 | ||
ruoso | yeah... but that will probably be a Str anyway | 14:22 | |
pugs_svn | r21267 | ruoso++ | [smop] only a few types need to receive the non-capture DESTROYALL now... all the others only receive as captures... | 14:31 | |
ruoso | pmurias, the io code can be simplified now | 14:32 | |
pmurias | ruoso: ok | 14:35 | |
pugs_svn | r21268 | ruoso++ | [smop] simplifying smop_s1p_io... no longer supports capture-less destroyall call... | 14:36 | |
ruoso | pmurias, sorry... I went ahead and did it already ;) | ||
pmurias | no problem | 14:37 | |
had a brake from c and the segfaults are eating me... got to fetch valgrind | 14:44 | ||
* break | 14:46 | ||
14:52
icwiener_ joined
|
|||
rakudo_svn | r29152 | jonathan++ | [rakudo] Start to build signature objects. We don't put any types in yet. | 14:56 | |
r29153 | pmichaud++ | [rakudo]: spectest-progress.csv update: 94 files, 1662 passing tests | 15:06 | ||
r29153 | pmichaud++ | * Also add a column with an estimate of the total number of spectests. | |||
15:09
icwiener left,
icwiener_ is now known as icwiener
|
|||
pugs_svn | r21269 | pmurias++ | [smop] ok 1 is printed using io functions, i'll remove the memory leak after a walk or something | 15:12 | |
ruoso | pmurias, I think you forgot to add a file | 15:19 | |
smop_s1p_str | |||
pugs_svn | r21270 | pmurias++ | [smop] removed memory leaks in str and io | 15:22 | |
pmurias | ruoso: sorry | ||
pugs_svn | r21271 | pmurias++ | [smop] add missing file | ||
ruoso | noprob | 15:23 | |
pmurias, you probably want to receive a str** | 15:25 | ||
char** | |||
or better... | |||
make a strncpy inside the create function | 15:26 | ||
because you're making a free of something you didn't alloc | |||
15:29
jfredett_ joined
|
|||
ruoso | pmurias, take a look at idconst.c, where I make something very similar | 15:29 | |
pmurias, specially SMOP__NATIVE__idconst_createn_nolist function | 15:30 | ||
pmurias | ruoso: you can change the api if you want | 15:33 | |
i'll take the much needed walk now | |||
ruoso | pmurias, it's not just about the API... it's about memory management... always try to make the allocs inside the objects... because they are the responsible for the free... | 15:34 | |
ruoso lunch & | 15:35 | ||
rakudo_svn | r29154 | jonathan++ | [rakudo] STD.pm tracking: variable_decl becomes variable_declarator, add declarator and make us able to parse a signature in a declaration. | 15:36 | |
15:44
jfredett left
15:45
icwiener left,
icwiener joined
15:46
jfredett_ is now known as jfredett
15:49
pmurias left,
meppel-san joined
15:50
meppl left
15:56
apeiron_ is now known as apeiron
16:01
cmarcelo left,
kanru left
16:04
pbuetow left
16:09
pbuetow joined
16:13
justatheory joined
16:22
kanru joined
|
|||
pugs_svn | r21272 | lwall++ | [STD] start transition to .pmc forms so names are conserved under Perl 5 | 16:23 | |
r21272 | lwall++ | [STD] also allow for Cat|Dog type constraints | |||
r21273 | lwall++ | some renamings to go with the previous revision | 16:25 | ||
r21274 | lwall++ | more name tweakage | 16:27 | ||
r21275 | lwall++ | [STD5_dump_match] s/STD5/STD/ here too | 16:31 | ||
r21276 | lwall++ | more renaming | 16:36 | ||
r21277 | lwall++ | more renaming | |||
pmichaud | could someone take a look at S02-literals/autoref.t:51 ? those tests look a bit odd to me. | 16:41 | |
in particular, I'm wondering if \%hash is equivalent to \(%hash), and what that implies for the .values method | |||
bbl | |||
16:44
nipotaway is now known as nipotan
16:50
tuxdna left
17:03
sri_work_ joined
|
|||
rakudo_svn | r29158 | jonathan++ | [rakudo] Start making signatures in variable declarations work. While more work is needed to make this more general, my ($a, $b); will now declare both $a and $b. | 17:07 | |
moritz_ | jonathan++ indeed | 17:08 | |
17:10
sri_work left
17:11
meppel-san left
17:12
meppel-san joined,
meppel-san is now known as meppl
17:17
jferrero joined
17:21
pmurias joined
|
|||
japhb | Anyone know when this year's State of the Onion will be given? A friend of mine will be doing OSCON for the first time and doesn't want to miss it, but says he's having trouble finding it on the OSCON website .... | 17:23 | |
17:25
bacek_ joined,
bacek left
|
|||
pmurias | ruoso: as i understand it smop's calling convention is that the called routine takes ownership of the arguments, but it might be the case of c's convention taking priority here | 17:25 | |
ruoso | yes... that convention is valid in the SMOP__Object* level... not in the general malloc level | ||
all memory allocation should be hidden inside some method call | 17:26 | ||
or function call that returns low-level types | |||
like the _create methods | |||
17:30
jferrero left
|
|||
pugs_svn | r21278 | pmurias++ | [smop] fullfiled ruoso's request to move string allocation inside string creation method | 17:33 | |
pmurias | done | ||
ruoso | pmurias++ | ||
17:35
nothingmuch left,
stevan_ left
17:38
cmarcelo joined
17:39
stevan_ joined,
stevan_ left
|
|||
japhb | TimToady: Are you giving a State of the Onion speech this year? If so, when and where? | 17:39 | |
pmichaud | last year it was (I think) after the lightning talks, before the auction | 17:53 | |
if that holds true again this year, it would be Thursday afternoon | 17:56 | ||
japhb | thanks, pmichaud | 17:58 | |
18:05
[particle] left
|
|||
pugs_svn | r21279 | ruoso++ | [smop] first sketches on the most complicated sm0p code... the code is the equivalent of: my $o = p6opaque.^!CREATE(); $o.^!methods().push($some_method); $o.^!how($some_metaclass); $o.foo(); # where $o.foo will eventually dispatch $some_method | 18:10 | |
ruoso | pmurias, take a look at smop/test/14 | ||
there are two cool sm0p blocks there ;) | 18:11 | ||
maybe it's time to think about a q:s1p { } macro language.... | 18:12 | ||
18:12
stevan_ joined
|
|||
ruoso | sm0p is starting to be boring because of the excessive "copy", "move_capturize" and "move_responder" | 18:12 | |
q:s1p { } could just expand some usual constructs like... my $a = something(); my $b = other(); $a.foo($b); | 18:14 | ||
into the equivalent sm0p nodes | |||
18:16
[particle] joined
|
|||
pmurias | food& | 18:18 | |
ruoso: i'm extending sm0p now | |||
ruoso | pmurias, if you're able to make it a little more smart (like handling variables...) that would be absolutely fantastic... | 18:22 | |
maybe change the syntax for the external variables | |||
forcing $*foo when using a variable defined outside the block... | 18:23 | ||
and using the sm0p frame operations for normal variables | 18:24 | ||
pmurias | ruoso: what should normal variables compile to? | 18:28 | |
18:30
dduncan joined
|
|||
rakudo_svn | r29164 | jonathan++ | [rakudo] Start to refactor declare_attribute a bit so it mostly doesn't dive into the parse tree, but instead takes parameters providing the information it needs. This is a step on making has ($.a, $.b) style things work. | 18:34 | |
ruoso | pmurias, to the "copy", "move_responder" and "move_capturize" patterns | 18:40 | |
18:44
Helios is now known as Helios-
|
|||
pmurias | hmm | 18:46 | |
ruoso | pmurias, take a look at the sketch I've just written | 18:47 | |
smop/test/14... | |||
pmurias | i hesitate to extend sm0p too much so that we don't end up with some pir-style monstrocity | ||
* monstrosity | 18:48 | ||
ruoso | there are still two big limits in sm0p | ||
one is that it can only represent a single block | |||
no nested blocks... | |||
pmurias | easy one | ||
and | |||
ruoso | and the second is that it doesn't have namespaces at any level | ||
pmurias | ? | ||
ruoso | it has SMOP__ID__* that can be guessed | 18:49 | |
variables $*outside the block | |||
and $variables that store the result of a given node | |||
just that | |||
nothing more... | |||
pmurias | $* represents globals in perl6 | 18:50 | |
my plan is that we extend sm0p enough to not require mixing it with c, and then start work on s1p | 18:51 | ||
sounds resonable? | 18:52 | ||
ruoso | sm0p needs mixing with c | 18:55 | |
because of the "interpreter" | |||
and off-the-block vars | |||
for CPS, for instance | |||
s1p will be something that will generate sm0p+c | 18:56 | ||
(or C directly... generating the equivalent C code for the sm0p blocks that would be needed) | |||
18:59
dduncan left
|
|||
pmurias | off-the-block vars? | 18:59 | |
pugs_svn | r21280 | pmurias++ | [smop] changed $frame = q:sm0p {...} to fram = q:sm0p {...} | 19:00 | |
pmurias | that can be fixed by having a fixed wrapper | 19:01 | |
ruoso | fixed wrapper? | 19:02 | |
pmurias | ...boiler plate C...;frame = q:sm0p {...};...boiler plate C... | 19:03 | |
ruoso | pmurias, not all sm0p code will behave the same... | 19:07 | |
some will implement tail call | |||
some will recurse | |||
some will set a return value | |||
some won't | |||
in some cases, there won't be a goto call immediatly... but rather a set in some object for a later evaluation | 19:08 | ||
pmurias | if there are things that need mixing with c will do it :( | 19:10 | |
ruoso | :) | 19:14 | |
pmurias, remember that we have to dislike sm0p enough to write s1p ;) | |||
if we like sm0p too much, we'll never have s1p | |||
pmurias | i keep it in mind | 19:15 | |
but i don't like mixing in c because that makes us dependent on the c compiler | 19:16 | ||
TimToady: gimme5 bug of the day [\s||#]* | 19:17 | ||
TimToady: sorry, was matching my rule on a wrong string | 19:19 | ||
ruoso | pmurias, that's why we're pushing to s1p ASAP :) | 19:21 | |
the test/14 is already the implementation of a very important p6opaque REPR RI part | 19:22 | ||
which will actually allow some translation already | |||
we will then just need a metaclass... | 19:23 | ||
pmurias | the thing i'll need to be able to work on s1p is a list of short perl6 snipppets demonstrating basic features and what they compile to | 19:25 | |
ruoso | basically test/14 is starting to point how that will work | ||
it will push the methods into some p6opaque | |||
that will have a metaclass that knows how to dispatch them | 19:26 | ||
pmurias, but in fact... for that to work I now need Str | 19:27 | ||
and more importantly... 'foo' eq 'bar' | |||
or maybe not | 19:28 | ||
in fact not... | |||
because the REPR have a .^!can mehtod | |||
and I can still special case the constant identifiers | |||
pmurias | ruoso: a initial str implementation is in | 19:29 | |
ruoso | pmurias, I saw it... | 19:31 | |
pmurias, but what we need now is a dispatch code | |||
considering I finish the REPR API, of course... | |||
rakudo_svn | r29167 | jonathan++ | [rakudo] Make has ($x, $y) work. It doesn't work with twigils just yet, but that should be a grammar change. Also remove some incorrect cuddles. | 19:33 | |
19:43
barney left
|
|||
pugs_svn | r21281 | pmurias++ | [sm0p] unidentified indentifiers are no longer treated as outside c vars | 19:47 | |
pmurias | you mean method dispatch code | ||
? | |||
sm0p now also supports comments, i forgot to mention it in the commit log | 19:48 | ||
ruoso | yes | 19:50 | |
cool | |||
20:00
nothingmuch joined
20:01
cathyal joined
20:07
gbacon left,
meteorjay left
|
|||
rakudo_svn | r29173 | jonathan++ | [rakudo] Allow has ($.x, $y, $!z) to work. | 20:26 | |
20:28
xuser_ joined
|
|||
pugs_svn | r21282 | pmurias++ | [smop] unpredeclared identifiers work ie $foo.undecleared_anywhere | 20:32 | |
ruoso | pmurias, remember to add your changes in the wiki Changelog.... ;) | 20:33 | |
pmurias | ruoso: should i start a skeleton s1p implementation or are the more usefull things atm? | ||
ruoso | s1p is very much usefull | 20:34 | |
the other thing to do would be p6opaque... | |||
but I'm already on top of that | |||
pmurias, do you have any clue on how it will be already? | 20:35 | ||
pmurias | yes | 20:36 | |
ruoso | cool... the example in test/14 was helpfull? | ||
20:37
lambdabot left,
lambdabot joined
|
|||
pmurias | i skimed them | 20:38 | |
re any clue you meant s1p? | 20:39 | ||
20:41
iblechbot left
|
|||
pmurias | i plan to turn elf's ast into sm0p, likely with a simplification step between so different smop backends can be added later on | 20:41 | |
ruoso | yeah... I was talking about s1p | ||
pmurias, I need to leave now... I'll backlog later... | 20:43 | ||
pmurias | ok | ||
20:43
ruoso left
20:48
xuser_ left
20:50
jferrero joined
20:53
pmurias left
21:25
cggoebel left
21:32
armagad joined
21:38
Schwern joined
21:42
armagad left
21:45
armagad joined,
armagad left
21:52
gbacon joined
21:54
chris2 left
22:05
rdice left
22:11
Schwern left
22:12
Schwern joined
|
|||
rakudo_svn | r29175 | jonathan++ | [rakudo] Stop producing blocks when we only want a signature object. Additionally, start storing the constraints in the signature object. | 22:14 | |
22:15
gbacon left
|
|||
pugs_svn | r21283 | jnthn++ | [rakudo] Some extra tests for attributes, where you declare many at once with a signature (has ($x, $y) style things). | 22:15 | |
22:22
Squern joined
22:32
Squern left,
Squern joined
22:34
cmarcelo left
22:37
japhb left
22:38
Schwern left
22:42
Squern left,
edpratomo joined,
Squern joined
22:50
xinming left
23:01
japhb joined
23:04
edpratomo left
23:24
gbacon joined
23:30
jferrero left
|
|||
meppl | good night | 23:38 | |
23:42
meppl left
23:43
jhorwitz left
23:46
japhb left
23:53
bacek joined
|