|
svn switch --relocate svn.openfoundry.org/pugs svn.pugscode.org/pugs/ | run.pugscode.org | spec.pugscode.org | paste: sial.org/pbot/perl6 | pugs.blogs.com | dev.pugscode.org/ Set by putter on 11 February 2007. |
|||
| avar | audreyt: sial.org/pbot/23458 | 00:32 | |
| lambdabot | Title: Paste #23458 from Someone at 85.197.228.236 | ||
| avar sleep finish this tomorrow & | |||
| but everything there works now except ->captures( sub {} ); and ->named_captures, just some leg work:) | |||
|
00:46
nipotaway is now known as nipotan
01:19
amnesiac joined
01:27
diakopter left,
diakopter joined
01:47
weinig|bbl is now known as weinig
02:14
dolmans joined
02:39
offby1` joined
02:42
offby1` is now known as offby1
03:07
nipotan is now known as nipotaway
03:10
nipotaway is now known as nipotan
03:18
nipotan left
03:22
nipotan joined
03:27
nipotan is now known as nipotaway
03:28
nipotaway is now known as nipotan
03:33
amnesiac joined
03:40
fridim joined
03:47
justatheory joined
04:06
Schwern joined
04:22
amnesiac joined
04:26
nipotan is now known as nipotaway
04:30
nipotaway is now known as nipotan
04:51
mjk joined
04:53
amnesiac joined
05:08
Debolaz2 joined
05:11
mj41 joined,
ayrnieu joined,
rashakil_ joined,
cognominal joined,
scw joined,
ruz joined,
cj joined,
sri_ joined,
integral joined,
lambdabot joined,
pjcj_ joined,
ludwig- joined,
masak joined
05:35
REPLeffect joined
06:12
|mjk| joined
06:14
BooK joined
06:16
H0LE joined
06:59
breakeven joined
07:07
REPLeffect left
|
|||
| gaal | rehi | 07:18 | |
| :($x) :+: :($x, $y?) = :($x), or :($x, $y?) ? | 07:32 | ||
| svnbot6 | r15672 | gaal++ | * SigMonoid: some more presumptions for review | 07:40 | |
| audreyt | gaal: the latter | 07:52 | |
| lambdabot | audreyt: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
| audreyt | gaal: if it's :($x), \(1,2) would bind to it | ||
| that violates the property that no-bind-to-unify equals to no-bind-to-orig | 07:53 | ||
| @moosages | |||
| lambdabot | Limbic_Region said 8h 31m 27s ago: Win32 is no longer hanging on smoke - this means the changes have either fixed the problem or resulted in the hanging test failing prior to the hang | ||
| gaal | property = no-bind-to-unify => no-bind-to-either-of-orig yes? | 07:56 | |
| audreyt | aye | ||
| gaal | k | ||
| where are you planning on using this monoid? | |||
| audreyt | autogeneration of multi variants | 07:57 | |
| er, of protos, from multi variants | 07:58 | ||
| multi f ($x) {}; multi f ($x, $y) {} | |||
| f(=<>); # this ought to parse as Item, not as List context | |||
| gaal | *nod* | 07:59 | |
| audreyt | also, if a proto is already present, a multi must unify to it | ||
| if a multi unifies with proto into sigWhatever, it's rejected | |||
| (unless of course the proto is already sigWhatever) | |||
| so it's used in these two cases | |||
| which is critical to the new multi dispatch code | |||
| gaal | so defaults are really not important, are they? | ||
| audreyt | because that lets us eliminate the microinferencer | ||
| right. only the names are | 08:00 | ||
| gaal | $x = 42 is really quiv to $x? | ||
| k | |||
|
08:00
geoffb joined
|
|||
| geoffb | What is the perl 6 equivalent of local $/ = '' in Perl 5? | 08:01 | |
| gaal | hehe, multis with explicit sigWhatever protos are for funky business | ||
| audreyt | to expand on the microinferencer idea: currently in P.Eval.Var | ||
| multis dispatch using inferExpType | |||
| which is thoroughly bogus | |||
| because that way we can never deal with constraints | |||
| variants should dispatch using CaptVal not CaptExp | |||
| however, that requires a previous reduction from CaptExp to CaptVal | 08:02 | ||
| which requires context info for each item in CaptExp | |||
| so we provide that info from the unified proto | |||
|
08:02
iblechbot joined
|
|||
| audreyt | the spec used to say that evaluate with List context no matter what | 08:02 | |
| but that is also bogus | |||
| because in the &f example above, =<> would read all lines, and bind the List to $x | |||
| which cannot be what the user wants. | 08:03 | ||
| geoffb: paragraph mode? | |||
| geoffb | audreyt: yeah | ||
| I'm trying to convert a relatively short sub to perl 6, but it's very coloquial P5, so slow going at the moment | 08:04 | ||
| ayrnieu | curiously, why doesn't pugs use PGE to parse perl6? | 08:05 | |
| audreyt | ayrnieu: because STD.pm isn't yet very complete :) | ||
| also, if STD.pm is complete, PCR, YaRE, or some other engine written in perl 5 has proven to be more stable when running in embedded mode than PGE. | 08:06 | ||
| svnbot6 | r15673 | gaal++ | * SigMonoid: audreyt++ points out that | ||
| r15673 | gaal++ | :($x) :+: :($x, $y?) = :($x, $y?), and not :($x) | |||
| audreyt | ayrnieu: if parrot embedding becomes stable/easy/nonleaky/etc in the future -- say Parrot 1.0 -- then we may revise that decision | 08:07 | |
| geoffb | audreyt: any idea how to do paragraph mode input, or do I need to fake it? | ||
| audreyt | (embedded PGE used to be a _real_ pain.) | ||
| geoffb: .split(/\s+/) for now I'm afraid | 08:08 | ||
| ayrnieu | ah, thanks. | ||
| geoffb | audreyt: ok, thanks. At least I'm not blind for missing the relevant code. ;-) | 08:09 | |
|
08:09
H0LE left
|
|||
| audreyt | geoffb: it's even nonspecced :) | 08:10 | |
| but it'll be per-fh anyway. | |||
| geoffb | audreyt: heh | 08:11 | |
| audreyt: fair enough | |||
|
08:20
ozo_ joined
|
|||
| geoffb | Where would I find the tests for 'tr'? There are a LOT of copies of those two letters in the t/ tree ... | 08:24 | |
| gaal | t/builtings/strings/trans.t | ||
|
08:25
CardinalNumber joined
|
|||
| geoffb | Ah, thanks gaal | 08:25 | |
| gaal | :) | 08:26 | |
| geoffb | That was beginning to drive me batty | ||
| gaal | audreyt: and this one's bogus too, right? | ||
| :($x, $y) :+: :($x?, $z?) = :($x?) | |||
| should be incompat? | |||
| now, :($x?) :+: :($y?) is also incompat isn't it | 08:27 | ||
| audreyt | not really | ||
| that can unify to :($?, :$x, :$y) | 08:28 | ||
| gaal | hmmmmmmmm | ||
| audreyt | similarily, the one above can unify to ($?, $?, :$x, :$y, :$z) | 08:29 | |
| you can think of it this way | |||
| "for each position, is there a context/type constraint that all variants agree of" | |||
| "for each name, ditto" | |||
| and optional vs required can unify to optional | 08:30 | ||
| gaal | well, in these cases we've see pos relegated to named | ||
| audreyt | note that it is entirely okay for unified sig to successfully evaluate+bind, but no variants ends up agreeing | ||
| correct | 08:31 | ||
| gaal | you mean no existing multi to agree? sure | ||
| audreyt | we are not actually binding anything in the protobind | ||
| gaal | yeah | ||
| audreyt | so it's just for reduction | ||
| so relegate to named doesn't quite matter here | |||
| there is no actual $x allocated | |||
| gaal | well positionals have, well, a position constraint | 08:32 | |
| audreyt | sure but note that in :($x, $y) it's okay to bind it to \(1, y=>2) | ||
| gaal | which is only maintained if both input sigs have it required | ||
| sure | 08:33 | ||
| audreyt | yup. | ||
| gaal | I think CS PhDs are missing the part of their brain that aches. | ||
| audreyt | yeah, they underwent robotomy long ago | 08:34 | |
| svnbot6 | r15674 | gaal++ | * SigMonoid: two examples of relegate-to-named and $?-introduction, | 08:40 | |
| r15674 | gaal++ | courtesy of audreyt++. | |||
| gaal | :($x) :+: :($x?) = :($x?) is correct, but is it reasonable to unify to :($?, :$x) to avoid peeking at remaining positionals? | 08:41 | |
| in light of the recent | 08:42 | ||
| :($x, $y) :+: :($x?, $z?) = :($?, $?, :$x, :$y, :$z) | |||
| which starts out similarly. | |||
|
08:42
the_dormant joined
|
|||
| audreyt | sure | 08:42 | |
| it's isomorphic, so go for consistency | 08:43 | ||
| gaal | IIUC, the worst that could happen is more confusing error messages, eventually | ||
| is it isomorphic? | 08:44 | ||
| audreyt | well, not for the \(1, x=>1) case | ||
| although there's something to be said if it can be taken to mean | |||
| \(x=>1, x=>1) | |||
| dunno. that part is unspec. | |||
| if it an be taken to mean that, then yes it's iso | |||
| gaal | in which case, cool, because a sig simplifier can be applied later. :) | 08:45 | |
| audreyt | TimToady: cool on (sub f ($x) {...}) accepting f(1, x=>1) the same way it accepts f(x=>1, x=>1)? | 08:46 | |
| my take on the positional foo is that it advertises additional names | 08:47 | ||
| eg | |||
| sub f ($x) | |||
| is really | |||
| sub f (:0($x)) # conceptually | |||
| and \(1,2,3) binds as \(:0(1) :1(2) :2(3)) # again conceptually, not real syntax | 08:48 | ||
| sili | perl is hard. let's go shopping | 08:55 | |
| gaal | :($x) :+: :() = :($x) -- poslist runoff? | ||
| oh, no of course | 08:56 | ||
| => :($x?) though maybe | 08:57 | ||
| audreyt | aye, or :($?, :$x) as described | ||
| gaal | much easier to implement | 08:58 | |
| ok | |||
| audreyt | (0=>$, x=>$) vs () is of course (0=>$?, x=>$?) | ||
| much easier if you think of it that way | |||
| I'll bbiab, and maybe back with some more quickchecks :) | 08:59 | ||
| quickcheck++ # high-value properties | |||
| shay|p6 | hello | 09:00 | |
| gaal | hi | 09:01 | |
| shay|p6 | gaal: what's up? | ||
| geoffb | What does this error mean: | 09:02 | |
| gaal | working on a small type inferencer. hard. :) | ||
| geoffb | pugs> eval("pack 'B*', '101'", :lang<perl5>) | ||
| decodeUTF8': bad data: '\160' | |||
| " " | |||
| audreyt | it means that we don't have a native Buf object type, yay | ||
| add it to t/perl5/? | |||
| geoffb | oh | ||
| zagnuts | 09:03 | ||
| audreyt | it's a trivial fix actually | ||
| so add a test I'll make it pass | |||
| (thanks to MO bridge) | |||
| geoffb | hold on | ||
| will do, I mean | |||
| audreyt | :D | ||
| gaal | :($x, $y) :+: :($y, $x) = fail "incompat" just like :($x) :+: :($y), but: | 09:06 | |
| :($x?, $y?) :+: :($y?, $x?) = :($?, $?, :$x, :$y) | 09:07 | ||
| right? | |||
| audreyt | well actually... | 09:08 | |
| gaal | uh oh :) | ||
| audreyt | :(Int $x, Int $y) :+: :(Str $y, Str $x) # \(1,1) can bind just fine | ||
| audreyt ponders | |||
| maybe we really go the laxest route? | 09:09 | ||
| i.e. :($x, $y) and :($y, $x) unify to :($, $, x=>$, y=>$) | |||
| I think it's saner in fact. | |||
| gaal | okay... | 09:13 | |
| mj41 | How Open Source Projects Survive Poisonous People (And You Can Too) video.google.nl/videoplay?docid=-42...1522818645 | 09:14 | |
| lambdabot | Title: How Open Source Projects Survive Poisonous People (And You Can Too) - Google Vid ... | ||
| gaal | heh, negative docid. | 09:15 | |
| audreyt | overflow, evidently | ||
| geoffb | GRRRRRR | ||
| gaal | ETOOMUCHPOISON | 09:16 | |
| geoffb | OK, svk wants me to re-authenticate myself for each couple of change sets. WTF? | ||
| audreyt | geoffb: it's fixed (actually not really added Buf methods) | ||
| but should work for now | |||
| geoffb: uh that shouldn't happen | |||
| geoffb | one would think | 09:17 | |
| audreyt | grep -r for ~/.subversion | ||
| svnbot6 | r15675 | audreyt++ | * Pugs.Run.Perl5: Preliminary support for converting | ||
| geoffb | Is there a way to flush authentication information for a mirror? | ||
| audreyt | to see if it has cached passwd? | ||
| svnbot6 | r15675 | audreyt++ | non-SvUTF8 data from Perl5. | ||
| audreyt | yes, rm .subverison/auth/* | 09:18 | |
| geoffb: nonSvUTF8 support is in. I'll nap a bit | |||
| geoffb | audreyt: ok, thanks | ||
| OK, there's no matching auth file for the pugs repo, so nothing cached | 09:20 | ||
| pasteling | "evalbot_r15674" at 194.145.200.126 pasted "Pugs build failure" (406 lines, 22.9K) at sial.org/pbot/23461 | 09:21 | |
| geoffb | svk insists on being insane | 09:23 | |
| I'm giving up on committing the test for now | |||
| sigh | |||
| audreyt: you appear to have broken the build | 09:24 | ||
| Linking pugs.new ... | 09:25 | ||
| /home/geoff/svk/pugs/third-party/installed/lib/Pugs-6.2.13/ghc-6.6/libHSPugs-6.2.13.a(p5embed.o): In function `pugs_SvToVal': | |||
| p5embed.c:(.text+0x206e): undefined reference to `pugs_PvnToValUTF8' | |||
| collect2: ld returned 1 exit status | |||
| Build failed: 256 at util/build_pugs.pl line 485. | |||
|
09:26
rindolf joined
09:31
Loro joined
|
|||
| gaal | geoffb: does a clean build work? | 09:32 | |
| geoffb | will try | ||
| rindolf | Hi all. | ||
| Hi gaal | |||
| gaal | hello rindolf | ||
| rindolf | gaal: what's up? | 09:33 | |
| gaal | working on a unifier for method signatures. | 09:34 | |
| mj41 | more info about video google-code-updates.blogspot.com/20...er_21.html | 09:35 | |
| lambdabot | Title: Google Code - Updates: Open Source Developers @ Google Speaker Series: Ben Colli ..., tinyurl.com/28lyl3 | ||
| geoffb waits impatiently for build | 09:37 | ||
| Can pugs be safely built in parallel? | |||
| moritz_ | no idea | 09:38 | |
| geoffb | Single-threaded compiles are *so* two years ago. | 09:39 | |
| moritz_ | dig svn.pugscode.org +short|wc -l | 09:42 | |
| 0 | |||
| DNS problems again | |||
| ayrnieu | 'make soon' dies trying to compile the Prelude, but it builds pugs fine, and pugs itself loads the Prelude from source. | 09:44 | |
| geoffb | gaal, audreyt: clean build seemed to work, yay | 09:46 | |
| ayrnieu | ?eval do { 1 } if 1 | 09:48 | |
|
09:48
evalbot_r15652 is now known as evalbot_r15675
|
|||
| evalbot_r15675 | Error: Unexpected "if"expecting operator | 09:48 | |
| ayrnieu | eval: do { 2 } if 1 | 09:49 | |
| buubot? | |||
| bah. | |||
| moritz_ | ?eval: do { 2 } if 1 | 09:50 | |
| evalbot_r15675 | Error: Unexpected ": do"expecting "::" | ||
|
09:55
andara joined
|
|||
| ayrnieu | ah, do{} can no longer have a modifier. | 10:24 | |
| that's odd, but it might anyway not be missed, with cleaner tests. | 10:25 | ||
| well, especially not as a simple block will do. | 10:38 | ||
| ?eval do { say 1; say 2 } if 1 | |||
| evalbot_r15675 | Error: Unexpected "if"expecting operator | 10:39 | |
| ayrnieu | ?eval { say 1; say 2 } if 1 | ||
| evalbot_r15675 | OUTPUT[12] Bool::True | ||
| geoffb | g'night all, it's WAY past my bed time. | 10:41 | |
| zzz & | |||
| audreyt | @seen TimToady | 10:51 | |
| lambdabot | TimToady is in #perl6. I don't know when TimToady last spoke. | ||
| specbot6 | r14344 | audreyt++ | * S02: More fixups to reflect that fact that the f($x) form | ||
| r14344 | audreyt++ | is always &f($x) and never $x.f() now. | |||
|
10:51
buetow joined
10:57
the_dormant joined
10:58
aukjan|gone is now known as aukjan
|
|||
| audreyt | @tell TimToady S02:1438 seems to overrule S06:194 (which was earlier text.) Is it okay if I update both to say that &-sigil fallback to global by default, but no other sigils do? | 11:01 | |
| lambdabot | Consider it noted. | ||
|
11:03
ruoso joined
|
|||
| audreyt | @tell TimToady logical consequence is that multi sub dispatch in lexical context should do a lookup to GLOBAL and include those variants, too, for &*infix:<+> to work. | 11:04 | |
| lambdabot | Consider it noted. | ||
| moritz_ | audreyt: pugscode.org DNS seems to be b0rked again | 11:09 | |
| ayrnieu | ?eval my $a = 1 if 0; $a | 11:12 | |
| evalbot_r15675 | \undef | ||
| gaal | rehi | 11:17 | |
| svnbot6 | r15676 | gaal++ | * conflicting positionals give up their specific positions but | 11:20 | |
| r15676 | gaal++ | leave a positional trace, whether optional or required. | |||
|
11:22
Alias_ joined
11:24
fglock joined
11:33
rfordinal_ joined
11:36
VanilleBert joined
11:40
riffraff joined
|
|||
| riffraff | szia | 11:40 | |
| apart from the reduce metaoperator [] is there a form of fold that takes a block in perl6? | 11:42 | ||
| avar | fold? | ||
| gaal | explicit reduce function. | ||
| reduce { $^a * $^b } @list | 11:43 | ||
| moritz_ | same as [*] @list? | ||
| gaal | yes. | ||
| riffraff | what is the signature? because when I used &reduce in pugs' repl I got the internal educe AST.expr -> Val | ||
| ah ok, thanks | |||
|
11:44
IllvilJa joined
|
|||
| audreyt | pugs> &reduce.signature | 11:54 | |
| :(@?2 is copy, @?1 is copy) | |||
| also, you need a comma after the block | |||
| reduce { $^a*$^b}, @list; | |||
| gaal | .signature works!? whoa. | ||
| audreyt | uh it's been working for quite some time. | ||
| gaal | is that a moose | ||
| audreyt | up and including &code:(longname).signature | 11:55 | |
| riffraff | yes, I spotted the missing comma :) | ||
| gaal | this unification thing is clobbering my brain :) | ||
| audreyt | sorry to have you attack the hard problem while I code the trivial parts... | 11:56 | |
| gaal | it's fun :) | ||
| riffraff | btw, I read the commit on docs that says foo($x) is never a method call | ||
| gaal | just brain clobbering | ||
| (I'm still trying to gain an intuitive feel for it) | |||
| audreyt | riffraff: correct. however, see S12:211 for important safety information. | 11:57 | |
| riffraff | ok, thanks | ||
| audreyt | :) | ||
| gaal | "do not code while driving" | ||
|
11:58
[particle] joined
|
|||
| moritz_ | I've always been told "Don't drink and derive" ;-) | 11:58 | |
| audreyt | derive (Drunkable) | 11:59 | |
| gaal | with DrIFT | ||
| audreyt | woot, dispatch speed now back to normal. | 12:00 | |
| gaal | yay! | 12:01 | |
|
12:08
Khisanth joined
12:10
chris2 joined
|
|||
| gaal | argh, $($x) :+: $($y), it's not in fact incompat is it? rather, :($, :$x?, :$y?) should work | 12:11 | |
|
12:12
rfordinal_ is now known as rfordinal
|
|||
| fglock | are proxy objects for Array and Hash specified? | 12:12 | |
| looking for (TODO & @fun) | 12:14 | ||
|
12:16
Limbic_Region joined
12:19
BooK joined
|
|||
| svnbot6 | r15677 | audreyt++ | * Cipher::TestGuts: $_ is not self. | 12:27 | |
| r15678 | audreyt++ | * Pugs.AST.Internals: VMultiCode is now a shallow Set of | |||
| r15678 | audreyt++ | long names, instead of a deep Map into PadEntry. | |||
| r15678 | audreyt++ | This makes pad reentry work correctly (it won't keep | |||
| r15678 | audreyt++ | referring to the compile-time pad), and speeds up | |||
| r15678 | audreyt++ | dispatch a lot. | |||
| r15679 | audreyt++ | * Pugs.Types.Code: The ICode instance is no more; | |||
| r15679 | audreyt++ | it should always be able to get .signature without | |||
| r15679 | audreyt++ | entering any kind of monad.. | |||
| r15680 | audreyt++ | * regen instances. | 12:30 | ||
| r15681 | audreyt++ | * Pugs.AST: Looking up a lexical multi sub should always | |||
| r15681 | audreyt++ | include variants from the global multi, if present: | 12:31 | ||
| r15681 | audreyt++ | my multi infix:<+> (Str $x, Str $y) { "$x$y" } | |||
| r15681 | audreyt++ | 'a'+'b'; # 'ab' | |||
| r15681 | audreyt++ | 1+2; # 3 -- shouldn't shadow the global *infix:<+> | |||
| audreyt | fglock: no they are not :) patches welcome | 12:33 | |
| gaal: correct, they are compat | |||
| gaal | audreyt: mind checking SigMonoid for sanity? | ||
| audreyt | gladly | 12:34 | |
| gaal | thank you. :) | ||
| svnbot6 | r15682 | audreyt++ | * Pugs.Eval.Var: f(123) is now strictly always the same as &f(123). | 12:35 | |
| r15683 | audreyt++ | * Pugs.Parser: There is no way to remove something from the | |||
| r15683 | audreyt++ | lexical pad, so eliminate dead code concerning disappearing | |||
| r15683 | audreyt++ | padentries. | |||
|
12:35
fglock joined
|
|||
| svnbot6 | r15684 | audreyt++ | * Misc. fixups. | 12:36 | |
| r15684 | audreyt++ | This concludes the multi-variants-handling batch of commits. | |||
| gaal | bbiab& | 12:39 | |
| pasteling | "evalbot_r15676" at 194.145.200.126 pasted "Pugs build failure" (434 lines, 23.2K) at sial.org/pbot/23462 | 12:41 | |
|
12:42
Psyche^ joined
12:44
Psyche^ is now known as Patterner
|
|||
| audreyt | gaal: note that :$x means :$x? by deafult not :$x! | 12:45 | |
|
12:46
drupek12 joined
|
|||
| svnbot6 | r15685 | audreyt++ | * SigMonoid: review. | 12:46 | |
|
12:46
evalbot_r15675 is now known as evalbot_r15681
|
|||
| svnbot6 | r15686 | audreyt++ | * unTODO. | 12:50 | |
| Limbic_Region | audreyt - couple points regarding my smoke test last night - 1. It was extremely slow. 2. It did not hang 3. It did not upload for some reason. 4. There are a lot of failing tests | 12:52 | |
| I assume 4 is known | 12:53 | ||
| audreyt | Limbic_Region: yes, still working on speedup (should be better now) | ||
| no idea why it did not upload | |||
| glad it did not hang | |||
| Limbic_Region | me too - as I noted in the @tell though - that might be because it is fixed or because it is failing prior to hanging | ||
| btw - diakopter was fairly concerned that I first check with you as to his trustworthiness prior to mailing him a check to forward on to your paypal | 12:54 | ||
| I told him, if he ripped off the perl community - that was on his head | |||
| so in any case, check went out this morning | 12:55 | ||
| Limbic_Region AFK & | 12:56 | ||
| audreyt | Limbic_Region: wow. thank-you. | 12:57 | |
| (bbiab) | 12:59 | ||
|
13:08
stevan_ joined
13:11
TimToady joined,
diakopter joined
13:19
weinig joined
|
|||
| diakopter | @tell Limbic_Region :P | 13:22 | |
| lambdabot | Consider it noted. | ||
| svnbot6 | r15687 | fglock++ | docs/Perl6/Overview/Subroutine.pod - minor comment on Proxy behaviour | 13:26 | |
|
13:33
VanilleBert left
13:36
rashakil__ joined
13:38
nipotan is now known as nipotaway
|
|||
| gaal | < audreyt> gaal: note that :$x means :$x? by deafult not :$x! | 13:40 | |
|
13:40
weinig is now known as weinig|bbl
|
|||
| gaal | in general? how come? | 13:40 | |
| ayrnieu | @tell audreyt could you please reset my svn password for pugs? | 13:42 | |
| lambdabot | Consider it noted. | ||
| gaal | oh, S06:620 says so. | ||
| what's the motivation? | |||
| avar | " | 13:46 | |
|
13:46
nipra joined
|
|||
| gaal | the UNIFY rule for unpacking can't be right: | 13:48 | |
| :($t) :+: :($t (Left $l, Right $r)) = :(BinTree $t) | |||
|
13:50
mr_ank joined
|
|||
| pasteling | "evalbot_r15685" at 194.145.200.126 pasted "Pugs build failure" (443 lines, 25.5K) at sial.org/pbot/23464 | 14:04 | |
|
14:04
iblechbot joined
14:10
vel joined
14:15
weinig|bbl is now known as weinig
14:23
weinig is now known as weinig|bbl
|
|||
| audreyt | gaal: why? isn't :($t) just :($t (|$)) ? | 14:34 | |
| lambdabot | audreyt: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
| audreyt | and thus :(|$) unifies with :(Left $l, Right $r) | 14:35 | |
|
14:36
kanru joined
|
|||
| audreyt | ayrnieu: sure, resending | 14:38 | |
| done | |||
|
14:38
nipra joined
|
|||
| ayrnieu | yay, thanks. | 14:38 | |
|
14:39
dec_ joined
|
|||
| gaal | but how is BinTree inferred? | 14:40 | |
| lhs didn't mention it. | |||
|
14:40
aukjan is now known as aukjan|gone
|
|||
| audreyt | er. sorry. my bad. | 14:40 | |
| :($t) | |||
| obra | audreyt: pugs.blogs.com wants love | 14:42 | |
| svnbot6 | r15688 | gaal++ | * Perl 6 ne Haskell, yet | ||
| audreyt | obra: k | 14:44 | |
| pasteling | "fglock" at 201.54.129.80 pasted "Draft - Array/Hash Proxy objects" (36 lines, 775B) at sial.org/pbot/23465 | 14:47 | |
| fglock | audreyt: I've got a few '???' on Proxy objects | 14:48 | |
| but otherwise it looks pretty simple | 14:49 | ||
|
14:50
pdcawley joined
|
|||
| audreyt | yeah. so LOOKUP etc is unneccessary | 14:51 | |
| all we need is FETCH and STORE | |||
| so the spec does not actually need amendment | 14:52 | ||
| because it's the same for array/hash/scalar/etc | |||
| fglock | hmm - what does @a.FETCH returns? | ||
| ListProxy ? | 14:53 | ||
| audreyt | well no | ||
| the idea is there is a Proxy class | |||
| class Proxy { has &!FETCH; has &!STORE } | 14:54 | ||
| with methods | |||
| method ITEM () { ITEM(&!FETCH()) } | 14:55 | ||
| method LIST () { LIST(&!FETCH()) } | |||
| method infix:<=> (|$x) { VAR(&!STORE(|$x)) } | 14:56 | ||
| so the public interface is still ITEM/LIST/infix= | |||
| (the ITEM(...) LIST(...) VAR(...) are macros that sets contexts; the first two is rvalue; VAR is lvalue) | 14:57 | ||
| fglock | I mean, let's say you want to define a lazy list - then you want LIST to return a lazy list... | ||
| you need a Proxy-like thing for lazy lists | 14:58 | ||
| I mean, lazy arrays | |||
|
14:58
riffraff joined
|
|||
| audreyt | yes, you'll need to return an object that can respond to :postcircumfix<[ ]> | 14:59 | |
| but I see your point | |||
| maybe we need a Proxy::List cass | |||
| clas | |||
| that accepts LOOKUP, UPDATE etc and map them into postcircumfix:<[ ]> | 15:00 | ||
| wolverian | and hashes? :) | ||
| audreyt | otoh, maybe just writing postcircumfix<[ ]> and postcircumfix<{ }> that in turn returns Proxy is good enough | 15:02 | |
| fglock | compiles to: $proxy.FETCH.postcircumfix<[ ]>.(3) | 15:04 | |
| audreyt | or we just use the perl5tie names. | ||
| fglock | another point is how do you declare the Proxy type, for bind-time type checking | 15:05 | |
| ayrnieu | Where is Pugs::Emitter::Perl6::Perl5 ? v6-alpha has it as a prerequisite, but I don't see it on CPAN. | ||
| fglock | ayrnieu: it is in the v6 distro | ||
| audreyt | the compiled method would probably be VAR('$proxy').ITEM.postfircumfix<[ ]>(3) | ||
| avar | audreyt: what text editor do you use? | 15:06 | |
| audreyt | avar: vim | ||
| avar | :) | ||
| moritz_ | that's the only one[tm] | ||
| ayrnieu | ah, so it is. | ||
| moritz_ | if it was only written in perl..;-) | ||
| OTOH even perl5 is written in C, so C can't be a bad choice ;) | 15:07 | ||
| fglock | later & ...dentist :( | ||
| ayrnieu | moritz_ - you can embed Perl in it, although I haven't played with it. Anyway, if you want to start on a vim-in-perl... | ||
| avar | I like your logic and wish to subscribe to your newsletter | ||
| moritz_ | ayrnieu: I know, but that's just to execute perl commands on the currently loaded file... | 15:08 | |
| ayrnieu | moritz - I will stand firmly behind you :-) Someone had a decent hack of a vi in ruby, a few years ago. Really, you could get something usable with just sweat and Term::ReadKey | ||
| moritz_ | ayrnieu: I'd like to see perl plugins etc. for vim ;) | ||
| rindolf | moritz_: didn't you write your own editor in Perl? | 15:09 | |
| moritz_ | rindolf: no, that was lichtkind iirc | ||
| [particle] writes his own compiler in perl :) | 15:10 | ||
| rindolf | moritz_: ah. | ||
| diakopter | moritz_: any progress on that donate/sponsor wwwsite? | ||
| avar | perhaps you should use an editor with a real programming language built in:) | ||
| ayrnieu | particle - I've written more than a few syntax-driven, one-pass, direct-emitting compilers in Perl :-) | ||
| avar makes some mention of emacs and runs away:) | |||
| wolverian | vim's perl support is rather pitiful, really. it provides only very rudimentary methods. | ||
|
15:11
lichtkind joined
|
|||
| ayrnieu | wolverian - do other languages have better support on it? | 15:11 | |
| wolverian | no. | ||
| vim only supports vimscript well. | |||
| I suppose reimplementing vimscript's features in perl on top of the rudimentary perl interface would be sane. but no-one has done that. | 15:12 | ||
| avar | what features does vimscript have? | ||
| integral | a vimscript emittor for pugs would be another idea | ||
| lichtkind | is there are prominent perl6 app? | ||
| moritz_ | avar: I think it's a truing complete lang ;) | 15:13 | |
| lichtkind: evalbot ;-) | |||
| avar | moritz_: well, so is brainfuck | ||
| lichtkind | yes and another? | ||
| moritz_ | avar: hm, right. | ||
| integral | svnbot | ||
| lichtkind | i mean beside chatbots :) | ||
| jamessan | wolverian: what's lacking about scripting Vim via Perl? | 15:14 | |
| moritz_ is currently writing a sudoku solver in p6 | |||
| pdcawley | p6rules? | ||
| integral | moritz_: what kind of algorithm? logic programming? | ||
| moritz_ | but I'm stuck at the point where I'm to lazy to clone objects manually ;) | ||
| wolverian | jamessan, directly callable helper functions. the VIM namespace is pretty sparse. | ||
| moritz_ | integral: no | ||
| lichtkind | wasnt there a wiki in perl6? | ||
| moritz_ | integral: essentially moritz.faui2k3.org/en/yasss in p6 | 15:15 | |
| lambdabot | Title: YasSS - Yet Another (Simple|Stupid) Sudoku Solver - Moritz Lenz | ||
| pdcawley has done a Sudoku/Killer/Kakuro solver in Ruby using continuations to handle the backtracking. | |||
| moritz_ | integral: with arbitrary sudoku sizes | ||
| ayrnieu | (There are neat Mercury sudoku solvers, using constraint programming.) | ||
| wolverian | I suppose Inline::Vimscript would help... | ||
| lichtkind | but no wiki? | 15:16 | |
| pdcawley did a short talk on the Ruby code last night, only to be asked "Why didn't you just do it in Prolog?" | 15:17 | ||
| integral | ah, I see | ||
| integral ended up using Dancing Links for quite a fast Perl 5 solver | |||
| ayrnieu | pdcawley - prolog can do it naturally, but not well. | ||
| integral - constraint-programming system? | 15:18 | ||
| pdcawley | integral: Does it generalise to Killer and Kakuro? | ||
| integral | pdcawley: possibly; I can't remember the rules for those | ||
| pdcawley | ayrnieu: Yeah, half the game is in working out how to prune the tree. | ||
| integral | ayrnieu: en.wikipedia.org/wiki/Dancing_Links # it's for finding exact covers | 15:19 | |
| pdcawley | killer: Sudoku grid, but instead of placed numbers the grid is divided into 'cages' which much add up to a given total. | ||
| integral | hmm, which reminds me to put that module on CPAN *sigh* | ||
| ayrnieu | lichtkind - if you come back on Friday, I'll have a couple of del.icio.us apps in Perl6 :-) | 15:20 | |
| They will be prominently used by -me-! | |||
| wolverian | hm, I wonder if the discussion on #haskell yesterday came up with a functional algorithm that is as efficient as dancing links | ||
| integral | ayrniew++ # where do you find the time :-) | ||
| ayrnieu++ # where do you find the time :-) | 15:21 | ||
| ayrnieu is on vacation, right now :-) | |||
| lichtkind | ayrnieu i dont want to run them just write about, i writing a article about perl6 and now currently on chapter 8 or 9 which deals with pugs | ||
| pdcawley | Wasn't there something in the Perl Review that used a matrix transform or something as both a solver and a generator? | ||
| Almost certainly not a matrix transform now I think of it. | 15:22 | ||
|
15:30
dec joined
|
|||
| lichtkind | ayrnieu are there any shiny pugs apps that i could list ? | 15:34 | |
| ayrnieu | You'd do better to ask the channel, sorry. | 15:35 | |
| lichtkind - however, there -is- a wiki | 15:36 | ||
| lichtkind | rakudo.org/perl6/index.cgi yes but no apps | 15:37 | |
| lambdabot | Title: Perl 6 / Perl 6 | ||
| lichtkind | or the wiki itself? | ||
| ayrnieu | lichtkind - examples/networking/wiki contains a wiki in Perl6, I mean. | 15:38 | |
| lichtkind | ah thanks | ||
|
15:38
the_dormant joined
|
|||
| ayrnieu | By Eric Hodges, it seems, who may be forsaken. I don't know if anyone has deplyed it. | 15:40 | |
|
15:43
Arathorn joined
15:44
iblechbot joined
15:46
drupek12 joined
15:48
bonesss joined
15:59
amnesiac joined
16:00
weinig|bbl is now known as weinig
|
|||
| ayrnieu | does v6-alpha.pm only do a great deal of processing on its first run? | 16:27 | |
| [particle] | yes | 16:28 | |
| it compiles modules the first time through | |||
| from then on, it uses the compiled versions | |||
| ayrnieu | ah, phew :-) | 16:29 | |
| Arathorn | is v6-alpha what fglock's p6-on-p5 implementation has become? | ||
| ayrnieu | yes. | ||
| hello-world's first run: 7m17.17s real 3m11.15s user 0m33.93s system | 16:30 | ||
| second: 0m29.04s real 0m18.51s user 0m1.96s system | |||
| moritz_ | "first make it run, then make it right, then make it fast" ;) | 16:31 | |
| [particle] | third 0m1.99s real, fourth 0m0.12s ... :) | ||
| ayrnieu | no, it doesn't get that fast. | 16:32 | |
| [particle] | just a linear extrapolation... | 16:35 | |
| ayrnieu | a linear one would be impossibly impressive :-) | 16:36 | |
| Arathorn | doesn't causality break down shortly after that? :) | ||
| [particle] | when you're a particle, you can connect the dots if you move fast enough and in the right direction :) | 16:37 | |
| moritz_ | well, extrapolations are allways just approximations ;) | ||
| ajs_ | Next thing, you'll have pugs solving the 2 envelope problem | 16:38 | |
| TimToady | how 'bout the Purloined Letter? | ||
| lambdabot | TimToady: You have 2 new messages. '/msg lambdabot @messages' to read them. | ||
| [particle] | i've described continuations as self-addressed stamped envelopes before | 16:39 | |
| so i guess coroutines are like two envelopes | |||
| ayrnieu | loop { print '_ '; say eval =$*IN } -- helps with the load-time a bit :-) | 16:44 | |
| ah, it's a bit out of date, though: it doesn't have OS::run | 16:45 | ||
| Arathorn | i guess that makes closures notes which you scribble to yourself but don't bother to mail... | 16:47 | |
| TimToady | I think closures are more like diary entries: "Here's what the world looks like from here today." | 16:48 | |
| Arathorn | mm, that works better | ||
| TimToady | and coroutines are dueling bloggers | 16:49 | |
| [particle] cues django | 16:50 | ||
| Arathorn | and threads are a single blog which is actually written by umpteen different contributors... | ||
| TimToady | rss feeds maybe | 16:53 | |
| Arathorn wonders what that makes usenet - some kind of pseudo-organic supercomputer? a Thinking Machines CM1/CM2 or something? | 16:54 | ||
| Arathorn mumbles | |||
| moritz_ | Arathorn: usenet is just /dev/urandom filtered by some perl scripts ;) | 16:55 | |
| [particle] wonders from the lack of groans if anyone got his double entendre | |||
| Arathorn | [particle]: django having two duelling fingers? | 16:56 | |
| (or the whole deliverance duelling banjos thing?) | 16:57 | ||
| [particle] | django the web framework (for blogging, perhaps) and django the banjoist | ||
|
16:57
weinig is now known as weinig|bbl
|
|||
| Arathorn | aah, had forgotton about that | 16:58 | |
|
17:00
jisom joined
|
|||
| ayrnieu | (oops, I optimistically rewrote that repl in discussion.) How does perl6 spell its scalar()? | 17:01 | |
| gaal | item | ||
| clkao | summon audreyt | 17:03 | |
| ayrnieu | so, say eval item =*IN ? | 17:04 | |
| so, say eval item =$*IN ? | |||
| moritz_ | what about =<>? | 17:05 | |
| [particle] | =<>.item.eval.say? | ||
|
17:06
jisom left
|
|||
| ayrnieu | Which is to ask, is that correct? | 17:06 | |
|
17:07
jisom joined
|
|||
| svnbot6 | r15689 | moritz++ | included left sidebar in donate.pugscode.org | 17:10 | |
| ayrnieu | OK/ this works for now: loop { print '_ '; say eval ($_ = =$*IN) } | 17:12 | |
| diakopter | _moritz: typos on that page - s/finaly/final/ s/spent/spend/ s/devloped/developed/ s/offical/official/ | 17:14 | |
| moritz_ I mean | |||
| moritz_ | diakopter++ ok, I'll fix it soon | ||
| pasteling | "evalbot_r15688" at 194.145.200.126 pasted "Pugs build failure" (400 lines, 22.6K) at sial.org/pbot/23469 | 17:15 | |
| TimToady | don't need .item for =<>.eval | 17:18 | |
| or shouldn't, anyway | 17:19 | ||
| svnbot6 | r15690 | moritz++ | typos fixed (pointed out by diakopter++) | ||
| [particle] | there's no .loop, is there? eg =<>.eval.say.loop | ||
| avar | OO-- | 17:20 | |
| ayrnieu | -nod-,I think v6-alpha just needs some updating. | 17:22 | |
|
17:25
andara left
|
|||
| svnbot6 | r15691 | moritz++ | added POST tests with inheritance | 17:25 | |
|
17:27
the_dormant joined
|
|||
| pasteling | "evalbot_r15690" at 194.145.200.126 pasted "Pugs build failure" (400 lines, 22.6K) at sial.org/pbot/23471 | 17:35 | |
| svnbot6 | r15692 | diakopter++ | fixing another misspelling. | 17:38 | |
| ajs_ | [particle] do you mean that to behave like Python's generator comprehension? | 17:42 | |
| ala www.python.org/dev/peps/pep-0289/ | 17:44 | ||
| lambdabot | Title: PEP 289 -- Generator Expressions | ||
| [particle] | ajs_: precisely | 17:47 | |
| ajs_ | Lemme think about that for a sec | ||
|
17:51
kattana_ joined
|
|||
| ajs_ | =<>.eval should already mean that, shouldn't it (I mean, I can't see what @a.eval would to OTHER than eval each element, and =<> is just a generator that behaves like a lazy list) | 17:52 | |
|
17:53
Jedai joined
|
|||
| ajs_ | However, more generally, I think a .loop would be fine, but should take a closure: =<>.loop(-> {.eval.say}) or something like that | 17:54 | |
| [particle] | not much different than for =<> -> .eval.say {} | 17:55 | |
| er, i missed some brackets | |||
| ajs_ | yeah, but you're right | ||
| and that's cleaner | |||
| for =<> -> {.eval.say} | 17:56 | ||
| [particle] | ajs_++ | ||
| ajs_ | or map {.eval.say} =<> which gives you exactly what Python's doing, since it returns the resulting list of success values from say | 17:57 | |
| not that that's useful | |||
| [particle] | map isn't guaranteed to be sequential, is it? | ||
| ajs_ | If not, I'm sure there will be a way to request it. It's too useful on generators to be sequential | 17:58 | |
| and of course, that's map {.eval.say}, =<> now | |||
| comma | |||
|
17:59
riffraff joined
|
|||
| ajs_ | of course, =<> >>->{.eval.say} would be way cool ;-) | 18:01 | |
| and ?-> is such a cute little arrow ;-) | 18:02 | ||
|
18:02
vel6608 joined
|
|||
| TimToady | =<> ==> map {.eval.say} | 18:05 | |
| [particle] | feed the map a fish | 18:07 | |
|
18:07
fglock joined
|
|||
| TimToady | ...and thanks for the fish | 18:08 | |
| =<>==> looks like a cool operator | 18:09 | ||
| avar | is whitespace required between the two? | ||
| TimToady | no, why should it be? | ||
| [particle] | if you define =<>==> | 18:10 | |
| avar | because some stuff in p6 required whitespace to delimit it | ||
| ...and I can't remember all those rules | |||
| moritz_ | we need more ascii art operators | 18:11 | |
| TimToady | as far as I know there are only three things that arbitrarily require whitespace. listops, labels, and statement-level blocks | 18:12 | |
| meaning "if" blocks and the like | 18:13 | ||
| well, and any infix that would be mistaken for a postfix, but that's not really "arbitrary" | 18:14 | ||
| we could in theory allow print$x | 18:15 | ||
| and label:for 1..10 could be disambiguated if we were pickier about distinguishing keywords | |||
| moritz_ | after all we're not developing python, so we usually don't enforce whitepaces ;-) | ||
| [particle] | @array [*] | 18:16 | |
| lambdabot | Ahoy mateys | ||
| [particle] | heh, that was unexpected :) | ||
| TimToady | but the whitespace rules we do have are pretty much all in the interests of not blocking grammar mods | ||
| and that means keeping our grammatical categories straight without resorting to lists of keywords | 18:17 | ||
| which is kind of a PL/Iish idea, really | 18:18 | ||
| not that I've ever studied PL/I... | |||
| but it was famous for being able to parse | 18:19 | ||
| IF IF = THEN THEN THEN = ELSE ELSE ELSE = END END | |||
| or something like that. | |||
| allbery_b | more or less | ||
| PL/1 didn't have keywords | |||
| of course, neither did FORTRAN | |||
| TimToady | we get away that approach even more than PL/I because of our noun markers tend to keep things visually straight. | 18:20 | |
| and we achieve a better balance of punctuation vs identifiers, mostly due to {...} inherited from C | 18:21 | ||
| most of the identifiers in Perl carry semantic meaning, not just syntactic meaning. | 18:22 | ||
| riffraff | sorry about the question, but what is =<> supposed to be? | 18:23 | |
| ayrnieu | however it happens, I find perl tremendously easy to read, compared ironically to Python. | ||
| avar | t/w 5 | ||
| [particle] | it's a STDFISH! | ||
| TimToady | =<> is the old <> | ||
| riffraff | ah thanks | ||
| TimToady | it's just the prefix:<=> iterator dereferencer applied to a null list | 18:24 | |
| [particle] | or is that magical argfish? | ||
| ajs_ | STDFISH... heh | ||
| might be stdfio | |||
| ayrnieu | riffraff - also, =$*IN | ||
| riffraff | so =<> ==> map {.eval.say} is like the shortest repl ever? | ||
| TimToady | <> merely means (), so in fact =() would probably also work. | ||
| I guess that would be the lollipop operator | |||
| ajs_ | I think that's stdlol | 18:25 | |
| TimToady | hmm, as a smiley it looks more like the "I'm about to kiss you" operator | ||
| ayrnieu | =<> looks like a bird. | 18:26 | |
| [particle] | as opposed to =<> which is imunnaeatchoo | ||
| ayrnieu | 's smiley. | ||
| riffraff - .eval.say for =<> | |||
|
18:26
buetow joined
18:27
justatheory joined
|
|||
| riffraff | ayrnieu: :) | 18:27 | |
|
18:43
buu joined
18:46
buubot joined
19:02
awwaiid joined
|
|||
| Patterner | <>< is a NONSTDFISH? | 19:03 | |
| qmole_ | (fish operators)++ | 19:04 | |
| moritz_ | is a non-fish a moose? | ||
| Patterner | depends on your universe | 19:05 | |
|
19:11
weinig|bbl is now known as weinig
19:13
vel joined
19:14
weinig is now known as weinig|bbl
19:19
xinming joined
19:29
awwaiid joined,
justatheory joined
19:36
chris2 joined
19:44
DrSlump_2 joined
19:46
geoffb joined
20:05
mako132_ joined
|
|||
| geoffb | Perl 6 port of my Perl 5 OpenGL code from the perl.com articles (lo these many moons ago): www.broadwell.org/dl/step075.p6 | 20:10 | |
| It's not fully colloquial yet, but it works! | |||
| geoffb is inordinately proud of his baby steps. :-) | |||
| integral | geoffb++ | ||
| geoffb | thanks, integral | 20:11 | |
|
20:17
TreyHarr1s joined
20:18
awwaiid joined
|
|||
| fglock | ayrnieu: re v6.pm, that's real slow; maybe lack of ram? (requires about 70MB free) | 20:19 | |
| ayrnieu | fglock - yes, this machine has 64MB RAM and the less is swap. It's slow, yes, but I can't run pugs at all on this machine, so v6.pm is infinitely faster :-) | 20:20 | |
| [particle] | geoffb++! | ||
| ayrnieu | 'the rest is' | ||
| geoffb | [particle]: thanks! | 20:21 | |
| fglock | ayrnieu: btw, v6.pm is open for hacking :) | 20:22 | |
| [particle] hasn't coded gl for ~10 years now :( | |||
| ayrnieu | understood :-) | ||
| geoffb | [particle]: I can't stay away. If I don't do some gl on a regular basis, it literally starts to keep me up at night -- and then when I finally give in, I stay up *really* late at night hacking away | 20:23 | |
| moritz_ | geoffb: that's what they call "addiction" ;) | 20:24 | |
| geoffb | moritz_: guilty as charged. | ||
|
20:25
wilx` joined
|
|||
| moritz_ | ;) | 20:25 | |
|
20:26
mr_ank joined
|
|||
| [particle] | geoffb: i used to do some battlefield visualization work for the navy -- i had a sgi onyx reality engine 2 for my workstation :) | 20:28 | |
| geoffb | moritz_: there's really just nothing so cool for me as seeing the results of my code in moving, glowing glory | 20:29 | |
| [particle]: nice! | |||
| [particle] | back in the days of jurasic park | ||
| geoffb | [particle]: nodnod. The only people who had the Onyx as a workstation had it when it was newish. | ||
|
20:30
dec_ joined
|
|||
| [particle] | i can remember trying to program opengl after gl, and thinking *yuck*, this is slow! it's not tied to the hardware! | 20:31 | |
| geoffb | LOL | ||
|
20:32
Aankhen`` joined
|
|||
| moritz_ | ;) | 20:32 | |
| fglock | @tell audreyt re Proxy: how to specify type, such that the compiler can perform bind-time type checking? maybe needs 'is' or 'does' when the proxy is created? | 20:36 | |
| lambdabot | Consider it noted. | ||
| meppl | good night | ||
| fglock | meppl: good afternoon | 20:37 | |
| meppl | ;) | ||
| fglock | hmm - my example should probably be @a := @($proxy), instead of @a := $proxy; or doesn't it make difference? | 20:40 | |
| Arathorn | ooh | 20:51 | |
| Arathorn checks out the p6 opengl code | |||
| Arathorn learnt to program in C and IRIS GL, originally - alas for the platform abstraction :) | |||
| geoffb | :-) | 20:52 | |
| Bunch of old timers here! | |||
|
20:52
nipra joined
|
|||
| [particle] | it's hard to believe | 20:52 | |
| Arathorn was on an IRIS 1400 rather than an Onyx RE2, tho' ;) | |||
| [particle] | i used to have a couple vi sessions open, while whales and dolphins swam in the background :) | 20:53 | |
| geoffb | [particle]: and now, after all these years, you can start to do it again. :-) | 20:54 | |
| [particle] | (reliving the glory days)++ | ||
| geoffb | too true | 20:55 | |
| moritz_ | now we have vim to substitue vi ;-) | ||
| Arathorn | and OSX is probably the closest match to IRIX :( | 20:57 | |
| fglock | I used to do CG with assembler and turbo-pascal, in an ibm-pc with VGA (and DOS) | ||
| geoffb | fglock: ditto, except Turbo C. :-) | ||
| [particle] | fglock: i did that too! wrote many a ray tracer with borland turbo c | ||
| geoffb | Although my earliest graphics were on the Tandy Color Computer | ||
| fglock | heh :) | 20:58 | |
| [particle] | c64 for me | ||
| Arathorn used turbo C - its online help was lovely | |||
| [particle] | ooh, yes, it was shiny help | ||
| geoffb loved Turbo Debugger | 20:59 | ||
| fglock | turbo pascal was much faster with one-pass compiler & link (on a 286 or something) | ||
| geoffb | That thing ruled | ||
| Arathorn | my earliest graphics were on the Dragon 32, which was a british clone of the TRS80. fairly limited, though, unless you dropped into 6809 | ||
| geoffb | I stopped buying Borland compilers when they told me they wouldn't come with TD anymore | ||
| And Turbo Assembler actually came with full 386 instruction docs with detailed timings. Bloody helpful. | 21:00 | ||
| ayrnieu | fglock - compilers.iecc.com/crenshaw/ ; recursive-descent one-char-lookahead syntax-driven direct-to-assembler one-pass compiler tutorial, in Pascal. I've been going through it, writing perl5 and emitting PIR. | 21:01 | |
| lambdabot | Title: Let's Build a Compiler | ||
| ayrnieu | oh, it emits 68k asm. | 21:02 | |
| fglock | ayrnieu: cool :) | ||
| geoffb | ayrnieu: what is the source language? Also Pascal? | 21:03 | |
|
21:04
asz joined
|
|||
| fglock | it is a language called TINY | 21:05 | |
| ayrnieu | geoffb - no, a made-up one. It's slow starting.. | ||
| also, starting. | |||
| geoffb got his current job writing a Forth interpreter in Perl. And the $job has absolutely nothing to do with Forth. :-) | 21:06 | ||
| moritz_ | writing an interpreter in an interprete language is.. interesting ;-) | 21:08 | |
| fglock | decommute & | 21:09 | |
| ayrnieu | Forth is one of the more interesting languages, as compiler-writing goes. | ||
| geoffb | quite fun, actually. | ||
| ayrnieu | moritz_ - that URL pauses at lesson 8 or so to show how similar compilation and interpretation are :-) | ||
| moritz_ | ayrnieu: which URL? | 21:10 | |
| ayrnieu | moritz_- compilers.iecc.com/crenshaw/ | 21:11 | |
| lambdabot | Title: Let's Build a Compiler | ||
| moritz_ | ayrnieu: I searched for something like this a while ago and din't find anything suitable | 21:13 | |
|
21:16
Gothmog__ joined
21:30
rafl joined
21:41
larsen_ joined
21:45
putter joined
|
|||
| geoffb | rafl: do you still maintain pugs builds for Debian? | 21:46 | |
| putter | so is donate.pugscode.org ready to be mentioned in public? boston.pm in ~1 hour. | 21:52 | |
| lambdabot | putter: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
| moritz_ | putter: not really ;-) | ||
| putter: currently it just has a "donate" botton and a few lines of text | |||
| putter | but does the donate button work? :) | 21:53 | |
| ie, has there been an end-to-end test, before folks start throwing money at it? | |||
| moritz_ | I haven't tried entirely, but I'm pretty sure it dos | ||
| if you click on it you come the the paypal page | 21:54 | ||
| but no end-to-end test | |||
| Arathorn | where will the funding go, ooi? | ||
| ah, to audreyt | 21:55 | ||
| putter | though the page is a bit ambiguous on that point. "support the work of audreyt" could be funds go to a florist to provide her with flowers. | ||
| moritz_ | putter: you're welcome to clarify the page | 21:56 | |
| putter | well, not quite that ambiguous. but perhaps should more explicit | ||
| moritz_ | my english is not the best, so I'm always happy to hear such comments | ||
| putter | np. very very nifty to see it happening | 21:57 | |
| geoffb | ditto that | 21:59 | |
| moritz_ | putter: it already says "support the work of Audey Tang _on pugs_" | 22:01 | |
| putter: how is that ambigous? | |||
|
22:02
Limbic_Region joined
|
|||
| putter | paying for a secretary, or renting a machine, etc, could be supporting work on pugs. != money lands in audreyt's bank account | 22:03 | |
|
22:04
Gothmog_ joined
|
|||
| moritz_ | putter: so how would you phrase it? | 22:04 | |
| putter | i think i'll mention it as an as-yet-untested draft. | ||
| hmm... | 22:05 | ||
| Limbic_Region | putter - what did the secretary comment mean? | ||
| lambdabot | Limbic_Region: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
| Limbic_Region | @moosages | ||
| lambdabot | diakopter said 8h 43m 7s ago: :P | ||
| putter | insufficient brain just now. will try to look at it later. headed out door. & | 22:06 | |
| Limbic_Region: re ambiguous about what happens to donation | |||
| & | |||
| Limbic_Region hasn't been able to keep up with the support audreyt activity but will catch up and stay caught up starting this time tomorrow | 22:08 | ||
|
22:11
Gothmog__ joined,
Psyche^ joined,
larsen_ joined
22:14
Limbic_Region joined
22:23
Psyche^ is now known as Patterner
22:31
prism joined
|
|||
| bsb | what is perl5's $/ called now? | 22:35 | |
| geoffb | bsb: If you're asking about doing something like local $/ = '' , it happens that I asked that yesterday. | 22:37 | |
| The answer was: nothing implemented yet, use slurp & split instead | |||
| hence: | 22:38 | ||
| my @defs = slurp($defs).split(/\n\s*\n/); | |||
| bsb | I was headed in a different direction so I'll ask on p6l | 22:39 | |
| thanks geoffb | |||
| geoffb | bsb: fair enough, np | ||
|
22:42
explorer joined
22:44
rashakil__ is now known as rashakil
|
|||
| geoffb | Is pugs's time hi-res on all platforms, or just *nix? | 22:46 | |
|
22:49
pelagic joined,
ludan joined
22:52
wilx` is now known as wilx
22:55
ruoso joined
|
|||
| Limbic_Region | @tell audreyt ext/HTML-Entities/t/entities.t is the test that hangs on Win32 (apparently I did nmake test not nmake smoke last night) | 22:59 | |
| lambdabot | Consider it noted. | ||
|
23:00
drupek12 joined
23:01
Gothmog_ joined
|
|||
| Limbic_Region | perlmonks.org/?node_id=604642 | 23:07 | |
| lambdabot | Title: can you use perl6 from haskell? | ||
| Limbic_Region doesn't know the answer to that | |||
| pasteling | "geoffb" at 208.201.228.107 pasted "bug in hyper infix of list & scalar?" (12 lines, 360B) at sial.org/pbot/23474 | 23:10 | |
| moritz_ | geoffb: what should @list >>/>>2 do? | 23:13 | |
| geoffb: I never came across that before | |||
| geoffb | @list >>/>> 2 should work, not throw. And @list >>/<< 2 should throw, not work. | 23:14 | |
| lambdabot | No module ">>/>> 2 should work, not throw. And @list >>/<< 2 should throw, not work." loaded | ||
| geoffb | bad lambdabot, no botsnack | ||
| At least from my understanding of S03 | |||
| moritz_ | bloody dns | 23:15 | |
| I can't access the specs right now *sigh* | |||
|
23:19
lichtkind joined
|
|||
| lichtkind | chromatic++ for adding disclaimer on A and E | 23:20 | |
|
23:27
BooK_ joined,
theorbtwo joined
|
|||
| Juerd | That's great. | 23:34 | |
| If now someone could update dev.perl.org's documents... | |||
|
23:39
charsbar joined
|
|||
| geoffb | (somewhat) cleaned up and colloquialized Perl 6 OpenGL code: www.broadwell.org/dl/step075.p6 | 23:44 | |
|
23:45
diakopter joined
|
|||
| [particle] | is there no atan2 equiv in p6? | 23:48 | |
| at least, in pugs? (i think i wrote one for parrot) | |||
| Limbic_Region looks for giggles | 23:49 | ||
| moritz_ | [particle]: iirc there is some disagreement between the specs and pugs... | ||
| [particle]: there is a two argument form of atan in pugs | 23:50 | ||
|
23:50
IllvilJa left
|
|||
| [particle] | ah | 23:50 | |
| so that eval could be { 4 * atan 1, 1 } or something | |||
| Limbic_Region | ?eval atan(2,2) | 23:51 | |
|
23:51
evalbot_r15681 is now known as evalbot_r15692
|
|||
| evalbot_r15692 | pugs: user error (*** *** Can't modify constant item: VUndef at <prelude> line 781, column 9-46 <prelude> line 781, column 9-46 at) | 23:51 | |
| moritz_ | pugs> atan(2,2) | 23:53 | |
| 0.7853981633974483 | |||
| Limbic_Region | try that * 4 | 23:54 | |
| ;-) | |||
| eval: my $pi = atan(2,2) * 4; $pi | |||
| buubot | Limbic_Region: Error: Undefined subroutine &main::atan called at eval line 1. | ||
| moritz_ | how many bots do we have here? | 23:55 | |
| [particle] | all of them | ||
| (so it seems sometimes) | |||
| eval ?eval @eval | |||
| moritz_ | !eval | 23:56 | |
| devbot6 | moritz_: Error: "eval" is not a valid command. | ||
| Limbic_Region | ?eval my $pi = atan(2,2) * 4; $pi | 23:58 | |
| evalbot_r15692 | pugs: user error (*** *** Can't modify constant item: VUndef at <prelude> line 781, column 9-46 <prelude> line 781, column 9-46 at) | ||