Parrot 2.0.0 "Inevitable" released! | parrot.org | Priorities: merge tt_389_fix and one_make branches | Roadmap: icanhaz.com/parrotroadmap | Latest modified TT's: icanhaz.com/parrotbugs
Set by moderator on 20 January 2010.
kid51 In the one_make branch, I'm looking at tools/build/h2inc.pl 00:00
... because 'make' now invokes it before tools/build/pmc2c.pl.
I have some specific questions about the code. Are you the go-to guy for this?
darbelo Not really, but I can try. 00:01
kid51 okay.
Inside sub parse_file(), at line 143, I see: $cur and die "Missing '&end_gen' in $in_file\\n";
... which I read as 'die if $cur has a true value' 00:02
But, given that $cur is declared at line 133 and not assigned to in the intervening 10 lines, I don't see how $cur can ever be a true value at that point.
00:02 mikehh_ joined
kid51 Does that seem correct? 00:03
00:03 patspam joined
kid51 Oh wait, I suppose it could be assigned to in one of the other if-else stanzas. 00:04
In any event, I thought that as I was going through this file, I could write documentation for the subroutines.
chromatic Quick, everyone! Drop everything! We have to get on TIOBE now! use.perl.org/comments.pl?sid=44429&cid=71563
darbelo Wait, his argument is "It sucked in 2004, therefore it sucks now"? 00:08
00:08 particle joined
chromatic His argument is "It doesn't run Python. I mean, okay, maybe it does, but it doesn't run Python 2. And also, it's not very popular. Therefore, you suck." 00:09
Okay, more charitably. 00:11
"You suck for claiming to support all dynamic languages."
00:15 riffraff joined
darbelo We support lua, and sizable subsets of perl 6, ruby and tcl. Along with smaller subsets of other languages. Are those not dynamic enough? 00:15
kid51 plobsing: Getting some warnings t/steps/auto/libjit-01.t at line 57
attempting to diagnose 00:16
chromatic darbelo, I get the impression Ben wants something different from what we want, which is fine until FUD starts flying. 00:17
darbelo Maybe it's becouse I wasn't here in '04 or something, but I don't really get what is he wants. Other than python 2... 00:18
chromatic That's because he keeps moving the goal posts. 00:19
00:22 bacek joined
bacek Morning, good morning 00:22
darbelo Good tomorrow morning, bacek
plobsing kid51: thanks for catching that. I can reproduce the problem. it appears the test is not setting the 'osname' and/or 'cc' configuration values
00:22 tetragon joined
bacek darbelo, aloha! Tomorrow looks nice, shiny and warm :) 00:23
00:23 LaVolta joined
darbelo Good. I'm getting tired of this damm rain. 00:24
GeJ Good morning everyone. 00:25
00:26 particle joined
dalek rrot: r43538 | jkeenan++ | branches/libjit_framebuilder2/t/steps/auto/frames-01.t:
Correct the number of tests specified in plan.
00:26
kid51 plobsing: Yes, I'm trying to figure out why. It wasn't doing that in trunk. 00:27
kid51 ponders line 54 of ./config/auto/libjit.pm
darbelo kid51: Sorry I left you hanging. The $cur you mention is in a while loop. 00:28
plobsing kid51: that finds the link options for libjit in a platform independant way IIRC 00:29
kid51 lemme think this thru:
If we do not provide the 'without-libjit' option to Configure.pl, we hit the 'else' at line 54 of config/auto/libjit.pm.
I would think that we would know both 'osname' and 'cc' at that point. 00:31
After all, we're now running these tests *after* Configure.pl, so we should have no problem getting those values.
OTOH, this is a brand-new configuration step. 00:32
00:33 mikehh_ joined
cotto_working chromatic, I'd question whether it's worth responding any further (if you haven't given up already) 00:42
chromatic Yeah, I'm done. 00:44
tewk_ I was entertained :) 00:45
ash_ plobsing: libjit_framebuilder2 passes all the make fulltests 00:48
plobsing ash_: thanks!
ash_ sorry, was away from my computer
kid51 plobsing: When I do 'svn st' after running Configure.pl, I'm getting two files with '?' status. 00:57
chromatic Hey jsut_, quick question! If Parrot can't run Perl 6, what did pmichaud release the 25th version of today?
kid51 src/frame_builder_libjit.h and src/frame_builder_libjit.c 00:58
pmichaud Parrot runs Rakudo just fine.
kid51 We have to tell 'svn st' that these are generated files.
00:58 patspam joined
kid51 I'm trying to remember how to do that. 00:58
chromatic How can that be, pmichaud? Ben Tilly says Rakudo doesn't exist! 00:59
kid51 I think that's setting an svn:ignore
pmichaud I have no clue who Ben Tilly is. So he must not exist either. :-) 01:00
chromatic That's a good summary of the logic, yes. 01:02
cotto_working problem solved 01:04
now back to coding
chromatic Or the ball game....
01:11 ash_ joined 01:12 ash__ joined
dalek rrot: r43539 | jkeenan++ | branches/libjit_framebuilder2 (2 files):
1. Set an 'svn:ignore' for src/frame_builder_libjit.h and

