--- Log opened Mon Sep 14 00:00:09 2009 |
00:24 | <@McMartin> | Vorn: To what purpose? |
00:25 | <@Vornicus> | Example code for my data structures class. |
00:25 | <@Vornicus> | Exactly two of which are in assembler - I need to show how to make structs and arrays. |
00:25 | <@McMartin> | Aha |
00:26 | < Corra[Venus]> | fun. |
00:27 | < Corra[Venus]> | fun. |
00:27 | <@McMartin> | As it happens, x86 has some shortcuts in it for this. Whether you want to actually *use* them is of course up for debate~ |
00:27 | <@Vornicus> | Once I've got that, the rest I get to hop up to soemthing a little more sensible like C or Python. |
00:28 | < Corra[Venus]> | It's nice using a compiler, huh? :D |
00:28 | <@McMartin> | The compiler also knows to use the shortcuts~ |
00:28 | < gnolam> | Leaning x86 assembly is something I really should try one day. As it is, the only assembly I truly know is for archaic systems. |
00:28 | <@McMartin> | x86 is an archaic system~ |
00:28 | < 963AAAAAQ> | Haha. |
00:29 | <@Vornicus> | Well. I'm being rather explicit. |
00:29 | < gnolam> | Then again, with vector extensions etc, there really isn't much use in writing assembly these days. |
00:29 | <@McMartin> | Just one that most of our modern machines have on-chip emulators for |
00:29 | < gnolam> | I've even managed to write all my embedded systems code without touching assembly. |
00:29 | <@McMartin> | Well, the SIMD stuff is what you need assembly to write in the first place. Then you pack those up in nice libraries for your language of choice. |
00:29 | | * McMartin nods |
00:29 | | * McMartin has written programs that ran on handheld consoles with gcc alone. |
00:29 | < gnolam> | And now I'm doing a bit of GPGPU. Still no assembly. :) |
00:31 | <@McMartin> | It's really only useful for showing how compilers do their thing. |
00:32 | <@McMartin> | As it happens, the last time I touched assembly it was to trick the compiler. |
00:33 | <@McMartin> | I was interfering with the end of a function call because I needed to check stack values after the return value was computed and before it actually cleaned itself up |
00:33 | < Tarinaky> | Does anyone here know anything about yacc/bison? |
00:33 | < Corra[Venus]> | I know to stay away from it. Apparently the versioning on it is a pain. |
00:35 | <@McMartin> | flex, on the other hand, is mostly fine. |
00:35 | | * gnolam gets the mental image of an MMU licking itself clean. |
00:35 | <@McMartin> | LALR(1) parser generators in general are extremely difficult to do decent error reporting with. |
00:35 | < Tarinaky> | I'm trying to find some documentation on how to interface them with other code. |
00:35 | <@McMartin> | Oh. |
00:36 | <@McMartin> | It's, um, mostly with global variables. |
00:36 | < Tarinaky> | ATM all I've found are howtos explaining BNFs and such which I'm fine with. |
00:36 | < Tarinaky> | My problem is that I don't want the parser to just run as a stand-alone desk-calculator. |
00:36 | < Tarinaky> | >.< |
00:36 | <@McMartin> | Right |
00:36 | <@McMartin> | So instead of computing things like that, you build up a data structure pointed to by a global variable |
00:36 | <@McMartin> | Then when you call yy_parse() and it returns successfully that global variable has your AST. |
00:37 | <@McMartin> | (AST = Abstract Syntax Tree; that is, the data structure representing the program.) |
00:37 | < Tarinaky> | >.< woosh. |
00:38 | <@McMartin> | OK, so |
00:38 | | * Tarinaky sighs. I fail at programming forever -.- |
00:38 | <@McMartin> | ... remind me again of your experience level here. I may be pitching it wrong (I'm aiming at "3rd-year CS student", which is where this usually comes up) |
00:39 | <@McMartin> | And compilers/program analysis was actually my specialization in grad school. |
00:39 | < Tarinaky> | I have no formal education in Computer Science but I've read a reference manual on C++ cover to cover about twice now >.< |
00:39 | <@McMartin> | OK, let's pull back a little bit =) |
00:39 | <@McMartin> | Sorry, that one was my fault. |
00:40 | <@McMartin> | Let's pull back to the lexer, which turned a stream of characters into a stream of tokens. |
00:40 | <@McMartin> | YOu were doing that before, right? With flex? |
00:40 | <@McMartin> | Or are you building that into the BNF too? |
00:40 | < Corra[Venus]> | I didn't get the chance to take the Compilers course unfortunately, though I am getting to take a Microprocessor Based Systems course. |
00:41 | < Tarinaky> | ATM I've got a yacc parser calling a flex tokeniser to get tokens I think.. |
00:41 | | * McMartin nods |
00:41 | | * Tarinaky loads up the actual files. |
00:42 | <@McMartin> | OK. So, these desk calculator example programs you're seeing, they're taking the stream of tokens and doing actions with them to produce a return value that is the result. |
00:42 | < Tarinaky> | Okay. |
00:42 | <@McMartin> | What you want, if you're parsing a programming language, is to have a bunch of C++ classes that represent a program and its components (FunctionDeclaration, IfStatement, etc. etc. etc.) and have a full parse result in computing an object of type Program. |
00:43 | <@McMartin> | Which is probably a list of Declarations and Definitions and stuff. |
00:44 | < Tarinaky> | Right. So I'm best off throwing yacc/bison away completely then? |
00:44 | <@McMartin> | Well, at your present experience level, probably not |
00:44 | <@McMartin> | But you do recall us all warning you at the start that this was a really difficult first project. |
00:45 | < Tarinaky> | No. |
00:45 | < Tarinaky> | Technically it's not a first project. >.> |
00:45 | <@McMartin> | Well, OK, let's clarify slightly. |
00:45 | <@McMartin> | "This kind of project is usually issued to students with two years of formal training" |
00:46 | <@McMartin> | If you aren't comfortable with designing a bunch of classes that, taken together, represent a program, you won't be able to proceed and should shelve this until you get better with data structures. |
00:47 | <@McMartin> | And for practice with *that*, the usual project suggestions are "simple in-memory database" and "simple action game". |
00:48 | <@McMartin> | If you are comfortable with it, then, to take the desk calculator example... |
00:48 | < Tarinaky> | I've played around with SDL and got a scrolling buffer to work before getting bored because I really couldn't be arsed with graphics. |
00:48 | <@McMartin> | Right now you've got stuff that looks vaguely like (I forget bison syntax, so bear with me) |
00:49 | <@McMartin> | expr: expr PLUS expr { $$ = $1 + $2; } |
00:49 | <@McMartin> | When building a syntax tree, that would instead be more like |
00:49 | <@McMartin> | expr: expr PLUS expr { $$ = new AddExpression ($1, $2); } |
00:50 | <@McMartin> | This coffeeshop closes in about 10 minutes. |
00:50 | <@McMartin> | If you've messed with SDL, writing something like Pong or Breakout is actually an excellent way to get practice with objects, and the drawing part is generally an afterthought (SDL_FillRect, mostly). |
00:51 | <@McMartin> | I personally detest the recipe/addressbook applications that always seem to be the intro applications~ |
00:53 | <@McMartin> | Right, closing now. |
00:53 | <@McMartin> | Back in about 20min. |
00:53 | < Tarinaky> | Alright. |
00:53 | < Tarinaky> | Bye. |
00:53 | < Corra[Venus]> | Anyone worked with Remote Tea before? |
01:06 | | You're now known as TheWatcher[T-2] |
01:09 | <@ToxicFrog> | I have never even heard of it. |
01:09 | <@ToxicFrog> | Tarinaky: I can also provide assistance with compiler theory. |
01:09 | | * Vornicus knows a little bit, but not much! |
01:09 | < Tarinaky> | I'm not, strictly speaking, making a compiler/language. A desktop calculator isn't too far from the complexity of what I want. |
01:10 | < Corra[Venus]> | Hehe... uninvassive subclassing... |
01:11 | <@ToxicFrog> | Eh, it draws on the same skills, mostly. |
01:11 | <@ToxicFrog> | You can take some shortcuts like computing the answer at parse time rather than generating an AST. |
01:12 | < Tarinaky> | Okay. So I have a function that pops characters and returns tokens. I don't get how I arrange the tokens into a tree :s |
01:12 | <@Vornicus> | When I wrote Schlockian 3 I ended up doing some really scary things with just token lists. |
01:12 | <@ToxicFrog> | I really like compilers and wrote a C- compiler (linux host, TINY target) two semesters ago using flex, bison, and lua, so... |
01:19 | < Tarinaky> | How do I make the token tree? |
01:21 | | You're now known as TheWatcher[zZzZ] |
01:21 | <@TheWatcher[zZzZ]> | Draw one tree in the middle of a picture of bushes. |
01:22 | < Tarinaky> | ... What? That's a touch too much zen :s |
01:22 | < Tarinaky> | I know there's a tree template in the stl and I -think- I remember how the nodes of a tree goes together. |
01:23 | <@McMartin> | I suspect that you won't want to arrange the tokens themselves |
01:23 | <@TheWatcher[zZzZ]> | (well, you know how there's sometimes the token $minority in sitcoms or whatever, well, a token tree.... aaanyway, I'm going to bed now...) |
01:23 | <@McMartin> | Parentheses, for instance, you probably don't care about |
01:23 | <@McMartin> | If you have, say, 1+2*3 and (1+2)*3, you'd make trees: |
01:24 | <@McMartin> | +: Left 1, Right (*: Left 2, Right 3) |
01:24 | <@McMartin> | and |
01:24 | <@McMartin> | *: Left (+: Left 1, Right 2), Right 3 |
01:24 | <@McMartin> | Not easy to write out on one line, but that. |
01:24 | <@McMartin> | The children can be either other expression nodes or raw values |
01:25 | < gnolam> | All you know is that they'll disappoint their parent nodes. |
01:25 | < Tarinaky> | Badum-psch. |
01:26 | < gnolam> | ... I should probably go to bed. |
01:28 | < Corra[Venus]> | sleep well then. |
01:29 | < Tarinaky> | Same. |
01:30 | < Tarinaky> | I'm off to bed as well. |
01:30 | | Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has quit [Connection closed] |
02:28 | | dmlandrum [Consul__@Nightstar-15b281e2.sfldmi.ameritech.net] has quit [[NS] Quit: Leaving] |
02:34 | | Consul [Consul__@Nightstar-15b281e2.sfldmi.ameritech.net] has joined #code |
02:35 | < Consul> | Ack! Forgot to change my auto-login settings. |
02:35 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [[NS] Quit: Z?] |
02:35 | | Consul [Consul__@Nightstar-15b281e2.sfldmi.ameritech.net] has quit [[NS] Quit: Leaving] |
02:35 | | dmlandrum [dmlandrum__@Nightstar-15b281e2.sfldmi.ameritech.net] has joined #code |
02:35 | < dmlandrum> | There we go. |
03:02 | | Attilla [The.Attilla@FBC920.480E8C.768493.2E7AD9] has quit [[NS] Quit: ] |
03:07 | < Corra[Venus]> | Hmm... so a question, is there an easy way to find a class' private field value in java? |
03:08 | < Corra[Venus]> | perhaps through subclassing? |
03:14 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code |
03:16 | < gnolam> | 'ullo again. |
03:16 | < Corra[Venus]> | hello. |
03:19 | < Corra[Venus]> | hmm.. how to find the value of a private field... |
03:20 | < gnolam> | Language, context? |
03:20 | < Corra[Venus]> | I'm doing XDR data serialization in Java. I need to know the size of the encoded message, but the library doesn't tell me. |
03:20 | < Corra[Venus]> | the buffer and index values are private. |
03:25 | < Corra[Venus]> | hm.. this might be a way.. |
03:31 | < Corra[Venus]> | Java Reflections for the win. |
03:34 | <@McMartin> | Won't that throw an exception if you don't have the requisite access? |
03:37 | < Corra[Venus]> | Hehe.... luckily (for me) Java has seen it fit to provide a way around that. |
03:37 | < Corra[Venus]> | So yes, at first I had that problem. |
03:39 | | * gnolam once again wishes for a "limited markup" e-mail format. |
03:39 | <@McMartin> | What is the way around it? |
03:39 | < Corra[Venus]> | There is actually a very simple Field.setAccessable(true); line. |
03:39 | <@McMartin> | Heh. |
03:39 | < Corra[Venus]> | :P |
03:39 | < Corra[Venus]> | But I'm very grateful that there is. |
03:40 | < Corra[Venus]> | This line is not for Evil mind you... |
03:43 | < gnolam> | Raise your hands everyone who agrees that "Skeleton-Subspace Deformation" sounds like something you'd overhear in a Star Trek medbay. |
03:43 | < Corra[Venus]> | lol! |
03:43 | <@McMartin> | Hee |
03:43 | | * 963AAAAAQ raises his. |
03:43 | | * McMartin reticulates some splines. |
03:43 | | * 963AAAAAQ is bored of this nick now. |
03:43 | | 963AAAAAQ is now known as Namegduf |
03:43 | <@McMartin> | More Source SDK hacking? |
03:43 | | * Corra[Venus] hates undocumented protocols. |
03:44 | < gnolam> | Nah. Homework. |
03:49 | | * Corra[Venus] grumbles and goes about figuring out Player. |
03:50 | < gnolam> | The Source job is officially over. |
03:51 | < gnolam> | Well... sort of. I /still/ haven't gotten everything I need to make the final delivery, but I'm not getting a paycheck or working on it anymore. |
03:54 | < dmlandrum> | Learning Japanese vocabulary would bne |
03:54 | < dmlandrum> | be easier if I could immerse myself in it better. |
03:54 | | * dmlandrum kicks his enter key |
04:00 | < dmlandrum> | Japanese grammar actually looks an awful lot like the grammar for a lot of programming languages. (To try to pull my ramblings vaguely on-topic.) |
04:01 | < dmlandrum> | (Because stupid me just realized he had the wrong tab open.) |
04:12 | < gnolam> | Mmm... writing formulae in plaintext... |
04:18 | < gnolam> | To be specific, a 69 character transformation chain, involving a whole lot of inverse matrices and prime symbols. |
04:30 | < dmlandrum> | They could've used that line on an episode of Star Trek. |
04:30 | | * dmlandrum was once Consul, by the way. |
04:31 | <@Vornicus> | Why are you no longer? |
04:32 | < dmlandrum> | I've been phasing the name out for a long time now. This network was basically the only place I was still using it. |
04:32 | < dmlandrum> | The only places I still use are on message boards I've belonged to for a while. |
04:37 | <@Vornicus> | ah, so |
04:38 | < dmlandrum> | It started to seem kinda childish to me, I guess. |
04:38 | < dmlandrum> | Well, not childish, but I've had it since I was 17 or so, and I don't need to be reminded of that point in my life. :-) |
04:40 | <@Vornicus> | heh |
04:46 | < gnolam> | "The shape is represented by a set of point samples, dubbed /phyxels/. (Pixels, voxels, texels... everybody wants their own names on things. It's a /point/, OK?)" |
04:46 | < dmlandrum> | That suxxels. |
04:46 | < dmlandrum> | Sorry, I seem to think I'm a comedian tonight. |
04:49 | <@Vornicus> | Pixels and voxels at least make sense. |
04:49 | < dmlandrum> | Voxel's a make of car in Europe. |
04:52 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
04:52 | < gnolam> | Texels actually also make sense. |
04:53 | < gnolam> | Even if it's sort of an academic difference (like the difference between a fragment and a pixel). |
04:54 | < gnolam> | Texels have filtering taken into account. |
04:54 | < gnolam> | dmlandrum: really? |
04:54 | < dmlandrum> | Believe so. |
04:54 | < dmlandrum> | Jeremy Clarkson's mentioned it a few times. |
04:54 | < dmlandrum> | It might not be spelled that way, exactly. |
04:57 | < gnolam> | Ah. Vauxhall. What the Brits think Opels are. :) |
04:58 | < dmlandrum> | Ah, okay. |
04:59 | < Corra[Venus]> | how to map to this device address... |
05:04 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
05:05 | | mode/#code [+o Vornicus] by Reiver |
05:07 | < Corra[Venus]> | Hahahehehahahahaehahaha!! I'll just grep the whole project! That'll find it!!! |
05:20 | < gnolam> | Argh. I shouldn't be doing linear algebra at 0620. |
05:20 | < gnolam> | (Without any sleep) |
05:21 | < gnolam> | I'm trying to remember how commutative and associative matrix multiplication with scalars are. |
05:21 | < gnolam> | I.e. is k*A*B*C == A*B*k*C ? |
05:22 | <@Vornicus> | Matrix multiplication is associative but not commutative. |
05:23 | <@Vornicus> | Oh, wait. |
05:23 | <@Vornicus> | Matrix multiplication vs scalars is commutative /and/ associative, so yes, that is true. |
05:23 | < gnolam> | Ah, thought so. Thanks. |
05:42 | < gnolam> | Aaand that was the homework done. |
05:43 | < gnolam> | Time to, ah, kill some time then. |
05:43 | < gnolam> | Then: to implement parallax mapping with offset limiting or to play GTA IV, that is the question. |
06:24 | | Derakon is now known as Derakon[AFK] |
06:40 | | * gnolam stabs Linux's locales. |
06:43 | | * Corra[Venus] stabs lack of serialization documentation. |
06:43 | < gnolam> | Explain to me why a locale change is an operation that requires installation of packages and edits of obscure configuration files? |
06:44 | < Corra[Venus]> | because unix is only used in the western world? |
06:44 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has joined #code |
06:44 | < gnolam> | ... I don't see your point. |
06:44 | < Corra[Venus]> | and they don't think it's neccessary to install extra locals in an initial install? |
06:44 | < gnolam> | Does the Western World suddenly enjoy installing obscure packages and editing configuration files? |
06:45 | < Corra[Venus]> | linux is all about ask questions now, install later! |
06:48 | | * gnolam gives up on setting locales. AGAIN. |
06:50 | < Namegduf> | gnolam: What distribution? |
06:52 | < gnolam> | Ubuntu. |
06:53 | < Namegduf> | Weird. I don't recall the exact details for Debian, but I think it should just involve changing an environmental variable and reinstalling the locales package, which lets you select which locales files you want installing. |
06:53 | < Namegduf> | (Or installing locales-all) |
06:53 | < Namegduf> | I'm surprised Ubuntu's substantially harder. |
06:57 | | AnnoDomini [farkoff@Nightstar-26090653.adsl.tpnet.pl] has joined #code |
06:57 | | mode/#code [+o AnnoDomini] by Reiver |
06:57 | | Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code |
06:58 | < gnolam> | As usual when it comes to Linux, what answers you find when googling your problem are outdated and no longer apply (if ever they did). |
06:59 | < Corra[Venus]> | haha....haha... |
06:59 | < gnolam> | Yes? |
07:02 | < Corra[Venus]> | no, I'm just going crAZY over this project. |
07:22 | <@McMartin> | "Open source software is only free if your time is useless", etc. |
07:28 | | * Corra[Venus] is loaded on this caffeine. |
07:48 | < Corra[Venus]> | well, just not really sure now... maybe it's time to give up |
08:06 | | Orthia [Orthianz@Nightstar-5a3e69f6.xnet.co.nz] has quit [Ping timeout: 121 seconds] |
08:07 | < Corra[Venus]> | Hmm... yes, perhaps it is time to stop. |
08:08 | | Reiver [reaverta@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
08:10 | < Corra[Venus]> | Let's do the javadoc, then write-up. |
08:28 | | Vornicus is now known as Vornicus-Latens |
08:42 | | dmlandrum_ [dmlandrum__@Nightstar-15b281e2.sfldmi.ameritech.net] has joined #code |
08:43 | | dmlandrum [dmlandrum__@Nightstar-15b281e2.sfldmi.ameritech.net] has quit [Ping timeout: 121 seconds] |
09:00 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has quit [Client exited] |
09:13 | | Corra[Venus] [Corra@0E1868.9CE43B.B174D5.ACF16C] has quit [[NS] Quit: Leaving] |
09:25 | | You're now known as TheWatcher |
10:48 | | MyCatVer1s [mycatverbs@Nightstar-492e7e67.co.uk] has joined #code |
10:48 | | MyCatVerbs [mycatverbs@Nightstar-492e7e67.co.uk] has quit [Operation timed out] |
11:19 | | MyCatVer1s is now known as MyCatVerbs |
11:42 | | dmlandrum_ [dmlandrum__@Nightstar-15b281e2.sfldmi.ameritech.net] has quit [[NS] Quit: Leaving] |
11:42 | | dmlandrum [dmlandrum__@Nightstar-15b281e2.sfldmi.ameritech.net] has joined #code |
11:57 | | Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has joined #code |
12:34 | | Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Client closed the connection] |
12:45 | | Orthia [Orthianz@Nightstar-30cb5b8a.xnet.co.nz] has joined #code |
12:47 | | Attilla [The.Attilla@FBC920.480E8C.768493.2E7AD9] has joined #code |
14:20 | | AnnoDomini [farkoff@Nightstar-26090653.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds] |
14:31 | | AnnoDomini [farkoff@Nightstar-e467f1e6.adsl.tpnet.pl] has joined #code |
15:06 | | ilf_uni [santros_vexan@Nightstar-a8b44143.dhcp.georgiasouthern.edu] has joined #code |
15:08 | | * ilf_uni has a class in java that has, as part of the class, variables of two other classes I have made. I'm making the default constructor for the Class class, and there's variables of type Professor and Student (other classes I've made), and I'm trying to initially fill them with the default contructor for both, but it dosen't seem to want to work. |
15:27 | | AnnoDomini [farkoff@Nightstar-e467f1e6.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds] |
15:31 | | AnnoDomini [farkoff@Nightstar-e467f1e6.adsl.tpnet.pl] has joined #code |
15:40 | | ilf_uni [santros_vexan@Nightstar-a8b44143.dhcp.georgiasouthern.edu] has quit [[NS] Quit: kaleft] |
--- Log closed Mon Sep 14 16:07:14 2009 |
--- Log opened Mon Sep 14 16:07:22 2009 |
16:07 | | TheWatcher [chris@Nightstar-b4529b0c.zen.co.uk] has joined #code |
16:07 | | Irssi: #code: Total of 21 nicks [7 ops, 0 halfops, 0 voices, 14 normal] |
16:08 | | Irssi: Join to #code was synced in 46 secs |
16:20 | | Derakon[work] [Derakon@Nightstar-d44d635e.ucsf.edu] has joined #code |
16:37 | | Orthia [Orthianz@Nightstar-30cb5b8a.xnet.co.nz] has quit [Ping timeout: 121 seconds] |
17:00 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has joined #code |
17:08 | < Derakon[work]> | Ffff... |
17:08 | < Derakon[work]> | Such a tangled mess of dependencies! |
17:09 | < Derakon[work]> | ...holy shit, there's 29k lines of Python here! ;.; |
17:10 | < Derakon[work]> | Is there a utility that tells me what modules a given module depends on? |
17:10 | < gnolam> | ... that's a man-eating Python you've got there. I'd tread carefully around itl. |
17:10 | < gnolam> | -l |
17:10 | < Derakon[work]> | Thanks gnolam. |
17:38 | < TheWatcher> | Dera: you might be able to generate a call graph with doxygen... |
17:38 | < TheWatcher> | Dunno if it'd help, though |
17:39 | < MyCatVerbs> | Derakon[work]: Nom nom nom the general case no because in Python you can do all sorts of reflection based on things names at runtime and also there's monkeypatching. Good luck! ? |
17:39 | | * Derakon[work] eyes MCV. |
17:39 | < Derakon[work]> | Someone's in a good mood. |
17:39 | < MyCatVerbs> | Not likely to be a problem for you, though. |
17:40 | < MyCatVerbs> | The sort of person who'd actually write 29kloc in Python of all languages probably hasn't actually heard of -any- of the above. |
17:40 | < MyCatVerbs> | At least I'd hope not. |
17:40 | < Derakon[work]> | Heh. |
17:40 | < Derakon[work]> | On further inspection, I think that most of this code actually isn't being used. I hope. |
17:52 | | Syloqs-AFH [Syloq@is.very.awesome] has quit [Ping timeout: 121 seconds] |
17:55 | | Syloqs-AFH [Syloq@NetworkAdministrator.Nightstar.Net] has joined #code |
17:55 | | Syloqs-AFH is now known as NSGuest-48271 |
18:27 | < Derakon[work]> | Hmm... |
18:28 | < Derakon[work]> | Okay, the program I'm looking at right now is intended to take two views of a given slide and figure out the transformation to turn one view into the second. |
18:28 | < Derakon[work]> | They're taken at the same time; the problem is that the cameras are not quite calibrated to show the same image, so there's translation, zoom, and one axis of rotation to correct for. |
18:28 | | Vornicus-Latens [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: ] |
18:28 | < gnolam> | But no skew? |
18:29 | < Derakon[work]> | Not yet, no. Skew is minimal in the middle of the image anyway, where most samples are. |
18:30 | < Derakon[work]> | The current algorithm being used is a simplex algorithm -- it iteratively permutes one of the images and computes the difference between the two. |
18:30 | < Derakon[work]> | I'm thinking it should be possible to solve this directly, though. |
18:30 | < Derakon[work]> | Find three bright spots on image 1, find three spots that make a congruent triangle on image 2, determine transformation to turn image 2's triangle into image 1's triangle. |
18:35 | < Derakon[work]> | My main issue is that spots are of course not single points; they're fuzzier, and I should really be working from their centers. |
18:39 | < TheWatcher> | hm |
18:43 | | * TheWatcher decides that this is going to be impossible with divs, goes back to tables and looks into trickery to provide correct zebra effect |
19:04 | | You're now known as TheWatcher[afk] |
--- Log closed Mon Sep 14 19:04:52 2009 |
--- Log opened Mon Sep 14 19:08:10 2009 |
19:08 | | TheWatcher[afk] [chris@Nightstar-b4529b0c.zen.co.uk] has joined #code |
19:08 | | Irssi: #code: Total of 15 nicks [2 ops, 0 halfops, 0 voices, 13 normal] |
19:08 | | Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has joined #code |
19:08 | | Irssi: Join to #code was synced in 46 secs |
19:09 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has joined #code |
19:09 | | McMartin [mcmartin@Nightstar-2b2c1a9b.pltn13.sbcglobal.net] has joined #code |
19:19 | | Derakon[work] [Derakon@Nightstar-d44d635e.ucsf.edu] has joined #code |
19:31 | | Namegduf [namegduf@37647E.4405C2.CC0C2E.2864B1] has quit [Ping timeout: 121 seconds] |
19:33 | | Namegduf [namegduf@37647E.DB45F1.609B34.8CB351] has joined #code |
19:48 | | Syloq is now known as Syloqs-AFH |
20:11 | < Rhamphoryncus> | wtf.. gvim can open in tabs! |
20:13 | < Rhamphoryncus> | heh, but the "windows" option that I was actually looking for, isn't. Yay for "I have my own windowing system" |
20:35 | | You're now known as TheWatcher |
21:14 | | Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has quit [Client closed the connection] |
21:26 | | Namegduf [namegduf@37647E.DB45F1.609B34.8CB351] has quit [[NS] Quit: Stop being silly, irssi.] |
21:28 | | Namegduf [namegduf@37647E.DB45F1.609B34.8CB351] has joined #code |
21:32 | | Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has joined #code |
22:03 | | dmlandrum [dmlandrum__@Nightstar-15b281e2.sfldmi.ameritech.net] has quit [Ping timeout: 121 seconds] |
22:11 | | dmlandrum [dmlandrum__@Nightstar-15b281e2.sfldmi.ameritech.net] has joined #code |
22:26 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
22:33 | < gnolam> | Yay for compiler crashes. |
22:34 | < McMartin> | Impressive. |
22:35 | | * TheWatcher eyes, is obviously not braining enough for this |
22:35 | < TheWatcher> | <tbody id="foo"> .... <tbody id="bar"> ....</tbody></tbody> vaild, or no? |
22:38 | < Vornicus> | If tbody is valid within a tbody. |
22:38 | < TheWatcher> | Hm, no it isn't |
22:38 | < TheWatcher> | blegh |
22:38 | < TheWatcher> | tr id trickery it is, then. Wonderful |
22:46 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [[NS] Quit: Patching...] |
22:46 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code |
23:19 | | You're now known as TheWatcher[T-2] |
23:21 | | You're now known as TheWatcher[zZzZ] |
23:42 | | Derakon[work] [Derakon@Nightstar-d44d635e.ucsf.edu] has quit [Operation timed out] |
23:44 | | Derakon[work] [Derakon@Nightstar-d44d635e.ucsf.edu] has joined #code |
23:53 | < Derakon[work]> | Haha, in your FACE prior developers! |
23:53 | | Orthia [Orthianz@Nightstar-e588e161.xnet.co.nz] has joined #code |
23:54 | < Derakon[work]> | I have more or less completed this image-alignment program, and while it's maybe not as fast as the prior dev's Simplex method, it has the important distinction of actually working. |
23:54 | < Derakon[work]> | And it's simple, and doesn't have dependencies on archaic libraries. |
23:54 | | * Derakon[work] does the successful coder dance. |
23:54 | < Rhamphoryncus> | :D |
--- Log closed Tue Sep 15 00:00:18 2009 |