Parrot 0.9.1 Released | parrot.org/ | 451 RTs left!
Set by moderator on 24 February 2009.
00:07 Theory joined 00:08 AndyA joined
nopaste "mikehh" at 90.209.117.216 pasted "myconfig for smolder #18710" (21 lines) at nopaste.snit.ch/15810 00:12
dalek rrot: r37185 | cotto++ | trunk (6 files):
[PMC] finish converting the ParrotLibrary PMC to ATTRs, this time without
purl i guess breaking the build is codermattie's nightmare
mikehh rurban: as I mentioned the only diff in myconfig for smolder #18712 was the date 00:16
rurban i look at config_lib.pasm, myconfig is way too short 00:17
dalek rrot: r37186 | NotFound++ | trunk (2 files):
[core] add Parrot_PMC_push_pmcval and Parrot_PMC_newclass to the extend API
00:20
mikehh I'll paste the diff for them if you like 00:24
rurban already have it
mikehh ah ok
rurban I'm busy with something else now
mikehh not a problem - I think I need a break anyway 00:25
00:44 kid51 joined 00:47 particle joined 00:52 protorom joined 00:55 Theory joined
dalek rrot: r37187 | cotto++ | trunk/src (3 files):
[PMC] use VTABLE functions instead of messing directly with ParrotInterpreter PMC internals
01:07
Whiteknight how do I get HLLCompiler to output pir code instead of executing it 01:18
?
Coke_afk use --target=pir ? 01:19
Whiteknight thanks Coke, that did it 01:21
according to my output here, all my function parameters are being labeled as ":optional" for some reason
and I'm trying to list one as :slurpy, but that's not showing up in the PIR 01:22
01:30 arbingersys joined
dalek rrot: r37188 | coke++ | trunk (2 files):
Update the verbiage on src/ops/experimental.ops to more closely follow

  Mark those opcodes in here that are removable with :deprecated. (Which is
a little redundant, but let's give these all the benefit of the doubt for 1.0)
01:57
02:07 arbingersys left
Coke wonders if anyone else agrees with him about just letting old languages die. 02:09
davidfetter have you ever retired a new language by mistake, mr. coleda? 02:12
Coke No. But in my position, that is a risk. 02:13
dalek rrot: r37189 | jkeenan++ | trunk/docs/pdds/pdd09_gc.pod:
Correct extensive line length to conform to coding standard for PDDs.
rrot: r37190 | jkeenan++ | trunk/compilers/tge/TGE/Grammar.pir:
Correct POD syntax error.
02:17
rrot: r37191 | coke++ | trunk (8 files):
Move all non-experimental ops into more permanent homes.
02:41
rg *sigh* just when we had the most common files current. 02:42
dalek rrot: r37192 | jkeenan++ | trunk/compilers/tge (3 files):
Delete 3 superfluous '=cut' POD directives.
02:45
02:45 Andy joined
kid51 Coke: src/ops/experimental.ops line 22 is generating a fail of the c_cppcomments.t coding standard (though admittedlly it shouldn't). 02:50
dalek rrot: r37193 | jkeenan++ | trunk (11 files):
Merge update_pod branch into trunk. This consolidates all tests of POD under

Parrot::Test::Pod and Parrot::Test::Pod::Utils. Also, this corrects POD syntax and formatting errors detected by these tests. Cf.:
  trac.parrot.org/parrot/ticket/292.
Coke kid51: it's probably the http:// link. 03:34
kid51 Yes, it's definitely that link. Just opened TT. 03:35
Coke it's in POD, which is skipped when processing ops file.
k, I'll comment on ticket.
kid51 If you want to make it pass the test, you can simply say 'trac.parrot.org'. 03:36
TT 414
cotto That assumes that passing the test is more important than having a link. 03:37
dalek rrot: r37194 | jkeenan++ | failed to fetch changeset:
Insert comment re spurious test failure as reported in TT 414.
03:42 janus joined
dalek rrot: r37195 | cotto++ | trunk/src/thread.c:
[PMC] change more direct internals access to VTABLE functions
03:45
Coke chuckles at find_sub_not_null_p_sc 03:48
... 03:50
no, at cpanratings.perl.org/#5424
cotto Coke, r37191 breaks t/library/mime_base64.t for me.
(it may be a realclean issue. checking...) 03:51
Coke cotto: PBC_COMPAT changed. 03:52
so, yes, try after a realclean.
there are known makefile deps missing on that file.
cotto the makefile also isn't terribly smart about dynops-related code either 03:54
Coke, it passes after make realclean. 03:59
(daylight saving time)-- 04:12
especially because it means #ps is at a different (relative) time next week 04:13
although the bit about losing sleep isn't so great either
dalek rrot: r37196 | cotto++ | failed to fetch changeset:
[PMC] switch PMC_data in ParrotInterpreter (etc) to an ATTR
04:25
05:22 masak joined 06:43 mikehh joined 07:00 Tene joined 07:40 skv_ joined 07:45 eternaleye joined 08:50 mikehh joined
dalek rrot: r37197 | fperrad++ | trunk/config/gen/makefiles/languages.in:
[external language] add paraplegic (formerly APL)
08:51
09:04 barney joined 09:08 TiMBuS joined
TiMBuS hey duders. if i use parrot's install-dev, how is my language supposed to use its dynamic pmcs/ops? 09:11
am i meant to copy them to the parrot install dir? because i dont think i like doing that. permissions and such. 09:13
allison TimBuS: if you install them into a dynpmc directory within your language directory they will be found 09:18
sorry, a 'dynext' directory
TiMBuS well that was easier than i expected 09:20
allison++ 09:21
barney I think this should also be done for *.pbc in 'library'
allison barney: done 09:22
(I did both at the same time)
also, include
so, most languages should have (or create during their build process) a dynext, library, and include directory in their main directory
barney yesterday I had to copy library/pipplib.pbc to a the parrot dir runtime/parrot/library when calling 'pipp' from outside the language dir 09:24
I'll check that after rebuilding 09:25
allison barney: yes, it's looking in ./library 09:26
barney: for a truely portable install, you want to put it in /usr/lib/parrot/<version>/languages/pipp/library 09:28
(using the config values for "prefix" and "versiondir")
barney ./library is fine for devel 09:29
for running the PHP 5.3 testsuite I can use an installed Pipp, so I'm happy with that 09:30
allison barney: aye, I figure the main thing is that users need to be able to run a full 'make test' on the language before running 'make install'
and devs also need to repeatedly run 'make test' on a non-installed working copy 09:31
barney yep 09:32
09:35 Maghnus joined
barney allison: how would I get to Parrot::Harness::Smoke when testing a checked out 'pipp' with an installed Parrot? 09:40
allison barney: grab the config entry for 'lib', tack on the config entry for 'versiondir', and tack on 'tools/lib' 09:41
barney: e.g. /usr/lib/parrot/0.9.1-devel/tools/lib
if it's in a makefile, I have some Rakudo patches that are a good example 09:42
barney I need it for t/harness, preferably I'd generate only a tiny Module like Pipp/SetINC.pm 09:44
allison barney: are you grabbing values from parrot_config anywhere? 09:45
barney yes, in Configure.pl also for test scripts in Pipp::Test::read_parrot_config() 09:46
allison barney: okay, great 09:47
if SetINC is generated from within Configure.pl, the you can use the values of 'prefix' and 'versiondir' from there 09:48
barney Yes. Maybe also set a var, so that looking for parrot_config only happens once 09:50
allison barney: yes, good idea
purl couldn't get the headlines: hachi.kuiki.net/rss/randline.pl/gibi_long.txt wasn't successful
dalek pp: 4c12f7c | (Bernhard Schmalhofer)++ | dynext/pipp_group.so:
pipp_group.so should not be checked in
10:04
shorten dalek's url is at xrl.us/beiq4h
dalek pp: c49602b | (Bernhard Schmalhofer)++ | build/templates/ (2 files):
Put pipp_group.so into the hll dir 'dynext'
shorten dalek's url is at xrl.us/beiq4j
dalek pp: aec5eee | (Bernhard Schmalhofer)++ | build/PARROT_REVISION:
Merge branch 'master' of git@github.com:bschmalhofer/pipp
shorten dalek's url is at xrl.us/beiq4m
10:04 alvar joined 10:07 mikehh joined
barney line 47 of pdd30: Shouldn't that be F</usr/lib/parrot/<version>/library/> ? 10:24
10:26 rurban joined
dalek n: 44c4b1d | Jarrod++ | (7 files):
Updated the build process (fperrad++). Also added pred/succ builtins for better compatibility with 'joy' code.
10:31
shorten dalek's url is at xrl.us/beiq42
dalek rrot: r37198 | barney++ | trunk/config/gen/makefiles/root.in:
[build] Mention 'install-dev' in 'make help'
10:39
pp: 107120c | (Bernhard Schmalhofer)++ | build/PARROT_REVISION:
Fetch Parrot r37197 with 'perl Configure.pl --gen-parrot'
10:46
shorten dalek's url is at xrl.us/beiq5i
dalek pp: 66a790c | (Bernhard Schmalhofer)++ | (3 files):
Merge branch 'master' of git@github.com:bschmalhofer/pipp
shorten dalek's url is at xrl.us/beiq5k
10:51 elmex joined 11:06 elmex joined
dalek rrot: r37199 | barney++ | trunk/docs/pdds/draft/pdd30_install.pod:
[pdd30] directory 'library' is version specific
11:36
kudo: 4947aea | (Moritz Lenz)++ | docs/ChangeLog:
[ChangeLog] mention last/next working in grep()
11:37
shorten dalek's url is at xrl.us/beiq5z
dalek rrot: r37200 | fperrad++ | trunk (1454 files):
[cage] remove Copyright svn property. See TT #416
11:48
mikehh Hi, when I run make fulltest it exits after failures in the jit runcore rather than continuing with the r and S runcores and the rest 11:50
I am on i386 linux at the moment 11:51
dalek pp: aabbff7 | (Bernhard Schmalhofer)++ | (3 files):
Generate lib/Pipp/FindParrot.pm and use it in t/harness
11:54
shorten dalek's url is at xrl.us/beiq6w
dalek pp: c0e01f7 | (Bernhard Schmalhofer)++ | (3 files):
Remember the exe 'parrot_config' used in Configure.pl
shorten dalek's url is at xrl.us/beiq6y
dalek rrot: r37201 | fperrad++ | trunk (1338 files):
[cage] remove svn:keyword property (not svn:keywords)
12:09
rrot: r37202 | rurban++ | trunk (2 files):
Clarify and change the broken cygwin opengl logic:

  - else w32api native GLUT is tried.
  - you must uninstall freeglut and its devel packages to use native GLUT
12:21
12:28 particle joined
dalek rrot: r37203 | fperrad++ | trunk/src/ops/math.ops:
[codingstd] remove trailing space
12:29
pp: dcc8595 | (Bernhard Schmalhofer)++ | (3 files):
Make an effort to save full path to parrot_config.
12:41
shorten dalek's url is at xrl.us/beiq8f
dalek rrot: r37204 | fperrad++ | trunk/tools/install/smoke_languages.pl:
[install] add language Paraplegic (APL)
12:46
kudo: 137dcfa | (Cory Spencer)++ | src/ (2 files):
Implement .map in Pure Perl 6

commit cc76a676174b883e5b9025d36fdd34e9b7e13fe0 Merge: f1d4f77... ed4cd14... Author: Cory Spencer <cspencer@sprocket-2.local> Date: Sat Mar 7 19:03:50 2009 -0800
   Merge branch 'master' of git://github.com/rakudo/rakudo into any-pm
   Conflicts:
   \tsrc/setting/Any-list.pm
commit f1d4f77de8c5a46ecfed86bf9060d2eb5dc9072a Author: Cory Spencer <cspencer@sprocket-2.local> Date: Sat Mar 7 18:09:59 2009 -0800
   Remove the PIR map method and replace with a Perl 6 version.
commit a8824fac6d139c91352ee9f775a5e37eca4d446c Author: Cory Spencer <cspencer@sprocket-2.local> Date: Sat Mar 7 12:55:10 2009 -0800
   Removed PIR of grep and replaced with P6 version.
Signed-off-by: Moritz Lenz <moritz@faui2k3.org>
12:48
shorten dalek's url is at xrl.us/beiq86
12:54 elmex joined
dalek rrot: r37205 | rurban++ | trunk/t/pmc/bignum.t:
[t] bignum.t

  - add 2 tests for BigInt downgrading with divide by zero
12:54
rurban msg pmichaud can we please have a rakudo perl6 manpage finally? I have a docs/running.pod patch since 8 months 13:05
purl Message for pmichaud stored.
nopaste "rurban" at 93.210.245.173 pasted "perl6 manpage docs/running.pod" (15 lines) at nopaste.snit.ch/15811 13:06
moritz rurban: ticket number? 13:11
rurban no specific ticket. it was RT 56554-make-install-lang.patch 13:12
all the languages are not installable, so I'm worried about making a parrot-languages release, which I'm preparing right now 13:13
dalek kudo: 8b2a4ad | (Cory Spencer)++ | src/ (2 files):
Replaced the PIR Any.pairs method with a Perl 6 version.
13:14
shorten dalek's url is at xrl.us/beiraj
dalek tracwiki: v2 | rurban++ | SmolderTaskList 13:48
tracwiki: TT #396</a>
tracwiki: trac.parrot.org/parrot/wiki/Smolde...ction=diff
shorten dalek's url is at xrl.us/beirbg
dalek tracwiki: v3 | rurban++ | SmolderTaskList
tracwiki: added myconfig and config_lib.pasm to report.tar.gz
tracwiki: trac.parrot.org/parrot/wiki/Smolde...ction=diff
shorten dalek's url is at xrl.us/beirbi
NotFound The annotation opcode says "Gets all bytecode annotations in effect at the current point". What is the "current point" ? 13:51
13:52 Whiteknight joined
rurban NotFound: you have to ask jonathan 13:53
13:54 kid51 joined
NotFound It's using expr NEXT() , which looks wrong. 13:54
And if I fix it, of course several text fails... because the test are also wrong IMO 13:55
test
And the entire thing has some sense because PackFile_Annotations_lookup is also wrong 13:56
rurban It's still not clear to me how languages should by packaged at all. They have to wait for a stable parrot release and release it then. B8ut most of the packages have no maintainer, and no packager. So they will be packaged with parrot by the parrot packager
Bu the parrot packager had no language release to point at, just a repo state
chicken-egg.
moritz rurban: I'm adding an enhanced docs/running.pod to rakudo right now 13:57
rurban NotFound: you also have to check rakudo, but annotations were added for rakudo debugging
s/but/because/
moritz: thanks 13:58
otherwise no packaging will happen, esp on debian
NotFound And to make the thing more funny, the anotation of the exception use the resume address instead of the throwing point, wich is wrong, but looks good because the other things are wrong %-)
rurban NotFound: do you have a patch already? 13:59
NotFound rurban: no, I still don't know how to fix the exception.
kid51 question: What does this mean? make: `fulltest' is up to date. 14:01
NotFound At least I finally managed to understand the annotations thing.
rurban language packaging: either mark up-lang with a revision number in the makefile or add a tardist target to be able to save the language state
This is far too much work for a packager, I'm angry, others will simply reject it. 14:02
kid51 How can a test target be 'up to date'?
NotFound kid51: by creating a file with that name, for example.
rurban kid51: when all make fulltest dependencies are older than the fulltest target 14:03
make can only handle filedates
NotFound fulltest has no dependencies
kid51 Hmm, I see I have this file in my top-level directory:
dalek kudo: a6bd3a0 | (Moritz Lenz)++ | docs/running.pod:
[docs] added a man page as docs/running.pod
kid51 -rw-r--r-- 1 jimk jimk 32 Feb 17 13:22 fulltest
shorten dalek's url is at xrl.us/beircm
rurban but fulltest has recursive deps and some of them are files 14:04
kid51 Would that file have been created the last time I ran 'make fulltest'?
rurban kid51: no, fulltest shoudl always be run. check if there's a file with that name
NotFound kid51: most probably a typing mistake like make > fulltest 14:05
kid51 Ah, that sounds plausible. I removed the file and am now doing make fulltest. 14:06
Thx
rurban mikehh++ for testing really all in TT #420 great! 14:19
mikehh rurban: I will try the same for AMD64, but I am a bit wary of it 14:21
14:48 skv joined 15:14 alvar joined
dalek rrot: r37206 | rurban++ | trunk/config/gen/makefiles/languages.in:
[languages]

  - resort alphabetically
  - add missing help lines
15:22
nopaste "NotFound" at 213.96.228.50 pasted "Annotations fixes - Big patch" (839 lines) at nopaste.snit.ch/15812 15:24
NotFound Finally I figured a way to make it work 15:25
rurban adding src to Parrot_ex_throw_from_op might require a ticket :) 15:26
NotFound Yeah, it can break a lot of things
rurban throwpoint is a good name? I never heard that elsewhere 15:27
NotFound rurban: that's one of the reasons to choose it. I can search for it whithout confusions
rurban did you test rakudo with that patch?
NotFound Not yet 15:28
rurban throwpoint - I mean in other software projects
NotFound I don't care. Is easily searchable, so it takes almost zero time to change it after discussion. 15:29
rurban ok. still thinking...
purl www.terrybisson.com/meat.html
15:30 gryphon joined
rurban seen jonathan 15:32
purl jonathan was last seen on #parrot 9 days, 18 hours, 6 minutes and 3 seconds ago, saying: Bratislava, of course! :-) [Feb 26 21:26:20 2009]
rurban NotFound: the only affected language seems to be tcl 15:34
ack Parrot_ex_throw_from_op => tcl/src/ops/tcl.ops 15:35
NotFound I need a faster machine
rurban And I need a faster OS
15:37 ron joined
NotFound rakudo builds and pass test 15:38
rurban Is pdd23_exceptions.pod violated somehow?
NotFound I think that was the current implementation what was violating specs and internal doc 15:39
rurban I see nohting first-hand. Some parts are still not implemented anyway
maybe it's good to update pdd23_exceptions.pod also then 15:40
The only problem seem to be annotations
yep, and a testcase for the persuasion would be great :) 15:41
NotFound "Returns a PMC representing the bytecode annotation with the key specified in "name" at the point where the exception was thrown"
rurban ah, good.
ron If a pmc has an hll modifier in its pmclass declaration, a namespace with the name of the pmc should be installed in the hll namespace specified by the modifier and not the parrot hll namespace. 15:42
NotFound Now it does exactly that.
ron Seems not to be the case right now - anyone care to agree/disagree.
NotFound rurban: the testcase was just that I was completely unable to find a sane way to use the annotations from trace, debugger, whatever.
rurban maybe a parrot_debugger testcase? 15:43
this test already has the machinery
ron: doesn' this bug already have a TODO testcase? 15:44
NotFound rurban: the problema is that the wrong way of work is sparsed form several components, maybe some parts are workarounds for the others. So the only reasonable way to show that is bad is to look at the code and the docs. 15:45
rurban hmm, not the best argument to persuade the superiors to get that in earlier 15:46
NotFound Well, I just can write a test to show that the problems can not be workarounded, because they can. 15:47
s/can/can't 15:48
The point is mainly: kill these workarounds and do it right.
15:54 particle1 joined
rurban t/pmc/packfileannotation.t is missing. 15:54
Coke .
ron rurban: I came across rt 45983 (rt.perl.org/rt3/Public/Bug/Display....?id=45983) - was that the one you had in mind for the namespace problem or was there something else? 15:55
rurban I mean even if we have no pmc methods yet, we should test the basics somehow if we want to fix the basics 15:56
ron: I just remember the #ps talking about that getting it in. 15:59
there was some new op, which should properly register any lang 16:00
Whiteknight in PCT, is there any way to tell at runtime whether we're in interactive mode or not?
16:00 clunker9__ joined, particle joined
pmichaud Whiteknight: I don't think there's a way to do that yet. 16:01
rurban ron: found it: compreg was it 16:02
Whiteknight okay, thanks pmichaud
Coke Whiteknight: tcl has a global variable, $tcl_interactive that tells us.
(which isn't PCT, but might be a useful thing to steal.)
16:04 jan joined
Whiteknight I'm trying to get around the lexical variable problem in interactive mode 16:04
ron should you need a compreg op to put the pmc class namespaces in the hll if there is an hll modifier?
NotFound rurban: for loading and mixing languages see examples/pir/interlangs.pir
rurban ron: see there. it is compreg indeed 16:05
NotFound ron: compreg gives you a compiler object for the language 16:06
Whiteknight oh pmichaud, I figured out the issue I emailed you about.
ron I sort of understand what compreg does but don't quite see how it addresses my last question. 16:07
NotFound Ah, sorry, I misunderstood 16:08
rurban ron: I'm also a rookie there. The "needs implementing" is still there
ron thanks 16:10
pmichaud Whiteknight: okay, I'm just going through my email now. 16:14
rurban anyone knows why pod is missing in the languages makefile? 16:20
16:27 particle joined, alvar joined
dalek kudo: a7214ac | (Moritz Lenz)++ | src/ (2 files):
re-implement List.min in Perl 6; Patch courtesy by bacek++
16:30
shorten dalek's url is at xrl.us/beirkh
dalek rrot: r37207 | rurban++ | trunk/config/gen/makefiles/languages.in:
[pod] add missing pod
16:33
16:48 tetragon joined 16:50 Tene joined 17:04 jhorwitz joined 17:19 alvar joined 17:25 davidfetter joined
dalek rrot: r37208 | NotFound++ | trunk/src (3 files):
[core] show annotations in traces and backtraces
17:53
rurban NotFound: Which pbc has annotations to test these? 17:55
NotFound rurban: In the repo? I think none. 17:57
rurban and during the build?
maybe we should move pbc_info.c to examples/tools and add an annotations segment there 17:58
NotFound Or we can kill pbc_info and add an option to pbc_dump 18:00
rurban pbc_info is just a stupid example, but maybe helpful as sample. You mean to reproduce the exact same output as pbc_info? 18:01
NotFound Yes 18:02
rurban I'm just revamping these a bit anyway...
to be able to read older pbcs and pbc_dump -h should work 18:03
But I leave to cinema in 20 minutes. 18:04
NotFound For this annotations commit I've used a simple workaround: pass the current position + 1 to the lookup function.
18:07 alvar joined 18:19 Maghnus_ joined
rurban NotFound: for better pbc debugging: trac.parrot.org/parrot/attachment/...tils.patch 18:22
shorten rurban's url is at xrl.us/beirt4
rurban leaving for 2 hours. later I will commit this tt384 patch 18:26
dalek tracwiki: v127 | allison++ | ParrotRoadmap 18:27
tracwiki: trac.parrot.org/parrot/wiki/Parrot...ction=diff
shorten dalek's url is at xrl.us/beirug
dalek tracwiki: v128 | allison++ | ParrotRoadmap
tracwiki: trac.parrot.org/parrot/wiki/Parrot...ction=diff
shorten dalek's url is at xrl.us/beirui
18:33 Psyche^ joined 18:45 Theory joined
dalek kudo: 167e251 | (Moritz Lenz)++ | src/setting/Any-list.pm:
make .map more Perlish, and fix complaints by pmichaud++

   * removed some type constraints on invocants
   * .map should work when lists become lazy, ie not querying @list.end
18:46
shorten dalek's url is at xrl.us/beirwp 18:47
dalek rrot: r37209 | allison++ | trunk/docs/pdds/pdd22_io.pod:
[pdd] Adding documentation on 'readall' method to I/O PDD.
19:00
19:05 contingencyplan joined
dalek kudo: 0f1c600 | (Moritz Lenz)++ | src/setting/Any-list.pm:
Remove type constraints that either don't make sense or aren't checked anyway
19:08
shorten dalek's url is at xrl.us/beiryv
19:27 mr_nice joined
mr_nice hi all, we have compiler construction this year at our university. So I want to ask if it is a good idea to use PASM as output language. c is our input language. 19:35
we are not allowed to use any existend parser or lexer 19:36
and the compiler should be able to compile it self
I allready did some googeling and found statements like parrot is better for dynamical languages and not for static languages like c is 19:37
any hints are very welcome :)
moritz there are multiple target languages that parrot understands 19:41
PASM, PIR (a bit more high-level), ...
PAST is a syntax tree which is even more high-level 19:42
and POST is a more low-level AST
but yes, parrot is more optimized for dynamic languages 19:43
dalek tracwiki: v129 | allison++ | ParrotRoadmap 19:44
tracwiki: trac.parrot.org/parrot/wiki/Parrot...ction=diff
shorten dalek's url is at xrl.us/beir5f
dalek tracwiki: v130 | allison++ | ParrotRoadmap
tracwiki: trac.parrot.org/parrot/wiki/Parrot...ction=diff
shorten dalek's url is at xrl.us/beir5h
rg there is already a rudimentary implementation of a c parser for parrot. i've had a quick look at it and the most obvious problem to me is how to get pointers working with a garbage collected vm. 19:46
mr_nice moritz: are there any problems using PASM with an static language? or is it just an optimization problem? the mnemonics looks nice
is it possible to use parrot without garbage collection?
dalek kudo: 051ad51 | (Moritz Lenz)++ | src/setting/Any-list.pm:
remove implicit type constraint in .pairs
19:47
rg no, i don't think so. parrot is a vm for high level languages. it's not trying to emulate a cpu.
shorten dalek's url is at xrl.us/beir5q
mr_nice rg: in your opinion a subset of c wihout pointers could be done? 19:48
moritz mr_nice: I don't see any problems right now (except pointers), but I'm not really an expert :/ 19:49
mr_nice moritz: thanks
rg yes, probably, but then a lot of things in c are done with pointers. 19:50
moritz like arrays ;-)
rg and string processing ;)
mr_nice rg: yes that is right we would need to use a makro for funktions/procedures two 19:51
s/two/too
thanks for your opinions
rg but if you're learning about compilers, i think c may be a bad choice for a source language 19:52
moritz parrot is really nice because it comes with a high-level grammar engine. Pity you're not allowed to use that :/
rg indeed 19:53
mr_nice rg: something like pascal would be a better choice? 19:54
rg: or better to ask which language would you choose? 19:55
rg i would think so, yes. but then, i've never actually studied compilers ;)
mr_nice I already read about something like pascal is easier than c 19:56
seem I need to learn pascal 19:57
rg i was thinking pascal or modula or maybe even a completely artificial language
mr_nice the problem about an artificial language would be that we need to write two compilers
rg also, if you'd like to learn more about the compiler toolkit in parrot, you might want to look at the squaak tutorial
mr_nice one bootstrap and the real one
thanks for the hint
rg i found that to be really helpful (even though it hasn't been updated for the latest parrot) 19:58
mr_nice at least there is a tutorial at all :) 19:59
rg well if you're targeting a vm that doesn't already have a compiler for your language, you always have the bootstrapping problem. 20:00
mr_nice that is true my hope was the c99 compiler for parrot
our class leader suggest for c the usage of pre processor makros for artificial languages 20:01
20:02 ujwalic joined
rg i don't think parrot's c99 is that far along yet. i'm not even sure it already handles all the (or even any) preprocessor statements. 20:03
mr_nice ok thanks
rg but i'm sure any help to get it further would be welcome ;) 20:04
mr_nice hehe right
maybe for fun after the course 20:05
ujwalic japhb:what is the nopaste link for #parrot 20:11
japhb nopaste? 20:12
purl nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others)
clunker3 pasta.test-smoke.org/ or paste.husk.org/ or nopaste.snit.ch:8001/ or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/
japhb I usually use snit.ch, IIRC
nopaste "ujwalic" at 59.96.98.91 pasted "output of > perl Configure.pl --verbose-step=gen::opengl" (103 lines) at nopaste.snit.ch/15813 20:14
ujwalic japhb:gen::opengl output
japhb looking ... 20:16
Hmmm: 20:18
auto::opengl - Does your platform support OpenGL....................no.
That's a problem
Are you running svn head?
dalek kudo: 2daf6b7 | (Moritz Lenz)++ | docs/guide_to_setting.pod:
added "guide to setting" document
shorten dalek's url is at xrl.us/beir9s
ujwalic I think yes 20:21
japhb:can we configure while parrot is building/compiling on another console 20:22
japhb ujwalic: I don't think so, but I'm not expert on that ... 20:27
Hmmm, how are you checking INCLUDE? Via the GUI or via the shell you configured in? 20:28
If I recall my ancient Win32 days, if you opened the shell before making the changes to INCLUDE via the GUI, the changes would not appear in the shell window.
ujwalic japhb:I think my vcvars32.bat was not run correctly or my parrot check out is not correct 20:29
japhb:now I got a very verbose output
japhb go ahead and nopaste ...
nopaste "ujwalic" at 59.96.98.91 pasted "output of > perl Configure.pl --verbose-step=gen::opengl" (423 lines) at nopaste.snit.ch/15814 20:31
ujwalic japhb:how do we know which glut lib is used, from the output 20:32
japhb looking ... 20:37
auto::opengl - Does your platform support OpenGL...........yes, GLUT 5. 20:38
That's "official" GLUT, not freeglut. 20:39
It found three different groups of OpenGL headers for you
ujwalic japhb:I mean glut.h from which dir 20:40
yes
japhb It only found one glut.h:
C:/wrk/mesa/Mesa-7.3/include/gl/glut.h
Look under "Found the following OpenGL headers:"
Oy vey, yet another messed up GLUT to work with. 20:41
ujwalic japh: great thank you :)
japhb Can you please email your glut.h to me? (Email coming) 20:42
"Could all the GLUT authors *please* stop messing around and just make a simple header. That'd be great ...." 20:43
20:44 Whiteknight joined 20:46 geof joined
japhb ujwalic: I'm going AFK for lunch, but will read scrollback later. 20:51
ujwalic japhb:mailed it
21:00 donaldh joined
diakopter ujwalic: which command shell, perl, and compiler are you using 21:11
ujwalic cmd.exe with vsvars32.bat and VS9.0 (VS 2008) 21:13
diakopter cygwin/bash/gcc? cmd.exe? msvc? strawberry perl?
ok
I use that too, so I can help
which perl
ujwalic activesatate 5.8.8 21:14
diakopter ok
could you nopaste the error message?
ujwalic diakopter:link: invalid option -- d
diakopter need some more context
could you nopaste the error message with 20-50 lines of preceding context? 21:15
nopaste?
clunker3 pasta.test-smoke.org/ or paste.husk.org/ or nopaste.snit.ch:8001/ or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/
purl well, nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others)
dalek rrot: r37210 | allison++ | trunk/src/library.c:
[cage] Ignore all dots in directory names, not just the ones in version
nopaste "ujwalic" at 59.96.98.91 pasted "win32 error due to link options" (60 lines) at nopaste.snit.ch/15815 21:16
diakopter well, my link.exe at a similar path doesn't give error messages like that 21:19
Microsoft (R) Incremental Linker Version 9.00.30729.01
LINK : warning LNK4044: unrecognized option '/-help'; ignored
where I sent in link --help 21:20
nopaste "NotFound" at 213.96.228.50 pasted "A toy language to test code annotations" (116 lines) at nopaste.snit.ch/15816
diakopter ujwalic: what happens if you type link --help
(I'm guessing same as mine)..
ujwalic diakopter: LINK : warning LNK4044: unrecognized option '/-help'; ignored 21:21
diakopter yeah
so the parrot build is using some other link
that gives this error message: Try `link --help' for more information
ujwalic in README it is mentioned about link.bat
diakopter oh, you must have cygwin's stuff in your path 21:22
cygwin's stuff needs (generally) never to be in the %PATH% when using cmd.exe
ujwalic yes i have cygwin and gnuwin32
but gnuwin32 is in path 21:23
diakopter you must've added the cygwin bin dir to your path manually, b/c it doesn't do it itself, b/c it's not a good idea... all the tools are built to work under a non-cmd.exe shell; it's a fluke if any of them work in cmd.exe
ok, does gnuwin32 include a link then?
ujwalic which link ... gave me F:\\APP\\DEV\\Microsoft\\Microsoft Visual Studio 9.0\\VC\\BIN\\link.EXE 21:24
diakopter right, but that doesn't mean configure can't find another one in the ath
path
ujwalic ok
diakopter also, the "which" you're using might treat the path differently from CMD.exe 21:25
try this: pwhich link
(pwhich comes with activeperl, usually)
ujwalic same
diakopter hrm, well... I suggest making a wrapper for your vcvars.bat that cleans up the path a lot 21:26
rurban ujwalic: strawberry perl or activeperl? looks like mingw link is in your path first
diakopter parrotenv.cmd or something
rurban: no, which link and pwhich link both return the VC link 21:27
see the nopaste
(where it's using activestate perl)
rurban but vc link understands this syntax
Try `link --help' for more information. is only printed by cygwin or mingw link 21:28
diakopter please read scrollback and nopaste.
rurban diakopter: I didn't see that he pasted his PATH yet 21:29
diakopter good point.... ujwalic echo %PATH%
rurban first he should fix his PATH
nopaste "ujwal" at 59.96.98.91 pasted "output of configure step inter::progs" (10 lines) at nopaste.snit.ch/15817 21:30
rurban NotFound: don't you have a better name? lorito.cpp and lorito.c in the same dir begs for trouble 21:31
NotFound rurban: I like to use silly names for silly things 21:33
rurban well, I've renamed it for me to lorito-annot.cpp and put it to your embed sample
nopaste "ujwal" at 59.96.98.91 pasted "PATH" (67 lines) at nopaste.snit.ch/15818 21:34
NotFound I'm not suer if this must go to examples. Redoing it with pir or nqp or something will be better.
Hey... or wtih himself :D 21:35
ujwalic diakopter: check nopaste
rurban: check nopaste 21:36
diakopter ujwalic: as both I and rurban have said, you'll need to remove F:\\APP\\UTIL\\GnuWin32\\bin (it's in their twice) from your path as it's confusing configure
rurban I did, you had a script to be able to paste it! way too big for a simple PATH
NotFound rurban: oh, I don't read well... this is not lorito, is torito, little bull. 21:38
nopaste "rurban" at 93.210.245.173 pasted "my sample init.bat scripts for mingw and msvc" (17 lines) at nopaste.snit.ch/15819
rurban oh good name then!
NotFound Free spanish lessons on #parrot 21:39
ujwalic diakopter:I'll try removing that
rurban I spend some months surfing in lanzarote but forgot all my spanish since then 21:40
NotFound I think in Lanzarote you can learn more german than spanish :D 21:41
rurban Not where I stayed. In La Santa were only crazy spanish locals 21:42
NotFound There are crazy spanish everywhere 21:43
rurban hmm, pbc_dump workds with these annotations, pbc_disassemble also
NotFound And parrot_debugger 21:44
ujwalic rurban: my nopaste was a one-liner output
rurban yup: (pdb) n
src/debug.c:1091: failed assertion 'cur_opcode'
NotFound Yes, I've not figured yet a good way to stop cleanly at end of programs. 21:45
rurban ujwalic: yes, good trick. can you do grep link config_lib.pasm? what link do you get there?
purl What?! Where?! When??! Why? Who?!
ujwalic ruban: set P0["cc_ldflags"], "/link" 21:47
ruban:set P0["link"], "link"
rurban good thanks
ujwalic set P0["link"], "link" 21:48
rurban still same problem. Makefile picks up the wrong link. Clean your PATH
ujwalic doing it
purl unf!
rurban I guess you are getting the coreutils link.exe from gnuwin32 21:49
maybe your make prepends the gnuwin32 path
diakopter rurban: also, ujwalic might've run some portion of configure before running vcvars in this shell
rurban he should have got either link for vc or ld for gnuwin 21:50
ujwalic diakopter: I am trying in a new console 21:51
rurban his link syntax is consistent though
diakopter i'd do a make realclean then start a new shell.. then vcvars...
(then configure)\\ 21:53
NotFound Big problem for torito, annotations are not recognized before .param
nopaste "ujwal" at 59.96.98.91 pasted "Build error on Win32" (29 lines) at nopaste.snit.ch/15820 22:11
ujwalic rurban: any clue why it failed
rurban already wrote it above: maybe your make.exe prepends the gnuwin32 path 22:12
ujwalic look at nopaste
linke is fine now
rurban either use activeperl with msvc or mingw with gnuwin32, but dont mix it 22:13
ujwalic sure
error:imcc:No such file or directory
in file 'src/PAST/Compiler.pir' line 39
included from 'src\\PAST.pir' line 1
dalek kudo: ab00c66 | (Moritz Lenz)++ | docs/guide_to_setting.pod:
[docs] add an =encoding directive for kjwcode++
shorten dalek's url is at xrl.us/beisi3
rurban ujwalic: its missing .include "cclass.pasm" hmm. 22:16
ujwalic how do i fix it
whati is PARROT_RUNTIME is for
rurban your prefix is broken, so parrot cannot find the libpath 22:17
diakopter ujwalic: did you do make realclean? 22:18
rurban PARROT_RUNTIME overrides the prefix
ujwalic ys
yes
doing it again
diakopter sorry, nmake realclean I mean :) 22:20
ujwalic :)
my PARROT_RUNTIME was pointing to installation on 0.9.1
rurban ok, now you've got it 22:21
ujwalic i did that to run some examples
rurban better put your environment into a batch, like my init.bat. then you don't forget your steps and its easily repro 22:24
ujwalic i too use many batch and PS1 files 22:25
dalek rrot: r37211 | allison++ | trunk/lib/Parrot/Docs/Section/Tests.pm:
[cage] Removing 't/doc' from the documentation generator, as the
22:27
kudo: 8bbc31c | (Moritz Lenz)++ | docs/guide_to_setting.pod:
add links to guide_to_setting.pod.

asking.
ujwalic build successful :)
shorten dalek's url is at xrl.us/beiskc
ujwalic how to install parrot to diff dir after building 22:29
moritz configure it with --prefix=/different/dir/ 22:30
then build again
ujwalic kool 22:31
now rakudo is also building
purl okay, ujwalic.
moritz purl: rakudo? 22:32
purl rakudo is The Way of The Camel or github.org/rakudo/rakudo.git or use.perl.org/~pmichaud/journal/35400 or rakudo.org or Part of a balanced breakfast!
ujwalic moritz: is it same for rakudo 22:33
rg now rakudo? 22:34
purl somebody said now rakudo was broken for me or building
rg forget now rakudo 22:35
purl rg: I forgot now rakudo
dalek rrot: r37212 | rurban++ | trunk (7 files):
[core] pbc utils

  - pbc_dump -h outputs only the header
  - on TRACE_PACKFILE:
   - unify --debug args to -D for pbc_dump, pbc_disassemble
   - -D|--debug takes an argument 1,2,4
   - fix OFFS and use it in packfile.c
   - fix "Unsupported floattype error" fatal
  - print UUID data
23:04
rrot: r37213 | rurban++ | trunk/languages/squaak/Configure.pl:
[squaak] allow building in build_dir #1
23:16
nopaste "rurban" at 93.210.245.173 pasted "Parrot::Test comment and code about t/native_pbc/*.t with -r" (12 lines) at nopaste.snit.ch/15822
nopaste "NotFound" at 213.96.228.50 pasted "A toy language to test code annotations - bootstraped version" (116 lines) at nopaste.snit.ch/15823 23:20
dalek rrot: r37214 | rurban++ | trunk/src/pmc/bignum.pmc:
[pmc] rename bn vars to bn_tmp/bn_value to omit compiler warnings
23:22 bacek_ joined 23:25 kid51 joined
nopaste "NotFound" at 213.96.228.50 pasted "A toy language to test code annotations - C++ version" (131 lines) at nopaste.snit.ch/15824 23:25
NotFound Nice, native version is shorter than c++ 23:26
Well... counting the comments X-)
rurban I don't really see the usefullness of torito.cpp. the test.pir would be enough to be added to t 23:29
dalek rrot: r37215 | rurban++ | trunk/tools/dev/install_files.pl:
[install] TT #347 install sanity

  - for every .exe check if there's an installable. Fail if not
   This needs to be revised with the patch in RT #40817
   autogenerated MANIFEST.generated
NotFound Just that I wrote it first, and helped to write the other. 23:30
rurban # test.tir => test.pir
the 2nd
23:30 Theory joined
NotFound The main reason is to tease all language writers unable to write annotations }:) 23:31
rurban maybe a benchmark will convince them 23:32
NotFound BTW there are already some test of annotations in t 23:36
moritz it's always good to have a set of tests that were written by somebody who didn't do the implementation ;-) 23:38
NotFound I don't knwo who wrote the implementation nor who wrote the tests. 23:40
moritz jonathan did 23:41
rurban NotFound: where?
NotFound Sometimes I even forget what I do myself %-)
rurban: t/op/annotate.t 23:42
rurban good. now you only have to fill in your failing cases :) 23:43
NotFound I've been unable to find a failing case, and the workaround works fine, so I think I'll delay the discussion after 1.0 23:44
rurban ascent++ # for giving me a amd64 shell 23:45
ascent :) 23:47
NotFound Anyway I don't like much the solution of adding a param to throw_from_ops 23:48
dalek rrot: r37216 | rurban++ | trunk/src/packfile/pf_items.c:
one more debugging-only TRACE_PACKFILE>0 fix
23:58