2. To avoid an uninitialized value warning in t/steps/auto/libjit-01.t, provide a dummy value for 'osname'. (This would normally be determined in the immediately preceding config step, auto::arch.)
01:15
cotto_working kid51, what are your thoughts on nuking the pmc2c tests? 01:16
kid51 I don't agree. 01:17
Note that, contrary to what you said in email, they are not run as part of 'make fulltest'. 01:18
Only as part of 'perl Configure.pl --test' or '--test=build' or make buildtools_tests
cotto_working my mistake
kid51 I began to look at them this morning, and then resumed when I got back from work this evening.
But helping plobsing out with libjit_framebuilder2 seemed more immediate. 01:19
kid51 runs smolders on libjit branch on Darwin/PPC and Linux/i386
kid51 hopes Smolder site is working ok 01:20
cotto_working: I'll figure out something for those tests. Are you familiar with tools/build/h2inc.pl ? 01:21
cotto_working I hacked on part of it.
kid51 So, is that what creates PCCMETHODBITS.pm (or some name like that)?
cotto_working yes
kid51 And tell me if I understand this: That's one of the things that previous would have been created by Configure.pl -- whereas now it's created by 'make'. 01:22
cotto_working correct
kid51 Okay, then the major part of the reason for the tests' failure is that previously they were being run just *after* creation of BITS but now -- assuming they're run "between" Configure and make (which has always been the case) -- they're being run *before* creation of BITS. 01:24
cotto_working exactly
kid51 Okay.
cotto_working So making sure they're run after make is fine, but less work than deleting them. 01:25
kid51 I'll look into figuring out how to fake, ... er, simulate the missing prerequisites.
cotto_working s/less/more/
kid51 True: but if you delete them, you delete my first 6 months of work on the Parrot project ;-)
cotto_working And now we arrive at the heart of the matter.
kid51 And, in fact, the tests for tools/build/pmc2c.pl was the first assignment Jerry gave me. 01:26
Were you around then?
cotto_working probably not. When was that? 01:27
kid51 Nov 2006 thru approx Apr 2007
cotto_working ISTR that I joined around Jan 2008.
kid51 Before then, pmc2c.pl, ops2c.pl and ops2pm.pl were all long Perl 5 scripts, very difficult to make sense of, with little or no encapsulation of subroutines. 01:28
cotto_working As hairy as the code is now, I definitely appreciate the encapsulation.
chromatic Another option is to make those tests less fragile.
kid51 So the tests were essential to refactoring them and making them (slightly more) maintainable.
cotto_working chromatic, that'd be ideal. 01:29
I'd be glad to help do that.
chromatic The tests as they are right now are too fragile. They don't help much.
kid51 Actually, I'm surprised they weren't *more* fragile than they have proven to be.
They survived a major refactoring underneath them by tewk a couple of years back with little damage. 01:30
cotto_working black box testing of the pmc2c code would be great
and ops2c et. al.
kid51 What's happened in this branch is the first breakage in > 1 year.
chromatic I'm not sure that's possible though.
They've broken more often than that, kid51.
When allison and I worked on PMC attributes they gave us fits.
cotto_working They're not quite *that* resilient. 01:31
dalek rrot: r43540 | plobsing++ | branches/libjit_framebuilder2/config/auto/frames.pm:
undefine has_exec_protect explicitly. fixes failing t/steps/auto/frames.t when libjit is installed
kid51 Really? I would have expected you to toss fireballs my way when that happened ;-)
chromatic I almost deleted them then.
01:32 davidfetter joined, bit-man joined
kid51 plobsing: libjit_framebuilder2 branch: r43539: Linux/i386: make test: PASS with one TODO pass in t/pmc/eval.t 01:34
01:35 bit-man_ joined
chromatic I appreciate that they helped refactor the generators, but those tests didn't help us make changes. 01:35
They were just in the way.
01:35 bit-man_ left
cotto_working kid51, if you want to start turning those tests into blackbox tests, it'll help the move to nqp-based code manglers. Otherwise, the tests will eventually have to go. 01:41
kid51 plobsing: Same results on Darwin/PPC at same revision
cotto_working: Describe what you mean here by blackbox tests. Also, nqp-based code manglers. 01:42
plobsing sweet. with that, i think I have all the testing I need to merge.
cotto_working nqp-based code manglers: the nqp-based versions of pmc2c, ops2c and friends 01:43
blackbox test: test of functionality without any knowledge of they system's internals 01:44
kid51 Well, if you could write up specifications for those tests, perhaps that would give me an idea of how better to revise the current tests
After all, when I started, there were no specifications for any of those scripts. 01:45
Most of their documentation I wrote in the process of refactoring them. 01:46
chromatic I don't think you *can* write black box tests for them.
kid51 And I viewed it as my job to maintain their then current functioning exactly as it was.
cotto_working At this point the specification is "what they do now".
chromatic, what precludes that?
chromatic You have two separate desires. 01:47
1) To write regexes to demonstrate that the transformation is appropriate
2) To write regexes loose enough that minor changes in formatting that have nothing to do with appropriateness don't cause spurious failures 01:48
It's possible to do so.
But then you have to *maintain* those complex, fragile regular expressions.
You have to *modify* those complex, fragile regular expressions when you change the transformations in substantive ways. 01:49
cotto_working If only we had superior tools for dealing with large chunks of text that matched a certain grammar.
chromatic It doesn't matter what tool you use for doing this matching. It's always a bad idea.
We already have a perfectly valid unambiguous way of detecting when the transformation results in invalid code that a C compiler will rightly reject. 01:50
Devel::Cover won't catch that. 01:51
So what?
purl So are we not flattening returns?
chromatic The tests are only there to make our lives easier.
cotto_working agreed
chromatic If our lives get more difficult because we're trying to appease Devel::Cover, we're doing something very wrong.
cotto_working also agreed 01:52
chromatic We don't run the "Does it have spurious whitespace at the ends of lines?" test in coretest for a reason.
That reason is "Spurious whitespace almost NEVER matters."
I want to know if when I change something in Pmc2c that PMCs continue to build and work appropriately.
We already test that.
We have to test that.
I don't care if the whitespace changes.
The pmc2c tests care.
That's useless information.
I care if the PMCs fail to build. 01:53
We already detect that. We have to detect that.
I care if the semantics of the PMCs have changed.
We already detect that. We have to test that anyway.
pmc2c can't tell me any of that.
What's the point again?>
cotto_working So you're saying that beyond tests of internal code, the only test we need is "does the normal test suite pass"? 01:54
chromatic No, not as a general rule.
cotto_working specifically in pmc2c
's case
chromatic Yes.
I don't believe it's possible to write maintainable test cases that avoid false negatives and provide useful positives that are any easier to debug than what we have elsewhere. 01:55
Someone could surprise me, and I'm fine with that, but I don't think it's worth the effort.
cotto_working I think that message about bacek's sync froze Outlook. I'll have to congratulate him. 01:56
nm. It's back.
kid51_at_dinner, if you want to move the tests that's fine, but it looks like their days are numbered. 02:00
chromatic Broke my mail filter too.
cotto_working There's nothing like a 5MB diff to start the day out right. 02:02
bacee++ 02:03
bacek++
dalek rrot: r43541 | bacek++ | branches/orderedhash_revamp (1198 files):
Merge branch 'master' into orderedhash_revamp_local

  \tsrc/pmc/orderedhash.pmc
  \tsrc/pmc/orderedhashiterator.pmc
