Parrot | source cross referenced
← Previous day | Index | Channel Index | Today | Next day → | Search | Google Search | Plain-Text | plain, newest first
All times shown according to UTC.
| Time | Nick | Message |
|---|---|---|
| 00:00 | Zak joined #parrot | |
| 00:05 | chromatic | http://ccan.ozlabs.org/info/hash.html |
| 00:09 | darbelo | Can we suck public domain Code into parrot? |
| 00:11 | chromatic | License-wise, yes. |
| 00:14 | darbelo | The code looks too 32-bit centered to use directly on parrot, but it shouldn't be to hard to adapt. |
| 00:16 | zak_ joined #parrot | |
| 00:46 | darbelo joined #parrot | |
| 00:48 | djc joined #parrot | |
| 00:48 | darbelo left #parrot | |
| 00:48 | darbelo joined #parrot | |
| 00:50 | zak__ joined #parrot | |
| 01:04 | Tene | cognominal: the PIR generated is probably not in the right HLL |
| 01:05 | is my first guess, without additional information. | |
| 01:05 | plobsing joined #parrot | |
| 01:14 | cognominal | I will go back reading docs tomorrow. Right now I am trhowing stuff at a wall and expect that it sticks. Clearly not the way to do it. |
| 01:24 | I just need to load the parrot runtime. apparently load_language 'perl6' is not enough | |
| 01:26 | load_library, load_language, load_bytecode... :) | |
| 01:36 | tetragon joined #parrot | |
| 01:47 | cotto_work | What about the Artistic License precludes distribution of BSD-licensed code as part of Parrot? |
| 01:48 | chromatic | I can't think of anything. |
| 01:48 | In general, Allison doesn't like it though. | |
| 01:49 | cotto_work | That sounds consistent with my experience. |
| 01:50 | chromatic | Provided the copyright is clear on the source code and the license for that file is obvious, I know of no legal issues. |
| 01:50 | cotto_work | I was thinking about the object system you posted yesterday, but that could be pretty easily reimplemented (if it turns out to be beneficial) and it's likely that much of the original code would be significantly modified anyway. |
| 01:55 | zak__ joined #parrot | |
| 02:00 | joeri joined #parrot | |
| 02:11 | cotto joined #parrot | |
| 02:13 | Zak joined #parrot | |
| 02:17 | cognominal | chromatic, what tools are you using to debug, profile parrot? |
| 02:18 | have you thought abour blogging about that? | |
| 02:19 | chromatic | I thought I did somewhere. Usually I use callgrind and KCachegrind. |
| 02:20 | cognominal | ho, I found http://www.oreillynet.com/onla[…]ou_callgrind.html |
| 02:21 | chromatic | That may be a bit out of date, but it's a place to start. |
| 02:25 | cotto | ohai |
| 02:26 | cognominal, if you want to profile pir code, you can use the profiling runcore by passing -Rprofiling to parrot. See docs/dev/profiling.pod for more info. | |
| 02:38 | Zak joined #parrot | |
| 02:56 | Maddingue joined #parrot | |
| 03:09 | ilbot2 joined #parrot | |
| 03:09 | Topic for #parrotis now Parrot 1.9.0 "Blue-fronted Amazon" released! | http://parrot.org | Priorities: Add deprecations for 2.0; test platforms; check with HLL implementors | Roadmap: http://icanhaz.com/parrotroadmap | Latest modified TT's: http://icanhaz.com/parrotbugs | |
| 04:04 | cognominal joined #parrot | |
| 04:34 | japhb joined #parrot | |
| 06:53 | theory joined #parrot | |
| 07:07 | nopaste joined #parrot | |
| 07:14 | jsut joined #parrot | |
| 08:26 | iblechbot joined #parrot | |
| 08:29 | chromatic joined #parrot | |
| 08:38 | fperrad joined #parrot | |
| 09:40 | bacek joined #parrot | |
| 10:01 | bacek | chromatic, http://murmurhash.googlepages.com/ |
| 10:03 | o hai, btw | |
| 10:08 | chromatic | 52 instructions; that's nice. |
| 10:11 | bacek | chromatic, indeed :) |
| 10:11 | chromatic | How much work is necessary to investigate this? |
| 10:13 | bacek | replacing current hashing function will take couple of hours |
| 10:13 | chromatic | I don't see C source code here though. |
| 10:13 | bacek | testing... depends what we want from testing perspective |
| 10:14 | chromatic | I'd settle for "Passes all tests". |
| 10:14 | Then we can benchmark. | |
| 10:14 | bacek | chromatic, check MurmurHash2.cpp. It's actually C code |
| 10:16 | chromatic | You're right. |
| 10:19 | bacek | Is UINTVAL platform specific? |
| 10:19 | like 64 bits on amd64 | |
| 10:19 | chromatic | I think there's a configure check for it. |
| 10:21 | bacek | Bah... It's at least 64 bits on x86 |
| 10:22 | chromatic | #define UINTVAL long long ? |
| 10:22 | bacek | unsigned long |
| 10:28 | amuck joined #parrot | |
| 10:33 | nopaste | "bacek" at 110.175.160.247 pasted "32-bits MurmurHash2 in Parrot" (71 lines) at http://nopaste.snit.ch/19242 |
| 10:33 | ttbot | Parrot trunk/ r43412 i386-linux-thread-multi make error http://tt.ro.vutbr.cz/file/cmdout/180849.txt ( http://tt.ro.vutbr.cz//buildst[…]-Parrot/rp-trunk/ ) |
| 10:34 | bacek | chromatic, check http://nopaste.snit.ch/19242 - quick and dirty murmurhash2 |
| 10:34 | there is no hash benchmark in parrot so far... | |
| 10:36 | chromatic | A lot of the benchmarks that aren't purely numeric spend a lot of time in hashes. |
| 10:36 | Anything objecty will. | |
| 10:38 | The comment about four bytes at a time looks misleading; it looks like one byte at a time thanks to string iterators. | |
| 10:39 | bacek | chromatic, it is |
| 10:39 | but I don't have time to properly implement it... | |
| 10:40 | And string iterator actually returns 4 bytes. | |
| 10:40 | chromatic | I'm trying to convince myself that it's worth using the string iterator rather than treating the buffer contents as raw bytes. |
| 10:40 | I'm not succeeding. | |
| 10:40 | dalek | parrot: r43412 | fperrad++ | trunk/README_win32.pod: |
| 10:40 | parrot: [win32] update some versions & links | |
| 10:40 | parrot: review: http://trac.parrot.org/parrot/changeset/43412/ | |
| 10:42 | bacek | chromatic, it worth it. We have to generate same hashvalues for strings in different encodings. |
| 10:42 | It actually my code :) | |
| 10:44 | (make test passed with murmur hash) | |
| 10:44 | chromatic | When we compare strings for equality though, we compare encodings. |
| 10:48 | bacek | chromatic, TT#24 |
| 10:50 | chromatic | Oh, right. Ugh. |
| 10:50 | Canonical internal fixed-width string encoding, anyone? | |
| 10:55 | bacek | ucs2? |
| 10:55 | purl | ucs2 is crippled also |
| 10:56 | chromatic | That's my inclination. |
| 11:03 | bacek | I tried to convince other devs to switch to single internal representation of strings. Failed. Epically. |
| 11:03 | chromatic | Let's see if the NFG approach to strings helps. |
| 11:04 | bacek | It's stalled for more than a year... |
| 11:08 | mikehh | If we incorporate the Unicode standard you need a 20bit (32bit?) representation for each character - all other encodings require multiples for some characters |
| 11:09 | chromatic | I *think* we have to use NFG to make Rakudo work correctly, but I don't know that for certain. |
| 11:10 | mikehh | NFG? |
| 11:10 | purl | hmmm... NFG is No Fscking Good! or grapheme normalization form (see docs/pdds/draft/pdd28_character_sets.pod) |
| 11:10 | mikehh | I think I prefer the first purl :-} |
| 12:26 | bacek joined #parrot | |
| 13:11 | Zak joined #parrot | |
| 13:14 | barney joined #parrot | |
| 13:28 | Zak joined #parrot | |
| 13:32 | mikehh joined #parrot | |
| 14:08 | davidfetter joined #parrot | |
| 14:14 | zak_ joined #parrot | |
| 14:35 | zak__ joined #parrot | |
| 14:38 | Psyche^ joined #parrot | |
| 14:46 | cconstantine joined #parrot | |
| 14:48 | cconstantine | hi? |
| 14:48 | purl | leave me alone, willya! |
| 14:51 | zak_ joined #parrot | |
| 15:01 | Psyche^ joined #parrot | |
| 15:12 | zak__ joined #parrot | |
| 15:17 | Zak joined #parrot | |
| 15:22 | zak_ joined #parrot | |
| 15:30 | KatrinaTheLamia joined #parrot | |
| 15:35 | bacek joined #parrot | |
| 15:59 | Psyche^ joined #parrot | |
| 16:13 | cconstantine | ok, dumb question: How do I check if a PMC is null? |
| 16:14 | plobsing joined #parrot | |
| 16:19 | plobsing | hello #parrot |
| 16:21 | cotto | cconstantine, in PMC_IS_NULL() |
| 16:22 | cconstantine | .local pmc var; PMC_IS_NULL(var) |
| 16:22 | ? | |
| 16:25 | plobsing | $I0 = isnull $P0 # IIRC |
| 16:26 | cconstantine | ah |
| 16:27 | cotto | PMC_IS_NULL is fo C |
| 16:27 | *for | |
| 16:27 | cconstantine | plobsing: that works, thanks :) |
| 16:33 | zak_ joined #parrot | |
| 16:37 | zak__ joined #parrot | |
| 16:47 | stocks29 joined #parrot | |
| 16:51 | stocks29 left #parrot | |
| 16:53 | zak_ joined #parrot | |
| 17:17 | amuck joined #parrot | |
| 17:22 | cconstantine | is it possible to have a string in NQP and convert it to a number? (eg "34" as a number) |
| 17:23 | eh, nevermind | |
| 17:29 | zak__ joined #parrot | |
| 17:33 | ZeroForce joined #parrot | |
| 17:52 | zak__ joined #parrot | |
| 18:04 | Zak joined #parrot | |
| 18:12 | Zak joined #parrot | |
| 18:20 | tetragon joined #parrot | |
| 18:30 | payload joined #parrot | |
| 18:37 | nopaste joined #parrot | |
| 19:03 | payload joined #parrot | |
| 19:03 | jhelwig joined #parrot | |
| 19:26 | cconstantine | I'm getting the following error: 'PAST::Compiler can't compile node of type cons' Is there anyway to tell PAST::Compiler how to compile a 'cons' type? |
| 19:43 | I'm guessing "You don't" | |
| 19:49 | jhelwig joined #parrot | |
| 19:58 | jhelwig joined #parrot | |
| 20:13 | payload joined #parrot | |
| 20:15 | Tene | cconstantine: +"34" |
| 20:16 | cconstantine | that's WAY too easy :) |
| 20:16 | Tene | same with ~ for str and ? for bool |
| 20:17 | cconstantine: add a 'as_post' method, iirc | |
| 20:18 | cconstantine | ah |
| 20:18 | cotto joined #parrot | |
| 20:18 | cconstantine | not quite what I was looking for, but I don't think I was asking for what I wanted |
| 20:18 | Tene | wait, no, that's probably a lie. |
| 20:18 | oooooooookay, so what do you want, then? | |
| 20:19 | cconstantine | 'cons' -> PAST |
| 20:19 | I got it I think | |
| 20:19 | Tene | (turns out the answer is to add another multi 'as_post' method to PAST::Compiler |
| 20:19 | ) | |
| 20:20 | cconstantine | that makes sense |
| 20:21 | how would you go about creating a multimethod in NQP? | |
| 20:21 | Tene | You don't. |
| 20:21 | cconstantine | :( |
| 20:22 | Tene | alternate answer: |
| 20:22 | You first add support for multis to nqp, and then you do it exactly the same way you'd do it in P6 | |
| 20:22 | cconstantine | hehe |
| 20:22 | I do do the multi dispatch in pir and call-back to nqp | |
| 21:08 | ZeroForce joined #parrot | |
| 21:23 | payload joined #parrot | |
| 21:31 | hercynium joined #parrot | |
| 21:52 | tetragon joined #parrot | |
| 22:21 | patspam joined #parrot | |
| 22:23 | dalek | parrot: r43413 | bacek++ | trunk (2 files): |
| 22:23 | parrot: Expose Parrot_pcc_do_run_ops. | |
| 22:23 | parrot: review: http://trac.parrot.org/parrot/changeset/43413/ | |
| 22:32 | ttbot | Parrot trunk/ r43413 i386-linux-thread-multi make error http://tt.ro.vutbr.cz/file/cmdout/180921.txt ( http://tt.ro.vutbr.cz//buildst[…]-Parrot/rp-trunk/ ) |
| 22:33 | mikehh joined #parrot | |
| 22:39 | dalek | parrot: r43414 | bacek++ | trunk/src/ops (2 files): |
| 22:39 | parrot: Detach RetContinuation from current CallContext in tailcall. Closes TT#1393 . | |
| 22:39 | parrot: review: http://trac.parrot.org/parrot/changeset/43414/ | |
| 22:56 | payload joined #parrot | |
| 23:13 | cconstantine | stacktraces on errors in pir/nqp would be really useful |
| 23:33 | lucian joined #parrot | |
| 23:49 | cconstantine | I have it! Reason now parses first to a cons tree then a PAST! :) |
| 23:52 | Tene | cconstantine: if you check out http://github.com/tene/steme/ you can find that I wrote a parser that compiles s-exps into matching rules that match s-exps. |
| 23:53 | It's part of my macros implementation. | |
| 23:53 | Not sure what you're working on, but sounds like it might be of interest. | |
| 23:53 | cconstantine | very muc |
| 23:54 | h | |
| 23:54 | it looks like you're using all kinds of features of pct i haven't seen documented | |
| 23:54 | Tene | Maybe... I have trouble keeping track of what's documented and what isn't. |
| 23:55 | cconstantine | I don't have trouble :( |
| 23:55 | I just only know about what's documented | |
| 23:55 | Tene | anything specific that's used there that you want to ask me about? |
| 23:56 | cconstantine | let me study a bit |
| 23:56 | http://github.com/tene/steme/b[…]ct/grammar.pg#L31 | |
| 23:57 | Tene | That declares 'special' to be a protoregex. It's kind of like multiple dispatch for subs. |
| 23:57 | cconstantine | what is a protoregex? |
| 23:57 | purl | i guess a protoregex is like a rule or a token, except it can be overloaded dynamically (per the book) |
| 23:58 | Tene | That's a Perl 6 thing, not special to PCT. It's probably talked about in S05. |
| 23:58 | cconstantine | S05? |
| 23:58 | purl | see http://dev.perl.org/perl6/doc/design/syn/S05.html or dev.perl.org/perl6/doc/design/syn/S05.html or http://perlcabal.org/syn/S05.html |
| 23:58 | Tene | cconstantine: look at the special:sym<...> stuff. |
| 23:58 | protoregex lets another rule just say <symbol>, but it will match whichever of the alternates actually matches. |
← Previous day | Index | Channel Index | Today | Next day → | Search | Google Search | Plain-Text | plain, newest first