--- Log opened Mon May 14 00:00:18 2007 |
00:24 | | Mahal [~Mahal@Nightstar-12512.worldnet.co.nz] has joined #Code |
00:24 | | mode/#code [+o Mahal] by ChanServ |
00:48 | | McMartin [~mcmartin@Nightstar-2079.dsl.snfc21.pacbell.net] has quit [Quit: Homeward bound] |
00:51 | | Thaqui [~Thaqui@Nightstar-25913.jetstream.xtra.co.nz] has joined #code |
00:51 | | mode/#code [+o Thaqui] by ChanServ |
01:34 | | Takyoji [~Takyoji@Nightstar-25812.dhcp.roch.mn.charter.com] has joined #code |
01:35 | < Takyoji> | I hate to keep coming back and asking for RegExs.. but I can't figure out how to make a statement that means "Find anything EXCEPT for 'text1' " |
01:37 | < Takyoji> | Which is used in <\!-- START (.*) --\> to find anything with '<!-- START ' before it and ' -->' after it excluding the ases that match "<!-- START text1 -->" for example |
01:38 | < Takyoji> | cases* not ases |
01:54 | | gnolam [lenin@Nightstar-13557.8.5.253.se.wasadata.net] has quit [Quit: ] |
02:05 | < Takyoji> | So I take it that nobody knows? |
02:07 | <@Vornicus> | What particular regex language are you using? |
02:12 | < MyCatVerbs> | <\!-- START ([^t][^e][^x][^t][^1]|.{0,4}|.{6,}) --\> |
02:13 | < MyCatVerbs> | ...god that's fucking ugly. |
02:13 | <@Vornicus> | Uh, no. |
02:13 | <@Vornicus> | That's... not the way to do it. |
02:13 | < MyCatVerbs> | Takyoji: you should look for a language feature that says "lines that don't match" |
02:13 | <@Vornicus> | "negative lookahead" will likely work. |
02:14 | < MyCatVerbs> | I'd test for lines that do match <\!-- START (.*) --\>, then text for those that *don't* match <\!-- START text1 --\>. Lazy me. ^^ |
02:14 | <@Vornicus> | MCV's works too, and is how I'd likely do it. |
02:14 | < Takyoji> | Actually I'm trying to work on a work-around now |
02:16 | < Takyoji> | So anything that's put in a group is returned as a value, correct? |
02:16 | < Takyoji> | Meaning, anything inbetween a ( and ) is return in the match, right? |
02:17 | <@Vornicus> | Unless you're using it for a specific thing, like negative lookahead. |
02:17 | <@Vornicus> | What regex language are you using? |
02:17 | < Takyoji> | The Perl-ish version I think.. |
02:18 | < Takyoji> | in PHP |
02:19 | <@Vornicus> | Okay. PCRE uses (?!pattern) for negative lookahead. |
02:20 | <@Vornicus> | so your thing looks like <!-- START (?!text1).* --> |
02:24 | < Takyoji> | ahh k |
02:41 | < Takyoji> | Sorry for my VERY late reply, but I've got it to work now from your help |
03:16 | | Vornicus is now known as Vornicus-Latens |
04:06 | | Takyoji [~Takyoji@Nightstar-25812.dhcp.roch.mn.charter.com] has quit [Quit: Leaving] |
05:42 | | ReivZzz is now known as Reiver |
06:42 | | You're now known as TheWatcher |
06:53 | < jerith> | I've had to use negative lookahead. I don't like it very much. |
06:55 | < Reiver> | ? |
06:56 | < jerith> | (?!pattern) |
06:56 | < jerith> | It strikes me as a horrible hack. |
07:15 | | GeekSoldier is now known as GeekSoldier|wr0k |
07:18 | < jerith> | The time I used it, though, I had no control over anything but the regexp. |
08:13 | | You're now known as TheWatcher[afk] |
08:51 | | KBot [~karma.bot@Nightstar-29204.neoplus.adsl.tpnet.pl] has joined #Code |
08:52 | | KarmaBot [~karma.bot@Nightstar-29603.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
08:52 | | KBot is now known as KarmaBot |
08:52 | | AnnoDomini [~farkoff@Nightstar-29603.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
08:56 | | Chalcy [~Chalcedon@Nightstar-1216.ue.woosh.co.nz] has joined #code |
08:56 | | mode/#code [+o Chalcy] by ChanServ |
08:58 | | AnnoDomini [~farkoff@Nightstar-29204.neoplus.adsl.tpnet.pl] has joined #Code |
08:58 | | mode/#code [+o AnnoDomini] by ChanServ |
08:58 | | Chalcedon [~Chalcedon@Nightstar-1216.ue.woosh.co.nz] has quit [Ping Timeout] |
09:34 | | ChalcyAFK [~Chalcedon@Nightstar-1216.ue.woosh.co.nz] has joined #code |
09:35 | | Chalcy [~Chalcedon@Nightstar-1216.ue.woosh.co.nz] has quit [Ping Timeout] |
09:48 | | You're now known as TheWatcher[wr0k] |
10:32 | | ChalcyAFK is now known as Chalcedon |
10:33 | | Chalcedon is now known as NSGuest-1922 |
10:34 | | NSGuest-1922 is now known as Chalcedon |
10:35 | | Chalcedon [~Chalcedon@Nightstar-1216.ue.woosh.co.nz] has quit [Quit: slep] |
11:29 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Ping Timeout] |
11:35 | | Mahal is now known as mahalbed |
11:38 | | GeekSoldier_ [~Rob@Nightstar-5397.pools.arcor-ip.net] has joined #code |
11:39 | | GeekSoldier|wr0k [~Rob@Nightstar-4056.pools.arcor-ip.net] has quit [Ping Timeout] |
12:43 | | Raif [~corvusign@Nightstar-22484.hsd1.ca.comcast.net] has quit [Connection reset by peer] |
12:43 | | Raif [~corvusign@Nightstar-22484.hsd1.ca.comcast.net] has joined #Code |
12:44 | | mode/#code [+o Raif] by ChanServ |
13:04 | | Vornicus-Latens is now known as Vornicus |
13:54 | | gnolam [lenin@Nightstar-13557.8.5.253.se.wasadata.net] has joined #Code |
13:54 | | mode/#code [+o gnolam] by ChanServ |
14:01 | | Thaqui [~Thaqui@Nightstar-25913.jetstream.xtra.co.nz] has left #code [Leaving] |
14:48 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code |
14:48 | | mode/#code [+o ToxicFrog] by ChanServ |
15:28 | | GeekSoldier_ is now known as GeekSoldier |
15:43 | | You're now known as TheWatcher[afk] |
15:52 | | ToxicFrog is now known as ToxicFrog|wr0k |
16:21 | | * ToxicFrog|wr0k blinks at this driver |
16:21 | <@ToxicFrog|wr0k> | /* send command to the chip */ |
16:21 | <@ToxicFrog|wr0k> | ... code snipped .. |
16:21 | < GeekSoldier> | Is Miss Daisy not pleased? |
16:21 | <@ToxicFrog|wr0k> | /* coalesce doorbells */ |
16:22 | < GeekSoldier> | coalesce doorbells? |
16:22 | < GeekSoldier> | is there great magic in that snip? |
16:23 | <@ToxicFrog|wr0k> | No, it's just lock_command_queue, memcpy, inc_command_queue. |
16:24 | < GeekSoldier> | hmm. |
16:24 | < GeekSoldier> | silly doorbells. |
16:24 | <@ToxicFrog|wr0k> | More precisely: |
16:25 | <@ToxicFrog|wr0k> | /* coalesce doorbells */ |
16:25 | <@ToxicFrog|wr0k> | n1_dev->doorbell_count[queue]++; |
16:25 | < GeekSoldier> | heh. |
16:52 | | Serah [~Z@87.72.36.ns-26407] has quit [Ping Timeout] |
17:18 | | You're now known as TheWatcher |
17:27 | | Reiver is now known as ReivZzz |
17:37 | <@ToxicFrog|wr0k> | aughskldfjfjgisdhjgh |
17:37 | <@ToxicFrog|wr0k> | This code keeps using types that aren't defined anywhere! |
17:41 | <@Vornicus> | Cool. |
17:41 | <@ToxicFrog|wr0k> | Like n1_request_buffer. |
17:42 | < TheWatcher> | ... |
17:42 | | * TheWatcher recommends the application of copious amounts of fire |
17:42 | <@ToxicFrog|wr0k> | Not declared anywhere in the driver sources, the kernel sources, or /usr/include. |
17:42 | <@ToxicFrog|wr0k> | And yet, this code builds and runs. |
17:42 | | You're now known as TheWatcher[afk] |
17:42 | <@ToxicFrog|wr0k> | Indeed it is running right now. |
17:43 | <@ToxicFrog|wr0k> | This is rather vexing, because I kind of want the type signature so that I can add stat gathering to the driver. |
17:43 | <@ToxicFrog|wr0k> | And I'm having to reverse engineer it from do_request(). |
17:44 | < TheWatcher[afk]> | which driver? |
17:44 | <@ToxicFrog|wr0k> | Cavium CN1xxx SSL accelerator. |
18:26 | <@Vornicus> | ...arg, remind me: I can make an instance var const and still assign to it in a constructor, yes? |
18:26 | <@ToxicFrog|wr0k> | It has to go in the var(value) part. |
18:26 | <@Vornicus> | I think I missed it. what? |
18:27 | <@ToxicFrog|wr0k> | Eg, ClassName(...): foo(bar), baz(moby) { ... } |
18:27 | <@Vornicus> | ah. I didn't know I could do that. |
18:27 | <@ToxicFrog|wr0k> | You are allowed to put a sequence of initializers after the signature and before the actual code. |
18:29 | | * ToxicFrog|wr0k ponders Lua, decides that you can't implement const in it without proxytables. |
18:41 | <@Vornicus> | ...I wish I had some sense of how other numeric types are dealt with, I could write this one more easily. |
18:42 | <@ToxicFrog|wr0k> | ? |
18:42 | | * ToxicFrog|wr0k memotoselves: use W`rkn, wr0k is deprecated. |
18:43 | <@Vornicus> | Oh, I'm trying to write a vector class, because all the ones I can find don't build, and all the ones I've written in the past suck balls. |
18:43 | <@ToxicFrog|wr0k> | ...isn't that just three floats and some operator overloads? |
18:44 | <@ToxicFrog|wr0k> | (for that matter, aren't Vector and Point basically the same thing?) |
18:45 | <@Vornicus> | Yes, it's three floats and some operator overloads. |
18:45 | <@Vornicus> | My problem is that I don't know how to do the += etc overloads without making for insanity |
18:45 | <@Vornicus> | ... |
18:46 | <@Vornicus> | ...this is because I'm assuming stuff like dictionaries go by reference, which they do in referency languages like Python, and they do /not/ in C++. |
18:46 | <@ToxicFrog|wr0k> | You could just make them immutable and have the operators return new vectors. |
18:46 | <@Vornicus> | ...wait, += lets me return new vectors? |
18:46 | <@ToxicFrog|wr0k> | And thus make .= a build error. |
18:46 | <@ToxicFrog|wr0k> | No. |
18:46 | <@ToxicFrog|wr0k> | That's the point. |
18:46 | <@ToxicFrog|wr0k> | You define +, which takes two Vector/Points and returns a new one, and not +=. |
18:47 | <@Vornicus> | Thing is that otherwise they act like numbers a lot - and the numbers allow += |
18:47 | <@ToxicFrog|wr0k> | (I'm not sure if += lets you return a new object. It might.) |
18:48 | <@ToxicFrog|wr0k> | (or, rather, if it does, I don't know if 'foo += bar' becomes equal to 'foo = foo + bar', or if you would need 'foo = (foo += bar)' |
18:48 | <@Vornicus> | I've figured it out now, though - dictionaries and the like in C++ don't do by reference but by copy, and constify, so I don't have to worry about it. |
18:48 | <@ToxicFrog|wr0k> | Aah. |
18:49 | <@Vornicus> | I've been working in decent languages for too long. |
18:51 | <@ToxicFrog|wr0k> | Heh. I know that feeling. |
18:51 | | * ToxicFrog|wr0k is currently glaring at C for not supporting sparse arrays |
19:00 | | You're now known as TheWatcher |
19:18 | < MyCatVerbs> | Interesting definition. |
19:20 | <@Vornicus> | Interesting definition of what? |
19:20 | < MyCatVerbs> | "Scripting language" as any language which has no implementation written in itself. |
19:21 | <@Vornicus> | A bad one, too. |
19:21 | < MyCatVerbs> | Pity there are so many counterexamples, but oh well. |
19:23 | | * ToxicFrog|wr0k would personally define it as 'any language that can load additional parts of itself, from source, at runtime' |
19:23 | < MyCatVerbs> | Oooh, that is a good definition. |
19:24 | < MyCatVerbs> | Addenum, "without resorting to an external compiler"? You could always call out to gcc to built a shared object at runtime... |
19:25 | <@Vornicus> | that doesn't work in and of itself though |
19:26 | < MyCatVerbs> | Oh yes, fair point. You have to perform horrible hacks to actually load the code in and link against it. |
19:26 | <@Vornicus> | So, essentially: anything with eval/exec |
19:31 | <@ToxicFrog|wr0k> | (you know what I would like to have in |
19:32 | <@ToxicFrog|wr0k> | (you know what I would like to have in Lua? The ability to load a function from a string, and say 'treat this function as though it were at the same lexical scope as myself') |
19:32 | <@ToxicFrog|wr0k> | (you can do setfenv(), but that doesn't give you access to locals, etc) |
19:32 | <@ToxicFrog|wr0k> | (I wouldn't want to be the one who has to implement that, though ??) |
19:32 | <@Vornicus> | (heh) |
19:33 | < MyCatVerbs> | http://antirez.com/articoli/tclmisunderstood.html <-- fun. |
19:35 | <@Vornicus> | Okay, concept 5? |
19:35 | <@Vornicus> | Scares The Fuck Out Of Me. |
19:37 | <@ToxicFrog|wr0k> | I like #5, although I've already Been There and Done That in bash. |
19:37 | <@ToxicFrog|wr0k> | A lot. |
19:37 | <@ToxicFrog|wr0k> | #7 irritates me greatly. |
19:37 | <@ToxicFrog|wr0k> | Although at least you can work around it. |
19:40 | <@ToxicFrog|wr0k> | uplevel is made of awesome and is in fact exactly what I just described. |
19:43 | <@ToxicFrog|wr0k> | Vornicus: #5 really isn't that far a step from what bash already does, and I know you've used bash a fair bit. |
19:47 | | * MyCatVerbs ponders. |
19:48 | | * TheWatcher blinks |
19:48 | | * TheWatcher has just tried A="ec"; B="ho"; $A$B "foo"; |
19:48 | < MyCatVerbs> | set a {$bu}; set b puts; set bu "Hello World!";$b $a |
19:49 | <@Vornicus> | I know I've done it to compose paths. |
19:49 | < TheWatcher> | I didn't even know that was possible in bash |
19:49 | <@ToxicFrog|wr0k> | TheWatcher: you didn't? |
19:49 | < TheWatcher> | Nope |
19:49 | <@ToxicFrog|wr0k> | You've never seen code like: |
19:49 | <@ToxicFrog|wr0k> | CC="gcc -Wall" |
19:49 | <@ToxicFrog|wr0k> | $CC foo |
19:49 | < TheWatcher> | True |
19:49 | < TheWatcher> | O just.. didn't think of it that way |
19:50 | < TheWatcher> | *I |
19:50 | < TheWatcher> | I should have realised, but... |
19:51 | < MyCatVerbs> | Fascinating. |
19:51 | < MyCatVerbs> | So that's why TCL is so goddamn slow. All strings, no native integers or symbols. Not to mention the whole language is based around eval. |
19:52 | <@ToxicFrog|wr0k> | It does cacheing, though. |
19:52 | <@ToxicFrog|wr0k> | Which is presumably what gives it the speed advantage over Ruby, not that that's particularly hard~ |
19:52 | < MyCatVerbs> | Oooh. Cacheing is spiffy. |
20:17 | | Netsplit DeepThought.NY.US.Nightstar.Net <-> Blargh.CA.US.Nightstar.Net quits: @mahalbed, ReivZzz, @AnnoDomini |
20:18 | | Netsplit over, joins: ReivZzz |
20:18 | | Netsplit over, joins: mahalbed |
20:18 | | Netsplit over, joins: AnnoDomini |
20:18 | | mode/#code [+o AnnoDomini] by ChanServ |
20:31 | | You're now known as TheWatcher[afk] |
20:48 | | Chalcedon [~Chalcedon@Nightstar-1216.ue.woosh.co.nz] has joined #code |
20:48 | | mode/#code [+o Chalcedon] by ChanServ |
21:53 | | You're now known as TheWatcher |
22:09 | | AnnoDomini [~farkoff@Nightstar-29204.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
22:14 | | AnnoDomini [~farkoff@Nightstar-29204.neoplus.adsl.tpnet.pl] has joined #Code |
22:16 | | AnnoDomini [~farkoff@Nightstar-29204.neoplus.adsl.tpnet.pl] has quit [Quit: Kill the interloper! Rip out its life!] |
22:19 | | AnnoDomini [~farkoff@Nightstar-29204.neoplus.adsl.tpnet.pl] has joined #Code |
22:19 | | mode/#code [+o AnnoDomini] by ChanServ |
22:20 | | mahalbed is now known as Mahal |
22:22 | | You're now known as TheWatcher[T-2] |
22:42 | | You're now known as TheWatcher[zZzZ] |
23:23 | | Mahal is now known as MahalErrand |
23:58 | | Takyoji [~Takyoji@Nightstar-25812.dhcp.roch.mn.charter.com] has joined #code |
23:59 | < Takyoji> | What's the escape code for a backslash? IE \n creates a new line |
--- Log closed Tue May 15 00:00:16 2007 |