02:04
rrot: r43542 | bacek++ | branches/orderedhash_revamp/src/pmc_freeze.c:
thawfinish PMCs in reverse order. We have to fully construct younger PMC before use them in older.
rrot: r43543 | bacek++ | branches/orderedhash_revamp/t/native_pbc (4 files):
Rebuild native pbcs
rrot: r43544 | bacek++ | branches/orderedhash_revamp/src/pmc/orderedhash.pmc:
Remove redundant OrderedHash.destroy
rrot: r43545 | bacek++ | branches/orderedhash_revamp/src/pmc/orderedhash.pmc:
Fix OrderedHash thaw/freez
cotto_working here we go
bacek :) 02:12
It was syncing of 6 month old branch 02:13
cotto_working Happy Deprection Day!
bacek unmanagedstruct poking into OrderedHash guts too deeply... 02:14
02:14 payload joined
bacek I'll fix it tonight. 02:14
Anyway, beach time!
cotto_working My only consolation for it being summer in Australia is that the winter here thinks that it's spring. 02:15
plobsing bacek: wrt thawfinish, how do reconcile younger vs older pmc ordering with circular structures? 02:17
Coke jsut? 02:29
dukeleto 'ello 02:40
Coke anyone using compilers/ncigen?
dukeleto not I
dalek pir: fdcd0d0 | dukeleto++ | CREDITS:
Merge remote branch 'bob/master'
02:47
pir: 1748f23 | dukeleto++ | t/harness.pir:
Found the Bug in our Hunt

