-Ofun: xrl.us/hxhk | pugscode.org | pugs.kwiki.org | paste: paste.lisp.org/new/perl6 or sial.org/pbot/perl6 Set by apple-gunkies on 11 November 2005. |
|||
nothingmuch | stevan: ping | 00:10 | |
Juerd | dvzine.org++ | 00:50 | |
gaal_ | ?eval my @pats = /1/, /2/; say "MATCH" if 1 ~~ any @pats; | 07:23 | |
07:23
evalbot_7981 is now known as evalbot_7982
|
|||
evalbot_7982 | Error: cannot cast from VUndef to Pugs.AST.Internals.VCode (VCode) | 07:23 | |
nothingmuch | morning gaal_ | ||
gaal_ | ?eval my @pats = rx:Perl5/1/, rx:Perl5/2/; say "MATCH" if 1 ~~ any @pats; | 07:24 | |
evalbot_7982 | OUTPUT[MATCH ] bool::true | ||
gaal_ | hu | ||
hi | |||
?eval my @pats = rx:Perl5/1/, rx:Perl5/2/; say "MATCH" if 77 ~~ any @pats; | |||
evalbot_7982 | undef | ||
gaal_ | so far so good. but: | ||
?eval my @pats = rx:Perl5/1/, rx:Perl5/2/; my $junc = any @pats; say "MATCH" if 1 ~~ $junc; | |||
evalbot_7982 | undef | ||
gaal_ | bug? feature? | 07:25 | |
nothingmuch | i dunno | 07:26 | |
looks like a bug | |||
gaal_ | Yeah, think so too :-/ | ||
nothingmuch | to bad pugs doesn't have real perl regex | ||
gaal_ | asking the list. | ||
nothingmuch | then we could debug with ??{ } | ||
gaal_ | there's always gdb and the nearest mental institution. | 07:27 | |
07:27
gaal_ is now known as gaal
|
|||
pernod | Hello all. | 08:54 | |
Quick question? | |||
To compile pugs on XP with nmake and mingw, I have to run the following on the Makefile generated from "perl Makefile.PL" | 08:56 | ||
perl -i.bk -pe "s{cd \.\.}{cd \.\./\.\.}g" Makefile | |||
(Replace "cd .." with cd "../..") | |||
Any ideas how this can be fixed in Makefile.PL? My makemaker-fu is very weak .... | 08:57 | ||
svnbot6 | r7983 | Darren_Duncan++ | r904@Darren-Duncans-Computer: darrenduncan | 2005-11-22 01:05:30 -0800 | 09:10 | |
r7983 | Darren_Duncan++ | /ext/Rosetta-Incubator : added 2 new documentation files /docs/Overview and /docs/FAQ ... the FAQ is for you to write your questions in | |||
gaal | pernod: it's been a while since I built with mingw, and I'm at $work now so I can't investigate... any idea *why* this is needed? | 09:33 | |
pernod | Oh, just to simplify things. | 09:35 | |
Having to manually munge an automatically generated Makefile seems a bit counter-intuitive to med :) | |||
(me, even) | |||
My steps for building pugs now is: | 09:37 | ||
perl Makefile.pl | |||
perl -i.bk -pe "s{cd \.\.}{cd \.\./\.\.}g" Makefile | |||
Then nmake -> nmake install | |||
That's not normal, is it? | |||
dduncan | fyi, while the document set is incomplete, hopefully those of you interested in Rosetta will learn some things from the new Overview | 09:50 | |
gaal | sorry, was called away. | 10:36 | |
I meant, why is this substitution needed in mingw in the first place? How come the path is wrong there? | 10:37 | ||
pernod | *back from lunch* | 10:45 | |
I have no idea, gaal. | |||
Actually, I think it is nmake's fault. | |||
Juerd | pernod: Don't escape . on the RHS. The RHS is a string, not a regex. | 11:06 | |
pernod: s{cd \.\.}{cd ../..}g | 11:07 | ||
pernod | Thanks Juerd :) | ||
Juerd | It it makes you feel more comfortable to not escape it if it's in actual quotes, feel free to use s{cd \.\.}"cd ../../"g instead :) | ||
Eh, with a / less. | |||
pernod | (Just a quick one liner, it did the job tho ...) | ||
Juerd | Sure does. | ||
I'm picky because there's always someone who learns from what we do. | 11:08 | ||
pernod | And you reminded me of something I had forgotten. Picky++. | 11:10 | |
masak | karma Picky | 11:14 | |
jabbot | masak: Picky has neutral karma | ||
Juerd | karma foo | 11:19 | |
jabbot | Juerd: foo has neutral karma | ||
Juerd | foo++ | ||
karma foo | |||
jabbot | Juerd: foo has neutral karma | ||
Juerd | Borken. | ||
wolverian | goddamn, Evolution has the worst key bindings I've ever seen. | ||
Juerd | wolverian: Now that's a funny way to say you've never seen Emacs ;) | 11:22 | |
wolverian | er.. good point | 11:23 | |
svnbot6 | r7984 | fglock++ | * /docs/notes/lazyness.txt - started Array/Hash internals | 12:41 | |
rafl | Juerd: CLT orga list says: "Das LPI ist an der Teilnahme zu den Chemnitzer Linux-Tagen interessiert," | 12:55 | |
Juerd | rafl: Aber sollen sie da auch das LPIC-2 haben? Gewoehnlich nur das 1. LPIC... :) | 13:28 | |
LPIC-1 hab' ich schoen gemacht. | |||
Eh, schon. | 13:29 | ||
Beide schoen und schon :) | |||
Ihre Sprache SAUGT :) | 13:30 | ||
Ebenso wie woertliche Uebersetzungen :P | |||
Jooon | ich bin ein perliner | 13:31 | |
rafl | Juerd: Darueber sagt die Mail nichts. | 14:20 | |
Btw, are there tools to set up a local cpan mirror (especially the search interface and documentation viewing)? | |||
integral | rafl: try kobesearch.cpan.org | 15:28 | |
rafl | integral: I actually want to install it locally to work offline. | 15:32 | |
integral | umm, that's what I mean. See cpan.uwinnipeg.ca/htdocs/faqs/faq.html#11 | ||
but there's also other things like CPAN::Mini, and podserver | |||
rafl | OK, so I may can replace my old minicpan + pod extracing + swig search | 15:33 | |
15:41
wilx`` is now known as wilx
|
|||
svnbot6 | r7985 | iblech++ | * Usual svn props. | 15:41 | |
r7985 | iblech++ | * t/operators/till.t: Incorporated Larry's answers from my p6l post: | |||
r7985 | iblech++ | www.nntp.perl.org/group/perl.perl6....uage/24098 | |||
r7985 | iblech++ | * New t/oo/methods/topic.t: $_ is *not* self in methods by default. | |||
r7985 | iblech++ | You've to explicitly write (per update section of r6636 of A12) | |||
r7985 | iblech++ | method foo ($_: ...) {...} | |||
r7985 | iblech++ | * t/oo/attributes/defaults.t: | |||
r7985 | iblech++ | has $.foo = { do_stuff_with($_); self.foobar }; | |||
r7985 | iblech++ | $_ is the attribute being initialized, "self" refers to the object being | |||
r7985 | iblech++ | initialized (per S12). | |||
gaal | so what is $_ set to in a random method? | 15:45 | |
GeJ | what is "Usual svn props." I see them pretty often, but never figured out what it means... | ||
gaal | GeJ: a file in subversion can have some metadata about its encoding, lineendings etc. | 15:46 | |
when you add a file to pugs, you should usually run util/add-svn-props.sh on it to set the defaults. | |||
often people forget, and often iblech remembers for them. ;-) | 15:47 | ||
GeJ | huh, ok... | ||
nice "reminder" ;) | |||
integral | except if you're using svk, you have to cat the script, and manually run the commands ;-) | 15:48 | |
gaal | the practical use of this is that if I checkin a text file on Windows (say) and you pull it in linux, you get \n instead of \r\n lineendings. | ||
integral: and the svk variats are? s/svn/svk/ simply? | |||
Limbic_Region | heh | 15:49 | |
gaal | if so, i'll fix that in a jiffy. | ||
Limbic_Region | and all this time I thought props meant something else | ||
integral | gaal: yeah | ||
GeJ | gaal: oki, thanks for the explanation. | ||
gaal | np :) | ||
integral | gaal: something like a --svk flag for the script? | ||
gaal | no, DWIM. | 15:50 | |
huh? someone did that already. | |||
integral | *shudder*. I shudder after hacking the version_h script | ||
oh, ok, I'm showing my lack of contributions recently | |||
gaal | chromatic and dduncan did. | ||
gaal praises svn praise | 15:51 | ||
gaal blames svn blame | |||
GeJ | isn't that the same command? | 15:53 | |
one being more team-friendly than the other? | |||
Su-Shee | Hi. | 15:54 | |
gaal | GeJ: indeed so. | 15:57 | |
sadly they are huffmanized wrongly. | |||
autrijus | gaal: I'd say $_ in a random method ought to be out-of-scope if it is out of scope | 16:02 | |
gaal | so, compile error? | 16:03 | |
autrijus | yup | 16:04 | |
Limbic_Region | autrijus - question came up at the Monastery the other day that you may be able to help answer as I haven't seen pmichaud around anywhere | ||
autrijus | pm is usually on #parrot (but is currently not) | ||
url to the q? | |||
Limbic_Region | isn't one - asked in the CB - going to repeat here | 16:05 | |
autrijus | 'k | ||
Limbic_Region | someone who has more than a basic understanding of the p5 regex engine was concerned that a lot of the bad mistakes/decisions were going to be avoided in p6 | ||
Limbic_Region was just wondering how much pmichaud was familiar with the p5 regex engine | |||
I explained that p6 rules were far more than just regexen though they contained them as a subset | 16:06 | ||
but that if I could find an answer I would | |||
autrijus | well, the design is jointly made by at least lwall, dconway with pm | ||
and lwall should know something about rx; dconway also should, having written Perl6::Rules in p5rx | |||
Limbic_Region | heh | 16:07 | |
autrijus | also, p6rx is, as you said, a very much different beast, so it's hard to repeat mistakes even if you try | ||
Limbic_Region | well, after looking at the pge status and readme I didn't find what I was hoping I was looking for | ||
something along the lines of a - here's what worked and didn't work sorta thing | 16:08 | ||
*shrug* - great minds are working on it, I am not sure why people can't just trust that | |||
autrijus | that said, I don't know much about how pge's plan looks like for optimization -- ask on p6c? iirc pm is in the feature/defect driven mode still, not tuning | ||
"what worked and didn't work" sounds like exactly what compilers/pge/STATUS describes no? | 16:09 | ||
Limbic_Region | everytime pmichaud has talked about optimization (that I have heard) - it has been that it isn't there yet and he doesn't plan on looking at doing that until the time is right | ||
autrijus | yes, and I think it's sensible. | ||
Limbic_Region reads it again to be sure | |||
no, but I think we are talking past each other | 16:10 | ||
demerphq (the person asking the question) was interested in implementation details | |||
stevan | evening autrijus | ||
Limbic_Region | even after I explained that rules were not regexes | 16:11 | |
and that parrot was the p5 VM | |||
and that by definition a lot of implementation would be different | |||
he still didn't sound convinced | |||
autrijus | stevan: yo! | ||
Limbic_Region is glad of his skeptisism though | |||
In areas where I have 0 competency I just take it on blind faith that people smarter than me will get it right | 16:12 | ||
autrijus | Limbic_Region: if he'd like, a great exercise would be porting PGE/Rule.pir and PGE/Match.pir to p5. | ||
or better, p6. (or to C++, or to Java, or to whatever he feels like) | |||
that can make the design grokkable to him, I think | 16:13 | ||
Limbic_Region | autrijus - I have given him the link to S05, to the p6.compiler group, and to the Status/readme in the repository | ||
if that doesn't satiate him he will have enough info to dig further | 16:14 | ||
and if he doesn't have the time/interest to dig further than he shouldn't be b1tching | |||
autrijus | nodnod, but porting is a cute nice useful challenge, I think | ||
Limbic_Region | ;-) | ||
autrijus | people bitching is good... as long as it leads somewhere | 16:15 | |
Limbic_Region | yep yep | 16:16 | |
demerphq is busy with real stuff but I am sure he isn't just blowing hot air, I respect him a great deal | |||
autrijus | stevan: so uhm, docs/interpreter.pl - care to talk a bit? | ||
Limbic_Region has to wander off now | |||
pasteling | "stevan" at 67.186.136.119 pasted "Sketch for Module/Signature DSL" (105 lines, 3.4K) at sial.org/pbot/14455 | ||
autrijus | ooh | ||
stevan | autrijus: interpreter.pl is just silliness :) | ||
stevan only has a few minutes to talk really,.. | 16:17 | ||
autrijus | ok, let's talk about dsl instead | ||
stevan | I think I have been reading too much ML stuff | ||
autrijus | your brain are being typed | ||
stevan | LOL | ||
yes it is | |||
autrijus | type Opauqe = Opaque | 16:18 | |
stevan | so the core of what I want this to do is to provide another layer of abstraction over the core types/things which can be used as a bridge to user land | ||
a signature can easily become a Role in userland | 16:19 | ||
it also becomes easy to swap out faster/better implementations | 16:20 | ||
because we never hard code the impl | |||
autrijus | yup, it's just the abstract signature | 16:21 | |
stevan | I was thinking last night about maybe creating signatures for Class, Object, Package, Role, etc too | ||
autrijus | how is BIT different from Bit? | ||
stevan | BIT is the sig,.. Bit is the things created by the Functor | ||
Bit is concrete, BIT is abstract | |||
autrijus | got it | 16:22 | |
stevan | so if I also wrap Class, Object, Package, etc,.. then those impl's too can be substituted | ||
I am not sure if that makes sense though | |||
autrijus | it amounts to provide explicit types to the primitives you have in Core | 16:23 | |
stevan | maybe allowing for Class to be written as native code rather than on top of the runtime | ||
autrijus: yes, that is the goal :) | |||
stevan has to run, but will be back in about 1 1/2 hours | 16:25 | ||
will you still be up? | |||
stevan & | 16:27 | ||
autrijus | I hope :) | ||
maybe not -- will definitely checkback tomorrow though. last night's hotel doesn't have net and dialup sucked :/ | 16:28 | ||
fglock | autrijus: ping | 16:34 | |
autrijus | fglock: pong | 16:38 | |
fglock | autrijus: I'm trying to find out why there is a need for a "List" class. It looks like Array can do everything, and List is just an implementation detail | 16:39 | |
autrijus | I thought the idea of Arrays is that it manages storage for a collection of scalars | 16:41 | |
so it's lvalue; list is rvalue | |||
so the list class would not support destructive updates; arrays handle that part | 16:43 | ||
in my mind lists only has read interface, and arrays handles push/pop/splice/etc by managing some data structure in memory that may be much more complex than a list, but you can tell it to yield a list using something like FETCHALL | 16:44 | ||
fglock | my thought is that a read-only Array could be used in place of List | 16:45 | |
Juerd | autrijus: luqui explained to me yesterday that some people, including Larry, use the term "List" to mean what he describes as Tuple. | 16:46 | |
autrijus: This is obviously not the same thing as what we call the things in li^H^Hslurpy context | |||
I think it's important to get terminology in stone soon :) | 16:47 | ||
It's hard to cooperate if we use different words for the same things... | |||
autrijus | fglock: that's like saying using a read-only scalar in place of value | ||
Juerd | And same words for diffgerent things. | ||
s/ffg/ff/ | 16:48 | ||
fglock | for example, in a parameter list: ($a,$b) - $a is Scalar, $b is Scalar, @_ is Array - the "List" is an implementation detail | ||
autrijus | Juerd: indeed. | 16:50 | |
fglock | I'm trying to write down some definitions - I've read some discussions in the mail lists, but I don't have a conclusion yet | 16:51 | |
autrijus | fglock: in my mind, when you write (1,2), it constructs a List object, not a readonly Array object | 16:52 | |
Juerd | In my mind, List objects *do not exist*. | 16:53 | |
And parens have nothing to do with lists. | |||
autrijus | that last part I agree. infix:<,> however has everything to do with lists. | ||
fglock | how is the List API different from r/o Array? (except that Array can be bound and tied) | 16:54 | |
autrijus | Juerd: so, List objects do not exist... how would you explain that (1,2)[0] is okay but (1,2).push(3) is not? | ||
fglock | autrijus: because it is r/o? | 16:55 | |
autrijus | fglock: I'd argue Array API is taking List API and adding destructive update routines | ||
also, I recall that Lists are single dimensional | 16:57 | ||
and arrays may have 2+ dimensionality | |||
but as you said... we can treat all lists as "constant Array", or as something that only exists interimly at implementation level -- whenever you try to use it as an object, it gets promoted to an Array first | 16:59 | ||
I'd like to make the distinction only because: | |||
it makes it easier to subclass List | 17:00 | ||
without thinking about the destructive update part of Array | |||
but this may be a weak reason. | 17:01 | ||
(am I making some sense?) | 17:03 | ||
fglock | I've been thinking of making Array just define the API, and let "Eager" and "Lazy" roles define the implementation. One could define other implementations. So if you want to make an implementation that fails() on push/pop you can. | ||
autrijus | but I'd like .push/.pop to be compile time error | 17:04 | |
it makes little sense to make the runtime error. | 17:05 | ||
$ perl -ce '(1,2)=3' | |||
Can't modify constant item in list assignment at -e line 1, at EOF | |||
-e had compilation errors. | |||
fglock | yes, this makes sense | 17:06 | |
but then, you still don't need List in the runtime - only at compile/optimization phases - after that, you can treat everything as Array | 17:08 | ||
autrijus | so then it makes sense to make what (1,2) produced to not be Array-but-fail-on-pop, but something else that does not have .pop altogether. | ||
well -- if we have List, you can use it in signatures -- for example | 17:09 | ||
my List @foo; # this would be an array that only contains readonly lists | |||
and that will change the semantic. | |||
I'm not entirely sure it's the Right Way to go, but something to consider | 17:10 | ||
fglock | how do you populate this Array? if you push a List, it would push the Values instead, I think | 17:12 | |
please note I'm not against List - I'm just trying to figure things out | 17:13 | ||
autrijus | *nod* | 17:14 | |
thinking | 17:15 | ||
I don't have a good answer, really... because ArgList conflates with List. | 17:16 | ||
(brb) | |||
fglock | bbiab too | 17:19 | |
(back) | 17:44 | ||
stevan is back | 17:45 | ||
geoffb is bak | 17:46 | ||
It's a party! | |||
stevan | hey autrijus :) | ||
autrijus | hey :) | ||
geoffb | hey all! | ||
stevan | so autrijus any thoughts on the DSL stuff? | 17:47 | |
autrijus | fglock: www.ruby-doc.org/core/classes/Range.html | 17:48 | |
fglock: Range is of course just a small part of what List is | |||
fglock: I think to push a List into @foo you'd like to do @foo.push(List.new(1,2,3)) | 17:50 | ||
instead of @foo.push(1,2,3) | |||
stevan: I think the DSL may better be a restricted set of p6 | |||
stevan | autrijus: good point | 17:51 | |
right now it is the bastard love child of Perl 6 and Standard ML :) | 17:52 | ||
autrijus | I think p6 subsumes SML on that, and if it does not, it's borken | 17:53 | |
fglock | autrijus: I think it needs to be @foo.push( \List.new(1,2,3)) - assuming List doesn't auto-dereference - because Array.push can't tell the difference between this and push(1,2,3) | 17:56 | |
autrijus | fglock: it probably could, as the List.new form probably won't respond to slurpy context | 17:57 | |
on the other hand, as Juerd suggested, because a rvalue List's item number is fixed | 17:58 | ||
maybe calling it a Tuple makes more sense. | |||
(1,4..Inf,9); # might be a Tuple(Int, Range[Int], Int) | 18:00 | ||
(I'm fine with calling it a Tuple to represent the fixedness of items) | 18:02 | ||
and that would explain the lack of .push. | |||
fglock | right - I'm ok with that. Do we still need List? | 18:04 | |
autrijus | if we call it Tuple then no, we don't need a separate List. | 18:05 | |
fglock | does it need to handle argument-list attributes (named, slurpy, etc) or is this a separate thing? | 18:06 | |
autrijus | I think ArgList and SigList both subclasses Tuple. | ||
and in that sense Tuple::Argument and Tuple::Signature may be better names. not sure | 18:07 | ||
but the idea is that those things are not part of vanilla tuple | |||
fglock | ok | ||
autrijus | stevan: so... I think P6P6 would actually work, as we can test the validity with an existing parser/codegen | 18:13 | |
stevan | autrijus: cool | ||
autrijus | but it's past 2 and I need to sleep :) | ||
stevan | ok, I am fairly busy with $work at the moment anyway,.. so I will keep thinking and toying around | 18:14 | |
18:15
Lopo_ is now known as Lopo
|
|||
autrijus | k, cool. I'll keep toying around with prim objspace designs too | 18:15 | |
not quite sure when will I hit the "enough design up front" spot | 18:16 | ||
stevan | excellent :) | ||
autrijus | but iterative stuff without pressure-to-code actually fits my brain well | ||
<- slowly being brainwashed by cc2e | |||
g'nite! & | 18:17 | ||
stevan | nite :) | ||
18:23
GeJ_ is now known as GeJ
|
|||
gaal | I'm surprised to find ~~/smartmatch.t/op2Match has so much :todo! | 20:20 | |
There's a comment in the code saying | |||
-- XXX - need to generalise this | 20:21 | ||
does anybody know what kind of generalization is in order there? there's certainly a lot of code right now, and only about a 1/4th of the features are covered... | |||
also, eek, I only now noticed some matches are reversible and some aren't. | 20:24 | ||
should some of the ~~ code be implemented in Prelude.pm? eg. Hash Hash hash keys identical match if $_.keys.sort Ā»eqĀ« $x.keys.sort | 20:25 | ||
r0nny | coyo | 20:43 | |
any sucesses in adding meta objects ? | 20:44 | ||
gaal | heya nm | 20:49 | |
nothingmuch | hola | 20:50 | |
gaal | hmmmm I can't pattern match against class instances in haskell? | 20:56 | |
nothingmuch: maybe you have an idea. please look at src/Pugs/Prim/Match.hs:84 | 20:57 | ||
the general sig is of course op2Match :: Val -> Val -> Eval Val | |||
but I want to write the case e.g. for %h1 ~~ %h2 | |||
integral | you can't pattern match against types. You pattern match against constructors | ||
gaal | I don't have a constructor here | ||
nothingmuch | gaal: i don't have pugs repo | 20:58 | |
gaal | If there were no other cases, I'd do | ||
nothingmuch | my HD got corrupt in the weekend | ||
integral | Val has no constructors? o_O it would seem stupid for Val to be uninhabited | ||
nothingmuch | hadn't had a chance to restore yet | ||
gaal | you poor, poor fellow :( | ||
integral: VHash doesn't | |||
So I'd've wanted op2Match (VHash x, VHash y) => x -> y -> Eval Val | 20:59 | ||
but of course I can't do that | |||
because there are a million other cases for this function | |||
nothingmuch is living w/o ghc/darcs/pugs/fun | |||
not that i've been working on pugs lately | |||
integral | gaal: I have no idea what you think you're meaning, but the VHash type is declared by "type VHash = Map VStr Val" in Ast.Internals | ||
umm, sorry, the type is Val, not VHash | 21:00 | ||
and Vals have a VRef constructor | 21:01 | ||
gaal | so VRef for hashes and look from there? Iffy; the comment there says that's resolvable only at runtime? | 21:02 | |
integral | umm, yeah. perl's dynamic so you don't know you've actually got a hash until runtime | ||
gaal | but %h is not a referece. | 21:03 | |
integral | umm, perl6 automatically makes references of containers in item context I thought? | ||
gaal | of course I can't tell the type of $x at compile time here: $x = rand > .5 ?? %h !! @a | 21:04 | |
but I want %h ~~ %h2 to be able to do the right thing at compile time | |||
integral | %h ~~ %h2; is different from: do { my $a = %h2; %h ~~ $a } ? | 21:05 | |
of course, your op2Match isn't even called at compile time... | |||
Juerd | autrijus: (1,2).push(3) should just work, IMHO | 21:06 | |
autrijus: But I think any (,).normalmethod should warn. | |||
gaal | integral: point. Then I don't understand why S04/"Smart matching" mentions compile-time at all. | 21:07 | |
Juerd | autrijus: Or die even, perhaps | ||
TBH, more and more I think commas in scalar context should just be forbidden. | 21:10 | ||
There are many features we could hang onto this syntax, and none of them is obvious or always non-surprising. | |||
I love the array-of-aliases, but this is might just be a little too subtle. | |||
r0nny | i got a weird idea - how about supporting .net libs in perl6 | 21:11 | |
Juerd | For that matter, I think a simple "alias" keyword would work better, returning in list context a list of aliases, in item context an array of aliases. | ||
r0nny: Not weird, not new, not controversial. Does this disappoint you? :) | |||
r0nny | hmm | 21:12 | |
yeah - i need to feed my brain, so i get weird, new and controversial ideas again | |||
Juerd | Sorry ;) | ||
r0nny | ;P | 21:13 | |
hmm - just need to find a way to make .net more perl6-ish | 21:14 | ||
*afk* | 21:15 | ||
22:10
_SamB_ is now known as SamB
22:33
lampus_ is now known as lampus
22:48
knewt__ is now known as knewt
|
|||
kgftr|konobi | damn... haskell.org/hawiki/Frag is just scary | 23:05 | |
integral | I guess no one told the author of Frag that you can't write games in functional languages ... :-P | 23:13 | |
wilx | Hey! Abuse uses Lisp for scripting the whole game. So it is not the first game that uses functional language. | 23:19 | |
SamB | wilx: well, that LISP is messed up | 23:20 | |
I tried to load it in CL and it couldn't handle the comments! | |||
wilx | Heh. | ||
SamB | (of course, it would have needed plenty of things defined, but I was not about to rip the reader apart and put it together again just to try and port Abuse to use a real LISP | 23:22 | |
Shillo | SamB: What do they use for comments? | 23:23 | |
SamB | Shillo: well, it evidently supports one or both of C and C++ style comments | 23:24 | |
Shillo | SamB: *Shriek!* | 23:25 | |
SamB: C++ style is at least easy. Search/replace // with ; | 23:26 | ||
ajs_ | I've always thought that comments should be required to start in column zero, begin with "#;//*" and end with "*//;#" | 23:29 | |
Shillo | ajs_: Nah. They should start at column 0, and begin with ' C ' (remove quotes) | 23:39 | |
Later, folks. :) | 23:40 |