because only 1 failing test was counted per file, instead of the number of tests that actually failed in that file. There are no tests to change because the harness code that prints results is not tested. This sucks, and if you don't like it, patches welcome!
dukeleto bubaflub++ 02:51
dalek TT #1409 closed by jkeenan++: Copyedit + Fixes to submissions.pod 03:04
kid51 Smolder is back to the way it was a couple of weeks ago: Uploading reports, but reporting back to the submitter that there was a timeout. 03:05
I've submitted 3 smolders so far this evening, and every one of them has been reported as having timed out 03:06
And a 4th just now. 03:08
cotto lta
dukeleto kid51: smolder seems inconsistently stable, to say the least
i ran my own until i found out it has horrible memory leaks and has to continually be restarted
kid51 dukeleto: Yes I think mpeters has reported the same thing. 03:09
dukeleto kid51: yes, he wrote it ;) 03:16
03:19 jsut joined
dalek rrot: r43546 | jkeenan++ | trunk (78 files):
Merge no_running_make_test branch into trunk. Eliminates unused and apparently superfluous t/harness option as per �trac.parrot.org/parrot/ticket/1412.
03:43
rrot: r43547 | jkeenan++ | branches/no_running_make_test:
Branch has been merged into trunk and is no longer needed at HEAD.
rrot: r43548 | jkeenan++ | tags/no_running_make_test-43473:
Branch to which tag corresponded has been merged into trunk; tag is no longer needed.
rrot: r43549 | jkeenan++ | branches/one_make/tools/build/h2inc.pl:
Add some barebones documentation of subroutines.
03:50 theory joined 04:29 smash_ joined
cotto kid51, thanks 04:35
dalek rrot: r43550 | jkeenan++ | branches/one_make (7 files):
Some prerequisites for successful operation of buildtools_tests are no longer

instead. Eliminate one test file; eliminate some tests in another file; TODO one test.
04:50
TT #1382 closed by jkeenan++: auto::alignptrs: Eliminate this config step 05:01
plobsing is gc re-entrant? 05:07
more importantly, even if it is, does it make sense for that to happen? 05:09
05:13 jsut_ joined
dukeleto plobsing: i got nothin' 05:17
dukeleto is finally hacking on tapir again
05:39 particle1 joined
dukeleto particle: what are you hacking on these days? 06:39
06:45 diakopter joined
diakopter chromatic: typo in title of use.perl.org/~chromatic/journal/40123 06:45
07:24 fperrad joined 07:36 cognominal joined
chromatic Thanks, diakopter. 07:48
plobsing, re-entrant how? 07:49
08:37 wagle joined 08:46 eternaleye joined 08:53 mikehh joined
cotto checkdepends needs love 09:16
and I need sleep 09:20
bacek hooray! 09:36
orderedhash_revamp passing tests on my box
dalek rrot: r43551 | bacek++ | branches/orderedhash_revamp (2 files):
Remove last traces of support compound keys in OrderedHash
09:42
rrot: r43552 | bacek++ | branches/orderedhash_revamp/src/pmc (2 files):
Implement OrderedHash.get_pmc and use it in UnManagedStruct.

implementation.
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#31850), fulltest) at r43550 - Ubuntu 9.10 amd64 (gcc with --optimize) 09:50
dalek rrot: r43553 | darbelo++ | branches/one_make/tools/dev/checkdepend.pl:
Rename a variable to avoid a warning.
09:58
10:03 cognominal joined
bacek mikehh, ping. Can you test orderedhash_revamp branch please? 10:24
mikehh bacek: in progress 10:25
bacek mikehh, thanks!
mikehh basek: make corevm/make coretest, make test PASS 10:38
bacek: regenerated MANIFEST.skip, codetest failures - mostly svn properties, fixing 10:40
bacek mikehh, ok, thanks.
dalek rrot: r43554 | mikehh++ | branches/orderedhash_revamp/MANIFEST.SKIP:
regenerate MANIFEST.SKIP
10:46
rrot: r43555 | mikehh++ | branches/orderedhash_revamp/src/pmc/orderedhash.pmc:
fix codetest failure - linelength
11:02
darbelo bacek: orderedhash_revamp passes make test on OpenBSD i386 r43554 11:09
bacek darbelo, good! 11:10
11:13 soc joined
soc good morning everyone! 11:13
darbelo mornin' 11:14
soc a few hours ago i was wondering what is exactly necessary to have an implementation of a programming language ...
maybe someone can tell me if i my thoughts on that are correct:
basically parrot claims to support java byte code, but that means we need a compiler to transform our language to java bytecode first, right? 11:15
darbelo Nope. We have our own bytecode. 11:16
soc darbelo: yes, i know....
darbelo There was a JVM bytecode translator at some point, but I don't think it's being maintained.
soc my thinking of "supports java byte code" wa more in the line of "can transform java bytecode to parrot byte code" 11:17
ah ok ...
so basically to implement a language, one needs:
darbelo parrot, an idea and a irc window open on this channel ;) 11:18
soc - a specification
- some execution enviroment which in the end results in commands send to the processor
- (and basically a library if you want to do something usefull with it)
dalek rrot: r43556 | mikehh++ | branches/orderedhash_revamp/compilers/data_json (3 files):
set svn properties
11:19
soc but now i wonder if it is somehow possible to somehow write the libraries so that they work on every execution enviroment
rrot: r43557 | mikehh++ | branches/orderedhash_revamp/config (6 files):
set svn properties
rrot: r43558 | mikehh++ | branches/orderedhash_revamp/docs (7 files):
set svn properties
soc basically you can either write the library in the programming language, but then there is no way to bootstrap a new enviroment
or you write bytecode, but then it is not portable anymore, assuming that not every execution enviroment uses the same bytecode spec
any comments? 11:21
purl any comments are appreciated
soc purl: to what? :-)
purl soc: huh?
soc two people, same idea? :-D 11:22
darbelo soc: There's two 'bootstapped' languages targetting parrot with different approaches. nqp-rx and winxed. 11:24
Coke soc; PBC generated on one platform should be runnable anywhere. 11:25
soc that's interesting! 11:26
generally speaking targets more the dynamic side of the programming language, right?
11:26 bit-man_ joined
soc (maybe not in the bytecode, but in the features the parrot vm supports?) 11:27
darbelo PBC is our name for bytecode.
11:28 riffraff joined
soc Coke: but that means there is a bytecode spec somewhere riht? 11:28
right^
darbelo Basically you run nqp in one platform and 'compile' nqp to pbc tha can be run on all platforms.
soc darbelo: wouldn't that work with every language, where the compiler is implemented in pbc? 11:29
darbelo The compiler for nqp is written in nqp. much like gcc is written in c. 11:30
soc darbelo: but nqp is executed as pbc, right? 11:31
darbelo Yes, you have to keep a 'precompiled' instance laying about for bootstrapping.
soc ah ok
that solved my question ...
programming languages are tricky :-) 11:32
darbelo The alternative (what winxed does) is to have a second (subset) compiler written in another language.
soc if someone wants to have a language, independent of different bytecode repesentations and vms and architectures ... the spec gets more and more abstract 11:33
darbelo winxed ships a 'stage 0' bootstrap compiler written in c++, which is used to compile the 'stage 1' compiler, written in winxed.
soc i wonder if someone has even done that to this day
darbelo I'm not sure I understand your question, but I think that perl 6 is doing what you mention. 11:34
soc i tink that would require a copiler writtenin that language, which supports the creation of different bytecodes ... 11:35
dalek rrot: r43559 | mikehh++ | branches/orderedhash_revamp/tools/dev (6 files):
set svn properties
rrot: r43560 | mikehh++ | branches/orderedhash_revamp/examples (16 files):
set svn properties
soc but bootstrapping becomes hard then ...
darbelo: perl 6 is a language spec, and rakudo is a compiler which uses parrot for that language right? 11:36
perl6 can be implemented without using parrot or a specific byte code representation? 11:37
or is there a perl 6 byte code spec?
darbelo yes, the first prototype was attempted in haskell IIRC
en.wikipedia.org/wiki/Pugs 11:38
11:38 barney joined
mikehh bacek: still a whole bunch of svn properties to set - will work on it soon - got to go out for a bit - bbl 11:38
bacek mikehh, I think you can safely ignore svn props. 11:39
git-svn merge will not preserve them anyway
afaiu
darbelo soc: The perl 6 desingn is also codified in a test suite. 11:40
Coke soc; there are, IIRC, about 4 different implementations of perl6 right now, in varying degrees of activity. parrot is only one of them. 11:41
darbelo The test suite approach basically lets you say "Running program X should produce output Y" and you give the implementors complete freedom to achieve the translation as they see fit. 11:43
soc ah, interesting, thanks! 11:48
Coke: mhh, is parrot an implementation of perl6?
i thought parrot is considered to be just an independnet vm, where a perl6 compiler (rakudo) exists 11:49
darbelo Not as such. Parrot is a vm for dynamic languages.
soc what makes it hard to support static languages?
darbelo Rakudo is a perl 6 implementation that targets parrot.
soc or basically, where are the differences of vms targeting dynamic/static languages?
the only difference i could think of is groovy's metaprogramming 11:51
dalek rrot: r43561 | barney++ | trunk/README:
Removed reference to 'make install-dev' in README.

Removed POD markup.
soc basically either the compiler or the vm has to do the type inference/checking, etc.
if the compiler does it, it is called static, if the vm does it, it is called dynamic? 11:52
darbelo Mostly, yeah.
soc basically we could have a language which could be checked for type soundness at compiletime AND have metaprogramming abilities and easy reflection things, if people would implement all the intelligence in the compiler AND the vm? 11:58
but nobody does that because it is insanely complex, right? 11:59
darbelo and would probably be horribly slow too.
soc and 99,999999999% of the population would have it's problems to get either ones right ...
darbelo: why is that?
i could imagine that it would use static type checking as a default and only use the vms abilities if they are needed ... 12:00
darbelo The vm's abilities for doing stuff at runtime still have a cost. For starters they prevent a whole set of optimizations that vms for static languages can get away with. 12:01
soc basically it could considered to be a vm that supports recompilation while running :-)
basically a compiler which adds additional runtime information after every execution step, and generates new bytecode ... 12:04
... and replaces the old bytecode by the new one while running it on the vm ... 12:05
dalek tracwiki: v122 | barney++ | Languages 12:06
tracwiki: Clarified the two demo languages
tracwiki: trac.parrot.org/parrot/wiki/Languag...ction=diff
darbelo soc: Are you familiar with trace-based jits? 12:07
soc the link to pir on www.parrot.org/dev/examples/pasm is broken ...
darbelo: no, not really
why do you ask?
darbelo It's a technique for 'specializing' code on the fly to speed up dynamic languages. 12:08
soc ah, ok i'll look that up
darbelo Gimmie a sec, I have a link to a paper somewhere. 12:09
12:09 payload joined
soc i'm reading a bit about type inference, System F and Hindley-Milner at the moment ... 12:10
darbelo people.mozilla.com/~dmandelin/trace...ldi-09.pdf 12:11
soc ah ok, tracemonkey, i heard of it 12:12
darbelo It's pretty javascript-specific, but can serve as a decen introduction to the ideas.
soc at the moment i'm trying to get my bachelor degree ... attendence at he courses is mandatory, but it is just absolutely boring ...
so i'm looking elsewhere about things to learn ... 12:13
ok, thanks, i'll look into it
i decided to look into type systems for my first year, so i hope i don't fall asleep when the person in the front is talking about how you represent signed numbers in 8 bit :-) 12:15
darbelo Integers are no fun in that respect. The cool representations use arctangets and agles. That's where the fun is. 12:17
But then, I'm in electronics engineering, we're trained to care about the cost of every bit ;) 12:18
soc :-) 12:19
^^
yeah, i'm just highly annoyed of that irrelevant and trivial bs we are doing at class
it would be much more effective to tell people to stay at home and read wikipedia articles on the basics 12:20
and _not_ wasting 4 weeks in absolute triviality 12:21
Infinoid soc: I've fixed the links on the pasm examples page, thanks 12:26
darbelo Heh. One of my teachers last year decided that teaching us CORDIC algorithms on a whiteboard would be too boring, so he handed us a paper on the subject and pretty much told us to look it up on wikipedia if we didn't get it ;)
soc Infinoid: npl, glad i could help ...
darbelo: that's cool :-) 12:27
mandatory attendance is bulls***, most of the time ...
12:46 bit-man left 12:59 joeri joined 13:24 clinton joined
darbelo Coke: ping 13:25
13:26 cghene joined 13:30 kid51 joined 13:42 bit-man joined
dalek rrot: r43562 | darbelo++ | branches/one_make/compilers/nqp (2 files):
Manually expand a variable and remove a redundant dependency to please checkdepend.pl
13:44
14:01 payload joined 14:04 soc left 14:06 cognominal joined 14:12 cconstantine joined 14:20 bit-man joined 14:26 bit-man joined
dalek nie: r91 | allisonrandal++ | trunk/ (2 files):
Adding Plumage module files for Pynie, thanks to Fran�ois Perrad.
14:50
nie: r92 | allisonrandal++ | trunk/setup.pir:
Updating version in setup PIR file too.
14:55
15:05 ilbot2 joined
moderator Parrot 2.0.0 "Inevitable" released! | parrot.org | Priorities: merge tt_389_fix and one_make branches | Roadmap: icanhaz.com/parrotroadmap | Latest modified TT's: icanhaz.com/parrotbugs
ttbot joined, leto_ joined, wagle_ joined, FullMetalHarlot joined, darbelo_ joined, preflex_ joined, khisanth_ joined, Infinoid joined, kgilmer joined, Maddingue joined, hercynium joined, jjore joined, clinton joined, baest joined, GeJ joined, joeri joined, coke joined
coke ~~ 15:05
15:06 mj41 joined, eternaleye joined, payload joined 15:07 dngor joined, pmichaud joined, diakopter joined 15:08 PerlJam joined, solarion joined, dukeleto joined, Psyche^ joined, Util joined, redbrain joined, Coke_ joined, cosimo joined
Coke wonders who Coke_ is. 15:10
Coke_ oh.
15:10 Coke_ left, slavorg joined
Coke darbelo_: pong 15:13
15:14 jan joined
darbelo_ Coke: Is it just me or is data_json disconnected from the build? 15:15
Coke it's possible nothing depending on it, so it didn't get built 15:16
15:17 cognominal joined
darbelo_ I added it after $(LIBRARY_DIR)/JSON.pbc in root.in and now it seems to be built, but it still has dep issues. 15:17
Coke (dep issues) - fair enough; it has it's own .mak files, so .. 15:22
15:22 jsut_ joined
darbelo_ Hmm. I think I got it... 15:23
Let me realclean
bit-man Hello everybody 15:27
I've tried to use opendir et al. from Rakudo but found that they aren't implemented in Parrot 15:29
Am I right ?
darbelo_ Coke: Yep I got it. 15:31
Incoming!
bit-man Searching on Parrot code I've found that only opendir is implemented 15:33
but seems to be for internal parrot use only
I have some time to dig on it and try the opendir family implementation for Parrot 15:36
Anyway I'll the mechanism at How To Submit Something New (www.parrotcode.org/docs/submissions.html) 15:42
Coke that's old =-)
moment.
bit-man OKI
Coke docs.parrot.org/parrot/latest/html/...s.pod.html 15:43
parrotcode is old old old and should die. apologies.
15:44 Psyche^ joined
bit-man Coke: thanks ! 15:44
Coke: I'll follow this URL instructins then
mikehh orderedhash_revamp branch - apart from t/distro/file_metadata.t (svn properties) 15:46
all other tests PASS - pre/post-config, corevm/coretest, smoke (#31858), fulltest at r43562 - Ubuntu 9.10 amd64 (g++ with --optimize)
darbelo_ Wait. parrotcode.org is still alive? 15:49
bit-man Sure, it redircts to parrot.org
darbelo_ Yeah, but the old content is still reachable. 15:50
It shouldn't be. That's stuff is horrybly outdated.
bit-man Ooops
15:52 eternaleye joined
Coke yah. dukeleto is working on it. 15:54
parrotcode?
parrotcode is probably out of date; use parrot.org instead.
parrotcode?
dalek rrot: r43563 | darbelo++ | branches/one_make (2 files):
Add data_json to the main makefile and redo the dependencies.
Coke no, parrotcode is probably out of date; use parrot.org instead. 15:55
wierd.
kid51 Coke: Is it okay if I do some documenting and touchups on tools/build/h2inc.pl? 15:59
16:00 payload left 16:08 payload joined
dalek rrot: r43564 | mikehh++ | branches/orderedhash_revamp/compilers/nqp/t/30-subclass.t:
set svn properties
16:11
rrot: r43565 | mikehh++ | branches/orderedhash_revamp/ext/nqp-rx (63 files):
set svn properties
darbelo_ kid51++ # Willing documenter
rrot: r43566 | mikehh++ | branches/orderedhash_revamp (48 files):
set svn properties
darbelo_ Coke: checkdepend says: # Looks like you failed 6 tests of 158. 16:13
After getting that to 0 and fixing/obliterating the pmc2c tests, what's left to do on this branch? 16:14
kid51 h2inc.pl: At approx line 30 and 34, we have this: $gen = join "\\n", &const_to_perl(@defs);
is there any particular reason for using the '&' on those subroutine calls? 16:15
darbelo_ stale raisins? 16:16
Coke kid51: that is copied almost entirely from your config step. =-) 16:21
no. it's not done for any reason. we were aiming for working, nothing else.
darbelo_: that is probably sufficient to get this branch back. 16:23
(note that checkdepend needs more work and should be failing MORE tests atm. =-)
kid51 Hmm, I'm surprised I left that '&const_to_perl' in parrot_include.pm.
I wouldn't have written it that way myself, so I must have left the original author's code stand. 16:24
Coke so, feel free to make changes.
16:27 eternaleye joined 16:28 joeri joined 16:32 diakopter left
dalek rrot: r43567 | jkeenan++ | branches/one_make/tools/build/h2inc.pl:
Move declaration of read handle inside parse_file(); document change.
16:43
16:46 eternaleye joined 16:55 silug joined
dalek rrot: r43568 | jkeenan++ | branches/one_make/tools/build/h2inc.pl:
Re-order subroutine declarations more in the order in which program calls them.
17:16
17:17 clinton joined
kid51 Coke: recall the problem I mentioned yesterday concerning 'make' failures after 'make clean' in one_make branch? 17:30
Is the source of the problem at lines 219-20 of config/gen/makefiles/root.in? 17:31
17:31 japhb joined
kid51 i.e., the *conditional* inclusion of two opengl-related files? 17:31
dalek rrot: r43569 | jkeenan++ | branches/one_make/tools/build/h2inc.pl:
1. Encapsulate heredoc in print_generated_file().
17:32
kid51 I ask because, during testing of changes to h2inc.pl, I get same make failures after make clean -- necessitating make realclean and perl Configure.pl 17:33
17:34 clinton1 joined
cotto Coke, what prevents checkdepends from printing a test plan? 17:44
darbelo_ cotto: It does... At the end. 17:51
cotto Right. I'm asking why it can't figure out how many tests it'll run before it runs them. 17:53
17:55 slavorgn joined, Whiteknight joined
cotto (in one_make) 18:01
dalek rrot: r43570 | jkeenan++ | branches/one_make/tools/build/h2inc.pl:
Encapsulate composition of output text in generate_text(); document that new sub.
18:04
kid51 must get out of house 18:06
18:10 cognominal joined 18:18 theory joined
dalek rrot: r43571 | cotto++ | branches/one_make/tools/dev/checkdepend.pl:
[checkdepend] move some duplicated code into a sub
18:20
18:24 jsut joined
cotto hi jsut 18:28
Infinoid (someone may want to op slavorg) 18:40
cotto bacek, ^ 18:43
or treed ^
Infinoid hi cotto :)
cotto all better 18:45
thanks
treed NP
18:46 davidfetter joined 18:49 tetragon joined 18:54 mikehh joined
mikehh orderedhash_revamp branch 19:14
All tests PASS (pre/post-config, make corevm/make coretest, smoke (#31860), fulltest) at r43570 - Ubuntu 9.10 amd64 (g++ with --optimize)
davidfetter w00t! 19:20
dalek rrot: r43572 | cotto++ | branches/one_make/tools/dev/checkdepend.pl:
[checkdepend] tweak a regex to avoid a warning, rename a var
19:25
cotto Coke, can you do a patch review? 19:29
nopaste "cotto" at 96.26.227.153 pasted "checkdepends simplification" (43 lines) at nopaste.snit.ch/19335 19:30
"cotto" at 96.26.227.153 pasted "checkdepends simplification, v2" (43 lines) at nopaste.snit.ch/19336 19:34
19:41 payload joined
nopaste "cotto" at 96.26.227.153 pasted "checkdepends simplification, v3 (with a plan)" (55 lines) at nopaste.snit.ch/19337 19:42
cotto committed 19:44
Coke checking... 19:46
oh.
bah.
plan is overrated. :P
but, ok.
has anyone duplicated kid51's 'make clean' issue in one_make? 19:47
19:56 chromatic joined
chromatic gcc.gnu.org/wiki/MELT%20tutorial 19:56
dalek rrot: r43573 | cotto++ | branches/one_make/tools/dev/checkdepend.pl:
[checkdepend] simplify control flow, only run one test per file, add a plan
19:57
20:40 thetao joined
thetao Hi... I'm trying to build Parrot on Ubuntu, and am getting an error " 20:44
"src/runcore/main.c:777: error: ‘Parrot_DynOp_core_cg_2_0_0’ undeclared (first use in this function)" when running make.
cotto It sounds like you've upaded from svn but have some stale files. Try running make reconfig && make. 20:46
cconstantine cotto: does 'make reconfig' effectivly do a make realclean && perl Configure ? 20:48
cotto yup 20:49
except that it runs Configure.pl with the same args that were passed to it when the makefile was last generated 20:50
It's a nice shortcut.
thetao cotto: thank you very much, that helped..
in that case, the args should be stored somewhere isn't it? where are they? 20:51
cotto thetao, glad to hear it
in Makefile
CONFIG_ARGS right near the top
cotto is knee-deep in makefiles atm
and sinking
headdesk 20:55
nm
21:18 payload1 joined
dalek rrot: r43574 | cotto++ | branches/one_make/tools/dev/checkdepend.pl:
[checkdepend] make checkdepends capable of spitting out file and line info
21:18
21:19 thetao left 21:46 bit-man left
dalek rrot: r43575 | mikehh++ | branches/one_make/tools/dev/checkdepend.pl:
fix codetest failures - cuddled else and an XXX at line 106 that perlcritic doesn't like
22:55
mikehh one_make branch - All tests PASS (pre/post-config, make corevm/make coretest, smoke (#31863), fulltest) at r43575 - Ubuntu 9.10 amd64 (g++ with --optimize) 23:03
23:13 kid51 joined 23:18 patspam joined
dalek rrot: r43576 | jkeenan++ | branches/one_make/tools/build/h2inc.pl:
Change return value of perform_directive() to array ref, as this is what next function takes as argument.
23:27
23:49 mtk joined 23:50 mtk left 23:59 purl joined