--- Log opened Thu Oct 18 00:00:14 2012 |
00:13 | | Azash [ap@Nightstar-339920e6.net] has quit [Client closed the connection] |
00:35 | | himi [fow035@D741F1.243F35.CADC30.81D435] has joined #code |
00:35 | | mode/#code [+o himi] by ChanServ |
00:35 | | Syloq_Home [Syloq@NetworkAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
00:38 | | Azash [ap@Nightstar-9801f592.cs.helsinki.fi] has joined #code |
00:38 | | * Azash cries in defeat |
00:39 | < Azash> | I just ended up doing the old mv-instead-of-cp on some semi-important db hosted on my server |
00:39 | | * Azash is currently dd'ing the entire drive to an image on a friend's box for recovering files |
00:41 | | Syloq_Home [Syloq@NetworkAdministrator.Nightstar.Net] has joined #code |
00:44 | <&ToxicFrog> | ...no backups? |
00:44 | < Azash> | I had a manual backup, which was the victim of said mv/cp confusion |
00:44 | < Azash> | I've learned from this, though ( ._.) |
00:44 | | * Azash is reading up on cron jobs while the dd is working |
01:00 | | Derakon[AFK] is now known as Derakon |
01:00 | | mode/#code [+ao Derakon Derakon] by ChanServ |
01:00 | | Moltare [Moltare@583787.FF2A18.190FE2.4D81A1] has quit [Ping timeout: 121 seconds] |
01:02 | | Moltare [Moltare@583787.FF2A18.190FE2.4D81A1] has joined #code |
01:14 | | You're now known as TheWatcher[T-2] |
01:18 | | You're now known as TheWatcher[zZzZ] |
01:30 | | syksleep is now known as Syk |
02:07 | | Azash [ap@Nightstar-9801f592.cs.helsinki.fi] has quit [[NS] Quit: leaving] |
02:16 | | Azash [ap@Nightstar-339920e6.net] has joined #code |
02:24 | | Attilla [Obsolete@Nightstar-e3245d77.as43234.net] has quit [Ping timeout: 121 seconds] |
03:06 | | Reiv [NSwebIRC@D4E70A.D52DB0.820B13.98C775] has quit [Ping timeout: 121 seconds] |
03:08 | | Reiv [NSwebIRC@D4E70A.D52DB0.820B13.98C775] has joined #code |
05:30 | | Kindamoody[zZz] is now known as Kindamoody |
05:38 | | Vash [Vash@Nightstar-3ba4108e.wlfrct.sbcglobal.net] has joined #code |
05:38 | | mode/#code [+o Vash] by ChanServ |
06:05 | | celticminstrel [celticminst@Nightstar-05d23b97.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
06:22 | | Derakon is now known as Derakon[AFK] |
06:47 | | ErikMesoy|sleep is now known as ErikMesoy |
07:00 | | Syloq_Home [Syloq@NetworkAdministrator.Nightstar.Net] has quit [Client closed the connection] |
07:16 | | himi [fow035@D741F1.243F35.CADC30.81D435] has quit [Ping timeout: 121 seconds] |
07:56 | | Kindamoody is now known as Kindamoody|breakfast |
08:22 | | Vash [Vash@Nightstar-3ba4108e.wlfrct.sbcglobal.net] has quit [[NS] Quit: I lovecraft Vorn!] |
08:24 | | Kindamoody|breakfast is now known as Kindamoody |
08:39 | | Reiv_ [NSwebIRC@D4E70A.D52DB0.820B13.98C775] has joined #code |
08:41 | | Reiv [NSwebIRC@D4E70A.D52DB0.820B13.98C775] has quit [Ping timeout: 121 seconds] |
08:47 | | * Azash yawns |
08:58 | | Kindamoody is now known as Kindamoody|out |
09:07 | | You're now known as TheWatcher |
10:03 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code |
10:03 | | mode/#code [+o himi] by ChanServ |
10:18 | | Attilla [Obsolete@Nightstar-e3245d77.as43234.net] has joined #code |
10:20 | | RichyB [richardb@Nightstar-3b2c2db2.bethere.co.uk] has joined #code |
12:40 | | Derakon[AFK] [Derakon@Nightstar-a3b183ae.ca.comcast.net] has quit [Ping timeout: 121 seconds] |
12:41 | | Derakon[AFK] [Derakon@Nightstar-a3b183ae.ca.comcast.net] has joined #code |
13:13 | | Derakon[AFK] [Derakon@Nightstar-a3b183ae.ca.comcast.net] has quit [Ping timeout: 121 seconds] |
13:14 | | Derakon[AFK] [Derakon@Nightstar-a3b183ae.ca.comcast.net] has joined #code |
13:42 | | Attilla [Obsolete@Nightstar-e3245d77.as43234.net] has quit [Ping timeout: 121 seconds] |
13:48 | | Attilla [Obsolete@Nightstar-47b8c817.as43234.net] has joined #code |
14:07 | < Tarinaky> | Pseudocode/algorithm question! |
14:07 | < Tarinaky> | I'm being very naughty and iterating through the elements of a stack. |
14:08 | < Tarinaky> | Can I get away with this? (I am not modifying the stack - it's just more convenient than copying the stack and then popping the elements from the copy) |
14:10 | < Tarinaky> | Although I suppose copying the stack would involve accessing elements not on the top... am I overthinking this? |
14:11 | < rms> | I think it is probably fine, make sure to document wtf you are doing |
14:12 | < Tarinaky> | My main concern is it's an algorithm and datastructure's course. |
14:12 | < Tarinaky> | Where we're going to be marked on our understanding of stacks etc... |
14:12 | < Tarinaky> | So I have concerns beyond "does it compile" :p |
14:12 | < Tarinaky> | bbiab, lecture. |
14:15 | < rms> | I wouldn't know then, can you talk with your prof about it? |
14:16 | < Syk> | you get an int and a char |
14:16 | < Syk> | you put the int in a glass bowl, where the char used to be |
14:17 | < Syk> | int char stack, etc etc |
14:18 | < rms> | My concerns are mostly with clean, readable code |
14:20 | | * TheWatcher eyes Tarinaky |
14:21 | <@TheWatcher> | Tarinaky: why are you interating over the stack, anyway? My suspicion at this point is that, if the exercise is supposed to be testing understanding of stacks, and you're doing something like that then a) the exercise and its use of stacks is too contrived, or b) you've misunderstood something. |
14:25 | <@TheWatcher> | (I also note that you'll usually find that university programming exercises tend to focus on whether you know how to use the concepts, not whether you can optimise the crap out of it, and will generally /expect/ solutions that are suboptimal to an experienced programmer) |
14:31 | | * iospace double takes at this code |
14:31 | | * iospace pfffts |
14:32 | < iospace> | Print(L"%EOut of memory, are you running Emacs?.\n"); |
14:33 | < Syk> | hey iospace |
14:33 | < Syk> | guess what |
14:33 | < iospace> | what? |
14:33 | < Syk> | I'm resigning on Monday! |
14:33 | | * Syk holds a party |
14:33 | < iospace> | heh |
14:33 | < iospace> | figures :P |
14:34 | < Syk> | iospace: discovered that the CEO was basically bragging about not renewing my mother's contract |
14:34 | < Syk> | the fucker is an absolute slimeball |
14:34 | < Syk> | and I know he'll fuck me over once I'm not needed anymore |
14:35 | < iospace> | yup |
14:35 | < Syk> | so yeah |
14:35 | < Syk> | he was bragging at a conference about a week before he told her |
14:35 | < Syk> | the man does not have a single professional bone in his body |
14:36 | < iospace> | ... yeah |
14:36 | < iospace> | sounds like it |
14:39 | | * Syk flops on iospace. |
14:39 | < Syk> | so yeah, considering selling off all of my PCs |
14:39 | < Syk> | maybe getting a laptop or something |
14:39 | < iospace> | why? |
14:40 | < Syk> | well, moving is expensive |
14:40 | < Syk> | so I can sell off everything here, then just buy stuff when i've settled |
14:41 | < Syk> | just take my SSDs, raspi and external HDDs with data |
14:41 | < Syk> | (moving stuff out of this town is /fuckawful/ expensive) |
14:42 | < iospace> | i think it would be more expensive to rebuy everything than moving it... |
14:43 | < Syk> | well, I need to get a new desk, new bed, etc |
14:43 | < Syk> | which I would buy when moved |
14:43 | < Syk> | so literally all I will be taking is my clothes and my PCs |
14:44 | < Syk> | and maybe some books and stuff, maybe |
14:44 | < Syk> | oh and the pile of [REDACTED] |
14:55 | | celticminstrel [celticminst@Nightstar-05d23b97.cable.rogers.com] has joined #code |
14:57 | < Tarinaky> | TheWatcher: It's taking a random walk through a graph. |
14:57 | < Tarinaky> | TheWatcher: It needs to remove nodes that are already part of the walk/stack from the list of valid nodes it could take. |
14:57 | < Tarinaky> | Because loops are banned. |
14:58 | <&ToxicFrog> | loops as in iteration, or loops as in cycles in the graph? |
14:58 | < Tarinaky> | Cycles in the graph. |
14:59 | < Tarinaky> | Cyclic walks are not allowed. |
14:59 | < Tarinaky> | Also, bbiab - need to walk home. |
14:59 | | gnolam [lenin@Nightstar-ccbf4b44.cust.bredbandsbolaget.se] has quit [[NS] Quit: Reboot] |
15:00 | <&ToxicFrog> | ...so, you need to randomly generate a path that visits each node in the graph exactly once? |
15:00 | <&ToxicFrog> | What happens if the graph is such that this is impossible? |
15:01 | <@TheWatcher> | Last I heard that problem had a well-known name ¬¬ |
15:02 | < Syk> | man, i have the travelling salesman problem all the time at work |
15:02 | <&ToxicFrog> | Except this isn't TSP? |
15:03 | < Syk> | i thought 'visit each node exactly once' was TSP? |
15:03 | <&ToxicFrog> | No |
15:03 | < Syk> | or is that 'in shortest time' |
15:03 | <&ToxicFrog> | TSP is "visit each node at least once with the lowest cost" |
15:03 | <&ToxicFrog> | Visiting the same node multiple times is allowed if it results in the shortest possible path that hits all nodes. |
15:03 | | gnolam [lenin@Nightstar-ccbf4b44.cust.bredbandsbolaget.se] has joined #code |
15:04 | < Syk> | then what's the node-only-once problem named? |
15:05 | <@TheWatcher> | Eulerian path |
15:05 | <&ToxicFrog> | There's often the additional restriction that the path be a closed loop, but I forget if (a) this is formally required and (b) if so, if it actually changes the problem at all |
15:05 | <@TheWatcher> | Oh, wait, that's edges, isn't it? |
15:06 | < Syk> | http://en.wikipedia.org/wiki/Seven_Bridges_of_K%C3%B6nigsberg |
15:06 | < Syk> | is it this? |
15:06 | < Syk> | oh wait that's paths not nodes |
15:06 | <@TheWatcher> | Hamiltonian path is the right one |
15:07 | <@TheWatcher> | (I always mix those two up) |
15:07 | < Syk> | wait |
15:07 | < Syk> | TSP is node only once, plus returns to origin |
15:07 | <@TheWatcher> | (note: it's NP-complete, which means the prof is a dick ¬¬) |
15:07 | < Syk> | with lowest possible cost |
15:07 | < Syk> | problems are hard |
15:07 | | Syloq_Home [Syloq@NetworkAdministrator.Nightstar.Net] has joined #code |
15:12 | <&ToxicFrog> | I had a lot of fun with TSP in my algorithms course. |
15:13 | < Tarinaky> | Okay, waiting for advisory. So back for a bit. |
15:13 | < Tarinaky> | ToxicFrog: No. I need to visit some number of nodes exactly once. |
15:13 | < Tarinaky> | ToxicFrog: Some number being 'given' along with the start. |
15:14 | < Tarinaky> | If no path is possible then just fail. |
15:14 | <&ToxicFrog> | Aah. |
15:16 | <&ToxicFrog> | So, you're given a graph, a starting node, and count; you return either a path that visits count nodes, starting from start, exactly once each, or fail if that is not possible (because count is greater than the graph size, or it's impossible to construct a path that visits count nodes in it without revisiting at least one node) |
15:16 | < Tarinaky> | Correct. |
15:17 | <&ToxicFrog> | And the graph is guaranteed to be acyclic. |
15:17 | < Tarinaky> | No. The graph is nondirected. |
15:17 | < Tarinaky> | The path has to by acyclic. |
15:18 | <&ToxicFrog> | That's already implied by "exactly once". |
15:18 | < Tarinaky> | Okay. But the graph is very much cyclic. |
15:18 | < Tarinaky> | Hence the need to remove edges to nodes that are already on the stack. |
15:19 | < RichyB> | guh |
15:22 | < Tarinaky> | But just to check, it is very much 'bad' to iterate through a stack? |
15:31 | <&ToxicFrog> | Strictly speaking, you're not meant to be able to do that with a stack |
15:31 | <&ToxicFrog> | You "iterate" a stack by popping each item and processing it in turn |
15:32 | <@TheWatcher> | The fact that you're able to means that you're bypassing the encapsulation, which is probably not what you're expected to do |
15:34 | < Tarinaky> | What stops you popping the elements into another stack? |
15:34 | <&ToxicFrog> | Nothing. |
15:34 | < Tarinaky> | And then popping them back again? |
15:34 | <&ToxicFrog> | Also nothing. |
15:34 | < Tarinaky> | Is this not an iteration through a stack? |
15:34 | <&ToxicFrog> | Er |
15:35 | <&ToxicFrog> | I was interpreting your question as "iterating the contents of the stack in place", ie, without popping anything |
15:35 | <&ToxicFrog> | Which some stack implementations let you do |
15:35 | < Tarinaky> | Well, I am... but that's not necessary. |
15:36 | < Tarinaky> | Surely that's a detail? |
15:36 | <&ToxicFrog> | If you find yourself needing to do this repeatedly, a stack is probably not the right data structure |
15:38 | < Tarinaky> | Can you push/pop the end of a list? |
15:38 | < Tarinaky> | Or is it called something else? |
15:38 | < Tarinaky> | >.> |
15:39 | < iospace> | append remove? :P |
15:39 | < Tarinaky> | I guess. |
15:39 | | * iospace shrugs |
15:39 | < Tarinaky> | Remove from end? |
15:39 | < Tarinaky> | Remove last of? |
15:40 | < iospace> | I have the UEFI 2.3.1 spec, PCIe 2.1 spec, and ACPI 4.0a spec open atm |
15:42 | | * Syk looks around her room for books |
15:42 | | * Syk opens her SQLite reference! |
15:42 | < Tarinaky> | I have no idea what I'm doing wrt pseudocode formatting >.< |
15:42 | | * Syk has no other good technical books :C |
15:44 | < Tarinaky> | What's the proper name for a dynamic array datastructure? Is it actually a vector? |
15:45 | < iospace> | Syk: these are PDFs, but same concept :P |
15:46 | < Syk> | :U |
15:47 | < iospace> | (that should give you some hint as to what i'm doing, but nyah :P) |
15:47 | < Syk> | i prefer bewks |
15:47 | < Syk> | because then i can open them |
15:47 | < Syk> | and look at the studiously |
15:48 | < Syk> | and then people don't talk to me |
15:49 | < iospace> | i'm not going to have 3 300+ page specs on my desk dear |
15:49 | < Syk> | iospace: lolol there's a position open at a nuclear reactor in Canberra |
15:50 | < Syk> | doing sysadmin work there |
15:50 | < Syk> | iospace: pfffft |
15:50 | | * Syk dumps her pile of SCO Unix manuals on iospace's desk |
15:50 | < iospace> | actually the PCIe 2.1 spec is the shortest: 704 pages |
15:51 | < iospace> | ACPI 4.0a is 731 |
15:51 | < Syk> | the SCO unix books all up are like |
15:51 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds] |
15:51 | < iospace> | and UEFI 2.3.1 is... |
15:51 | < Syk> | 10" tall? |
15:51 | < iospace> | 2210 pages |
15:51 | < Syk> | the fucking |
15:51 | < Syk> | the fucking raid card has like a 300 page manual |
15:52 | < iospace> | yeah and? |
15:52 | < Syk> | it's a raid card |
15:53 | < Syk> | HP one came with like a 40 page PDF |
15:53 | < iospace> | lets look at the datasheet for the Intel 82574 shall we? |
15:53 | < iospace> | this is just a simple ethernet controller |
15:53 | < iospace> | 490 pages |
15:53 | < Syk> | it just boggles the mind how it's a 300 page /user/ guide |
15:54 | < RichyB> | iospace: I think that you are understating the potential upsides here. |
15:54 | < RichyB> | For instance, you could have a bookfort. |
15:55 | < RichyB> | Manual-fort, even. |
15:55 | < Syk> | i love how Xerox give you a manual that contains like 1,000 error codes |
15:55 | < RichyB> | If I worked with loads of kit with 400+page manuals, I'd insist on having paper copies of all of it, just to punish the world for inflicting 400+page standards on me. |
15:55 | < Syk> | nearly every single one that isn't 'paper jam' isn't in the book |
15:55 | < iospace> | RichyB: they're PDFs :P |
15:55 | < iospace> | i have a cube :P |
15:56 | < RichyB> | You could have replaced your cube's walls with stacks of datasheets and manuals by now. |
15:57 | | celticminstrel [celticminst@Nightstar-05d23b97.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
16:00 | < Syk> | i would turn the protocol implementation specs for fucking UPnP into a dartboard |
16:00 | < Syk> | my main problem with |
16:00 | < Syk> | zeroconf protocols |
16:00 | < Syk> | is that when they don't work |
16:00 | < Syk> | there's nothing to configure to /make/ them work |
16:02 | < froztbyte> | eh? |
16:03 | < froztbyte> | maybe I'm not understanding what you mean |
16:03 | < froztbyte> | but there's a lot of ways in which things can go wrong there, and some of them are hardly the protocol's fault |
16:03 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code |
16:03 | | mode/#code [+o himi] by ChanServ |
16:04 | < Syk> | according to this, UPnP works on my machine, and it can see everything else |
16:04 | < Syk> | then nothing can see it? |
16:04 | < Syk> | even though it's set up to |
16:04 | | * Syk throws a brick at it. Spent four hours trying to figure out why XBMC wasn't sharing media the other day :| |
16:06 | < froztbyte> | right |
16:06 | < froztbyte> | so |
16:06 | < froztbyte> | there's two parts |
16:06 | < froztbyte> | one is consuming announces/broadcasts, the other is responding to broadcasted queries |
16:07 | < Syk> | yes |
16:07 | | Moltare [Moltare@583787.FF2A18.190FE2.4D81A1] has quit [Client closed the connection] |
16:07 | < froztbyte> | I'd hazard a guess that it's the latter that's causing you pain |
16:07 | < Syk> | which is annoying because |
16:07 | < Syk> | uh 2 sec |
16:07 | < froztbyte> | what OS, btw? |
16:07 | < froztbyte> | and what are you trying to make work? |
16:08 | < Syk> | Ubuntu 12.04 and XBMC media sharing |
16:10 | < froztbyte> | if you run `avahi-discover -a` on the xbmc host, do you see it listing the service there? |
16:11 | < froztbyte> | also, is there anything else by avahi listening which might be blocking xbmc's ability to bind(), thus leading to xbmc failing? |
16:11 | < froztbyte> | (I don't know if xbmc announces by itself, or links into avahi through dbus) |
16:13 | < Syk> | XBMC hooks into avahi iirc |
16:14 | < Syk> | not sure |
16:14 | < Syk> | avahi-browse -a says that it appears |
16:15 | < Syk> | on both my raspi and my local PC |
16:59 | | Syk is now known as syksleep |
17:18 | | RichyB [richardb@Nightstar-3b2c2db2.bethere.co.uk] has quit [Client closed the connection] |
17:20 | | RichyB [richardb@Nightstar-3b2c2db2.bethere.co.uk] has joined #code |
17:27 | | Kindamoody|out is now known as Kindamoody |
18:01 | | Reiv_ [NSwebIRC@D4E70A.D52DB0.820B13.98C775] has quit [Ping timeout: 121 seconds] |
18:14 | <&McMartin> | "12.10 also includes Python 3.2.3 as standard, dropping Python 2.x" |
18:14 | <&McMartin> | Ruined Forever~ |
18:14 | < Azash> | 12.10 of what? |
18:15 | <&McMartin> | Ubuntu |
18:15 | <&McMartin> | Came out today |
18:15 | < Azash> | Ah |
18:17 | < ErikMesoy> | Ruined Forever indeed *nods sagely* |
18:17 | | * Azash strokes his fu manchu, nodding |
18:18 | < Azash> | (as a non-pythonist, I have no idea what the issue is) |
18:18 | <&McMartin> | Python 2 and Python 3 are effectively different languages. |
18:18 | <&McMartin> | with vaguely similar libraries and syntax that is almost but not quite identical. |
18:19 | < Tarinaky> | Basically Python really is the new Perl. |
18:19 | <&McMartin> | But in time instead of space. |
18:19 | <&McMartin> | With Perl, everything works great if your system has the right constellation of extra packages installed from 97 different web sites. |
18:20 | <&McMartin> | With Python, everything works great as long as you're running exactly the right point release of the software. |
18:20 | < froztbyte> | Ubuntu has been fucked for a long time already |
18:20 | < Tarinaky> | Yeah, 2.7 :p |
18:21 | < froztbyte> | the fact that canonical's been the main driving force behind py3 should pretty much tell anyone all they need to know |
18:21 | < froztbyte> | and if what they take away from that is "Canonical is very forward-thinking", please just lock them in a room and vent the oxygen |
18:21 | <&McMartin> | Tarinaky: I can only assume 2.7 is installed on Windows. |
18:22 | <&McMartin> | In order to not get "hey, shit DFW" in Ophis I had to target 2.3. |
18:22 | < Tarinaky> | I have 2.7, 3.2 and whatever Panda3D ships with... |
18:22 | < Tarinaky> | Oh! |
18:22 | < Tarinaky> | And I have the same again for Cygwin! |
18:23 | <&McMartin> | Heh |
18:23 | <&McMartin> | Reason 1 I prefer MSYS >_> |
18:23 | < Azash> | froztbyte: Well, what do you see as the main reason for canonical carrying python 3? |
18:23 | | * McMartin is going to throw together a VM to see what this actually means |
18:23 | < froztbyte> | Azash: they're crazy? |
18:23 | < froztbyte> | seriously, I can't give you a good answer |
18:23 | <&McMartin> | If it just means "python3 is installed by default and all their internal scripts use it", sure, whatever, *somebody's* got to get the uptake going on |
18:23 | < Tarinaky> | McMartin: I explicitly chose to install Python for Cygwin because I prefer the *nix environment when I'm working. |
18:24 | < froztbyte> | there's no good reason for py3 to exist in the form it does |
18:24 | < froztbyte> | and python-dev has /no intention whatsoever/ to fix the disaster that py3 is atm |
18:24 | <&McMartin> | If it's "when you do your distro update all your Python 2 scripts stop working" they're on crack. |
18:24 | < froztbyte> | so I can honestly not think of a reason for canonical to care about it other than "the number is bigger" |
18:24 | < Tarinaky> | I think Ubuntu is like... one of the last distros to decide to update to Python3. |
18:25 | <&McMartin> | Python 3's big win, IIRC, is that it's much better at not being shitty about text than Python 2 |
18:25 | <&McMartin> | It's *possible* to write acceptable text processing P2 but you have to work at it. |
18:25 | < Azash> | Personally I'd have imagined that they are really just pushing for a newer version, well-thought-out or not |
18:26 | < froztbyte> | Azash: when you're doing something at the scale of a distro as big as ubuntu, that's not really a good reason |
18:26 | < Azash> | But if the language devs refuse to work on the new version of the language it probably has bigger problems than Ubuntu's choice of version :P |
18:26 | <&McMartin> | Language devs are like Warhammer 40k grognards |
18:26 | <&McMartin> | They're the last people to ask~ |
18:26 | < froztbyte> | Azash: "the language devs" |
18:26 | <&ToxicFrog> | froztbyte: why do you hate py3 so much? |
18:26 | < froztbyte> | py-dev has basically just been taking over by retards |
18:27 | < Azash> | froztbyte: Well.. What do you mean by python-dev then? People who use python to develop? |
18:27 | < froztbyte> | ToxicFrog: because, like much else humanity does, it's a completely pointless waste of time? |
18:27 | <&McMartin> | MALLOC() AND FUNCTION POINTERS WERE GOOD ENOUGH FOR ME BACK IN 1984 AND WE DON'T NEED NO C++ERY AND NEW AND DELETE HERE |
18:27 | < froztbyte> | they had the opportunity to fix *real* problems |
18:27 | < froztbyte> | and they just didn't |
18:27 | < froztbyte> | Azash: python-dev is the list in charge of python fixes |
18:27 | < froztbyte> | and the main breeding-ground for, basically, anything that'll become a thing |
18:28 | < Azash> | Right |
18:28 | | * Azash is quietly thankful for never being interested in Python |
18:28 | < froztbyte> | ToxicFrog: much of my year has been spent yak shaving on bullshit that's 1) completely unnecessary, 2) should never really have existed in the first place |
18:28 | <&McMartin> | Yeah, if I go into grognard mode, it's worth noting that I would claim Python cannot become a real language until python-dev dies. |
18:28 | < Tarinaky> | 2.7 is still perfectly useable. |
18:28 | < Tarinaky> | :p |
18:28 | < froztbyte> | so I'm just seriously low at my tolerance factor |
18:29 | < froztbyte> | afaict, the future of python lies in pypy's hands |
18:29 | < froztbyte> | python as we know it, anwyay |
18:29 | < froztbyte> | anyway* |
18:29 | <&McMartin> | Azash: Python is actually the best single language to know if you're going to know only one. |
18:29 | < froztbyte> | yeah you can do far worse than python |
18:29 | <&McMartin> | Works everywhere, covers all the major programming styles without much bullshit, code by other people is very, very easy to read |
18:29 | < Azash> | McMartin: I'm sure, it just never interested me 'sall |
18:30 | < Tarinaky> | The main issue I am aware of re Python is the issue with threading. |
18:30 | <&ToxicFrog> | McMartin: why? |
18:30 | <&McMartin> | TF: At what? |
18:30 | <&McMartin> | I've made a bunch of claims |
18:30 | < froztbyte> | McMartin: yeah, it takes an exceptional idiot to make very-hard-to-read python code |
18:30 | <&ToxicFrog> | "python cannot become a real language until python-dev dies" |
18:30 | <&McMartin> | Oh |
18:31 | <&McMartin> | A real language has a spec~ |
18:31 | <&McMartin> | Ideally also multiple implementations~ |
18:31 | <&McMartin> | Last I looked at Pypy we've *almost* reached "multiple implementations" level. |
18:31 | < Tarinaky> | Write once, debug everywhere! |
18:32 | <&McMartin> | Tarinaky: Yeah, not having that shit happen in Python is one of the reasons I'm calling out "works everywhere" |
18:32 | <&McMartin> | Lots of stuff claims to |
18:32 | <&McMartin> | Python *actually does* unless you're directly dealing with something that the target OS is unique about |
18:32 | < Tarinaky> | I suspect multiple implementations will cause that to happen though. |
18:32 | <&jerith> | McMartin: pypy is as close to compatible with CPython as any two language implementations are. |
18:33 | <&ToxicFrog> | Er |
18:33 | <&jerith> | The incompatibilities are almost all in "implementation detail" land, like the CPython extension API. |
18:33 | <&McMartin> | jerith: OK then, I suppose I can call 2.7.2 a real language then~ |
18:33 | <&ToxicFrog> | Doesn't python have CPython, Jython, Stackless, and PyPy all in common use? |
18:33 | < froztbyte> | no |
18:33 | < froztbyte> | CPython is by far the most common |
18:33 | <&ToxicFrog> | froztbyte: "cpython is the most common" in no way contradicts my statement, though? |
18:33 | < froztbyte> | Stackless has seen some use in funky environments, PyPy is pretty new on the block |
18:34 | <&jerith> | (The rest are "the tests don't cover this case" and rare "we haven't bothered rewriting this stdlib extension module".) |
18:34 | < froztbyte> | and Jython is enterprise country |
18:34 | <&McMartin> | ToxicFrog: Everything on yoru list but PyPy implements a different language with similar syntax. |
18:34 | <&ToxicFrog> | I see pypy come up all the time, stackless seems to get used a fair bit in MMOs and other server stuff |
18:34 | <&ToxicFrog> | Jython comes up all the fucking time when I'm looking at JVM stuff |
18:34 | < froztbyte> | in terms of usage count, I'd call cpython the 85% and the others fight over the remaining 15 |
18:34 | <&McMartin> | Jython is no more CPython than Clojure is Scheme. |
18:34 | <&jerith> | Jython is 2.5-compatible. |
18:35 | <&jerith> | The memory model is all different, because it's on the JVM, but not more different than pypy's. |
18:35 | <&jerith> | The main reason Jython ends up looking different is because it tends to only be used when you want to call into (or out of) Java code. |
18:36 | <&jerith> | And then you end up writing Java with Python syntax a lot. |
18:36 | <&McMartin> | Right |
18:36 | <&McMartin> | This is me in grognard mode |
18:36 | <&McMartin> | But it's actually possible for me to reverse that |
18:37 | <&McMartin> | "Well, the language spec is the same but the operating library is totally different" |
18:37 | <&jerith> | Stackless is a fork of CPython with a rewritten execution model. |
18:37 | <&jerith> | "operating library"? |
18:37 | <&ToxicFrog> | Stuff you can import. |
18:37 | <&ToxicFrog> | Presumably. |
18:38 | <&McMartin> | jerith: The core language can't do much beyond arithmetic. |
18:38 | <&McMartin> | If you want to actually *do work* you're calling into the language's library |
18:38 | <&McMartin> | Jython's effective "standard library" - the bits that are actually used in it - are wildly different and 100% incompatible with every other implementation. |
18:38 | <&jerith> | Ah. |
18:38 | <&McMartin> | Normally I would not want to argue this case with ToxicFrog, however |
18:39 | <&McMartin> | Because I am aware that this is like saying "Lua is a different language when you use it to script WoW than when you use it to script Aquaria" |
18:39 | <&McMartin> | But, well |
18:39 | <&McMartin> | From a "what the hell does this code do" standpoint, it kind of is~ |
18:39 | <&ToxicFrog> | Actually, under this definition, I think Lua is more of a "real language" than python~ |
18:40 | <&McMartin> | ToxicFrog: Yeah |
18:40 | <&McMartin> | If I want to be more precise and less trolly |
18:40 | <&jerith> | I don't know about the state of Jython's stdlib, but most of CPython's is written in Python. |
18:40 | <&McMartin> | Lua is now an unkillable language. |
18:40 | <&ToxicFrog> | (there are two commonly used implementations, PUC-lua and luajit, which are compatible in both standard libraries and the C API/ABI) |
18:40 | <&McMartin> | Meanwhile, Haskell, as a language, has a truck factor of like 4. |
18:40 | < iospace> | truck factor? |
18:41 | <&ToxicFrog> | (luajit has some extensions not present in puc-lua, like the FFI library, but - unless you hit a bug in the JIT - you can take puc-lua code and run it in/link it against luajit without modification) |
18:41 | <&McMartin> | iospace: What is the minimum number of people that need to be hit by trucks to kill the project permanently |
18:41 | <&ToxicFrog> | (granted, this is a lot easier in Lua because the standard library is tiny) |
18:41 | <&jerith> | pypy actually just includes a copy of the CPython stdlib with another (much smaller) pypy-specific set of code that mostly implements things that CPython did in C. |
18:42 | <&McMartin> | jerith: Oh good, they've discovered bootstrapping, and have done so without going mad from the revelation the way the Perl guys did |
18:42 | | * McMartin grumbles at Pypy. "have an AOT compiler!" |
18:42 | <&jerith> | AOT? |
18:42 | <&jerith> | pypy is actually two different things. |
18:44 | <&ToxicFrog> | Ahead Of Time. |
18:44 | < iospace> | McMartin: ah |
18:44 | <&ToxicFrog> | Ie, a thing you can run to emit bytecode/object code without actually needing to load and run the program. |
18:44 | <&jerith> | There's the Python implementation (which is called pypy) and there's the build-a-VM-with-JIT toolkit (which is also called pypy). |
18:45 | <&ToxicFrog> | (or, in the case of Clojure, a thing that loads and runs the program but stops short of actually calling any functions you just defined, which confused me terribly when I first used it) |
18:45 | <&jerith> | I can't remember if pypy's bytecode is actually different from CPython's. |
18:45 | <&ToxicFrog> | McMartin: what did the Perl guys do? |
18:46 | < RichyB> | Does using "CRUD" as a verb make sense to people? |
18:47 | < RichyB> | "create an administrator-only page which lets you CRUD payroll records", for instance. |
18:47 | < iospace> | RichyB: yeah, i've heard it in that use before |
18:48 | < iospace> | but i forget what i means ^^;; |
18:48 | < EvilDarkLord> | Makes sense to me. |
18:48 | <&ToxicFrog> | Create, Retrieve, Update, Delete, IIRC. |
18:58 | | * iospace shrugs |
18:58 | | * iospace sighs at 3-4 minute build times |
19:02 | < froztbyte> | haha |
19:02 | < froztbyte> | you've got it lucky |
19:02 | < froztbyte> | some of my embedded-dev friends have multi-hour build times |
19:02 | < froztbyte> | multi-day if they hit the full target suite |
19:04 | <&jerith> | That stuff needs to be fixed. |
19:04 | <&jerith> | My full test run takes nearly three minutes. |
19:15 | < RichyB> | PrBoom compiles in about 10 seconds these days. :3 |
19:21 | < iospace> | froztbyte: our BIOS is actually pretty sparse compared to one you'd find on a modern computer |
19:22 | < iospace> | mind you the 3-4 minutes also includes reprogramming |
19:24 | < froztbyte> | iospace: yeah, I'm familiar with the stuff |
19:24 | < froztbyte> | it's dedicated purpose test-and-jump sort of things |
19:24 | < froztbyte> | but theirs is also ;) |
19:25 | < iospace> | :P |
19:29 | < iospace> | but yeah |
19:29 | < iospace> | are they UEFI devs? |
19:29 | < froztbyte> | one is |
19:29 | < froztbyte> | or rather, has had to deal with it |
19:40 | < iospace> | ah |
20:07 | | Kindamoody is now known as Kindamoody[zZz] |
20:14 | <&McMartin> | OK, Ars Technica is, once again, full of shit |
20:14 | <&McMartin> | "python" in Quantal hands you 2.7.3 |
20:14 | <&McMartin> | But yes, python3 is also installed by default now |
20:19 | <&McMartin> | Ha ha ha ha ha at the ubuntu.com homepage |
20:19 | < gnolam> | ? |
20:20 | < Azash> | gnolam: It says something like "avoid the pain of Windows 8" |
20:20 | | Vash [Vash@Nightstar-3ba4108e.wlfrct.sbcglobal.net] has joined #code |
20:20 | | mode/#code [+o Vash] by ChanServ |
20:25 | <&McMartin> | OTOH, it took about 20 seconds for Compiz to crash on my VM of QQ |
20:25 | <&McMartin> | So I think I'll be holding off on any upgrades for awhile. |
20:26 | | * iospace looks at this code, wonders why the use of pointers |
20:29 | < iospace> | ... it's passing a 32 bit uint as a pointer... and the value of that variable doesnt' change |
20:29 | < iospace> | oh never mind, i see why |
20:30 | < iospace> | though that brings up another question for another day |
20:33 | | Derakon [chriswei@Nightstar-a3b183ae.ca.comcast.net] has joined #code |
20:33 | | mode/#code [+ao Derakon Derakon] by ChanServ |
20:33 | | * Derakon ponders distributions. |
20:34 | <&Derakon> | Okay, so I have this image, with associated histogram: http://derakon.dyndns.org/~chriswei/temp2/histogram.png |
20:35 | <&McMartin> | Oh, that kind of distribution >_> |
20:35 | <&Derakon> | I'm trying to figure out why there are buckets in the histogram that have twice as many peaks as their neighbors do. |
20:35 | <&McMartin> | Those buckets are oddly regular. |
20:35 | <&Derakon> | Note that there are only 149 distinct values in the image (min 220, max 369) and the histogram is made of 128 buckets. |
20:36 | <&Derakon> | McM: with an image of, basically, noise you would expect a Gaussian distribution. |
20:36 | <&Derakon> | And I have that except for the weird peaks. |
20:36 | <&Derakon> | If I use more buckets then the peaks go away... |
20:36 | <&Derakon> | But that's not necessarily practical. |
20:36 | < EvilDarkLord> | How many more buckets? |
20:37 | <&Derakon> | Equal to the number of unique values in the image is the only test I've done. |
20:37 | <&Derakon> | I assume that if the number of buckets divides the (max - min) range in the image then I would have no peaks. |
20:37 | < EvilDarkLord> | Oh, right. Well, I guess there's a bunch of (X - X+1) buckets here. |
20:37 | <&Derakon> | ...ahh, and a few [X, X+2] buckets. |
20:38 | <&Derakon> | That makes sense. |
20:38 | <~Vornicus> | 128 buckets, 149 distinct items? one moment... |
20:39 | <~Vornicus> | Yes, there will be peaks because there are more than one thing that fits in some but not all buckets |
20:39 | <&Derakon> | I don't follow. |
20:40 | < EvilDarkLord> | You have buckets like 220,221,222,223,224,225-226,227,228,... |
20:40 | <&Derakon> | Yeah, I understand the problem, just not Vorn's sentence~ |
20:41 | <~Vornicus> | what edl said. |
20:41 | < EvilDarkLord> | Right, right. I'm not sure why there seems to be just 12 odd peaks when the difference between distinct items and bucket count is 21, but maybe it's just noise or I'm not seeing the tinypeaks. |
20:41 | <~Vornicus> | but about one bucket out of every 6 or so will have two distinct values in it instead |
20:42 | <&Derakon> | EDL: it's because there's a lot of tiny buckets you can't see. |
20:42 | <~Vornicus> | And, yeah, the ones beyond the edge of the bell curve you have there you can't see anyway |
20:42 | <&Derakon> | There are 512x528 pixels there, so the bigger buckets are much bigger than the small ones. |
20:43 | < EvilDarkLord> | Those buckets that show up as 1 pixel actually contain quite a few matches each, right? |
20:43 | | Derakon_ [chriswei@Nightstar-a3b183ae.ca.comcast.net] has joined #code |
20:44 | < Derakon_> | EDL: yes, they do. |
20:44 | | Derakon [chriswei@Nightstar-a3b183ae.ca.comcast.net] has quit [NickServ (GHOST command used by Derakon_)] |
20:44 | | Derakon_ is now known as Derakon |
20:44 | | mode/#code [+ao Derakon Derakon] by ChanServ |
20:44 | <&Derakon> | Now I'm presented with the problem of prime data ranges. |
20:45 | <~Vornicus> | Well |
20:45 | | Derakon_ [chriswei@Nightstar-a3b183ae.ca.comcast.net] has joined #code |
20:45 | <~Vornicus> | you can dither or something. |
20:45 | < Derakon_> | Okay, what the hell. |
20:45 | < Derakon_> | Stupid IRC-over-SSH. |
20:46 | < iospace> | Derakon_: let me guess, you're using PuTTY and you accidentally opened and closed it too fast? :P |
20:46 | < Derakon_> | Ideally I would use non-integer-sized buckets, but that would require using numpy.histogram instead of numpy.bincount, which is slower. |
20:46 | < Derakon_> | iospace: cygwin's SSH client, and it seems to disconnect at random. |
20:47 | < Derakon_> | And if I have too much typed out then it'll give me a broken pipe error. |
20:47 | < Derakon_> | (Er, lag, not disconnect) |
20:47 | < iospace> | ah |
20:47 | < Derakon_> | Since both times were me typing out a long sentence while waiting for my connection to de-lag. |
20:48 | < Derakon_> | I wouldn't have to do this crap if the uni allowed IRC but noooooo |
20:48 | < rms> | use screen man |
20:48 | < Derakon_> | I never did get used to screen. |
20:49 | < Derakon_> | Also I usually IRC via X-Chat Aqua, which isn't screenable. |
20:49 | < EvilDarkLord> | Derakon_: By the way, what am I looking at in this picture? Where does this noise come from? |
20:50 | < iospace> | Derakon_: i use screen too, the putty thing i mentioned causes an issue with screen o_O |
20:50 | < Derakon_> | EDL: the noise comes from a lack of signal. The exposure is short and the camera has no lens. |
20:51 | | Derakon [chriswei@Nightstar-a3b183ae.ca.comcast.net] has quit [NickServ (GHOST command used by Derakon__)] |
20:51 | | Derakon [chriswei@Nightstar-a3b183ae.ca.comcast.net] has joined #code |
20:51 | | mode/#code [+ao Derakon Derakon] by ChanServ |
20:51 | <&Derakon> | Okay, this time I blame Comcast. |
20:53 | <&ToxicFrog> | Derakon: ZNC on the server, have it listen on the https port? |
20:54 | <~Vornicus> | ooh ooh, gaussian blur! |
20:54 | <~Vornicus> | :P |
20:59 | | Derakon_ [chriswei@Nightstar-a3b183ae.ca.comcast.net] has quit [[NS] Quit: Lost terminal] |
21:01 | | Derakon [chriswei@Nightstar-a3b183ae.ca.comcast.net] has quit [[NS] Quit: Lost terminal] |
21:04 | < iospace> | there goes dera |
21:20 | <~Vornicus> | apparently the thought of using gaussian blur on a histogram was too much for him. |
21:21 | <~Vornicus> | Anyway the real way I'd do it is make exactly the number of buckets as there are distinct values, and then if you need to do an area-type interpolation to get wider buckets. |
21:45 | < iospace> | ALL THE ERRORS! |
21:46 | <&McMartin> | EMIT or FIX? |
22:08 | < iospace> | no clue |
22:08 | < iospace> | :D |
22:12 | < iospace> | it builds |
22:12 | < iospace> | but will it work? not likely ^_^ |
22:14 | < iospace> | man i love `. |
22:16 | < RichyB> | That reminds me |
22:16 | < RichyB> | I should find something that can put out a 5GHz 802.11n network. |
22:16 | < RichyB> | I have a USB wifi adapter for whose chipset there exists a Linux driver supplied by the mfg... which kernel panics the machine after a few seconds of us. |
22:17 | < RichyB> | I'm thinking I might be able to use USB pass-through with VirtualBox so that I can have a tiny little VM die rather than my entire laptop. |
22:18 | <&McMartin> | Possibly |
22:18 | <&McMartin> | Good luck with generic USB passthrough on VBox. |
22:18 | <&McMartin> | But there was a new release today, so, uh, let me know how it goes |
22:18 | < RichyB> | Any alternatives that might make that easier? |
22:18 | <&McMartin> | Not really |
22:18 | < RichyB> | I say VirtualBox because that's what I have to hand. |
22:18 | | * McMartin has had marginally better luck with peripherals on VMware Player than VBox, but. |
22:18 | <&McMartin> | By all means, try VBox first |
22:20 | < iospace> | aw bollocks |
22:20 | < iospace> | i hit clean build |
22:20 | < Azash> | I acquired vmware workstation through extremely legal means the other day and I'm really liking it |
22:20 | < iospace> | fuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu |
22:20 | < Azash> | iospace: Oops |
22:20 | < iospace> | 10 minute builds anyone? -_-;; |
22:20 | < RichyB> | iospace oops. |
22:21 | < RichyB> | Eh, I've had builds longer than that. |
22:21 | < RichyB> | ...several upgrades and some work towards shortening them ago. |
22:21 | < iospace> | clean builds take that long |
22:21 | < iospace> | hopefully this builds Dx |
22:23 | < RichyB> | Make a cup of tea? |
22:24 | < iospace> | maybe :D |
22:24 | < Azash> | Listening to some uplifting house music? |
22:27 | < iospace> | build finished, of course errors |
22:28 | < iospace> | built that time |
22:31 | | ErikMesoy is now known as ErikMesoy|sleep |
22:32 | | RichyB [richardb@Nightstar-3b2c2db2.bethere.co.uk] has quit [[NS] Quit: Leaving] |
22:39 | < iospace> | great, have to clean build this time intentionally Dx |
22:42 | < iospace> | ... |
22:42 | < iospace> | using an if statement instead of a switch for an enum? |
22:42 | < iospace> | really? |
22:44 | <~Vornicus> | well if you're just checking one enum value maybe |
22:46 | < iospace> | there's three values in the enum |
22:46 | < iospace> | he checks all three |
22:47 | < iospace> | his code is /very sloppy/ |
22:47 | < iospace> | and could easily be broken -_-;; |
22:47 | < iospace> | 6.5 minutes is the build time on a fresh build btw |
22:47 | < Azash> | You should get like a gameboy or something and bring it to work |
22:48 | < iospace> | haha |
22:48 | < iospace> | nah, i'm looking over this guy's code which I've taken bits from |
22:48 | < iospace> | just so overbuilt and un-needed |
22:51 | < iospace> | ya know, i'm tempted to port what i wrote over to his and see how well it works :P |
22:52 | < iospace> | he does it in such an overly complicated way too -_-;; |
23:01 | < iospace> | i mean it /works/ but it's doing it wrong |
23:02 | < Azash> | Mm |
23:02 | < Azash> | Maybe he thought it seemed smarter to be complex? |
23:03 | | Reiv [NSwebIRC@D4E70A.D52DB0.820B13.98C775] has joined #code |
23:05 | < iospace> | he was copying code from elsewhere |
23:09 | | Derakon[AFK] is now known as Derakon |
23:09 | | mode/#code [+ao Derakon Derakon] by ChanServ |
23:10 | <&Derakon> | Okay, I'm local. Let's see you boot me now! :p |
23:12 | < iospace> | /kick Derakon With Pleasure ^_^ |
23:13 | < Azash> | iospace: Oh, well, that's just a bad idea |
23:13 | < Azash> | re. copying code |
23:13 | <&Derakon> | iospace: yeah, now, which one of us has ops? |
23:14 | < iospace> | i know :P |
23:14 | < iospace> | Azash: oh, i'm hacking it apart mind you |
23:20 | | AnnoDomini [abudhabi@Nightstar-7e16dc65.adsl.inetia.pl] has quit [Ping timeout: 121 seconds] |
23:21 | | AnnoDomini [abudhabi@Nightstar-7e16dc65.adsl.inetia.pl] has joined #code |
23:21 | < iospace> | actually what I did copy was actually the useful portions |
23:21 | < iospace> | though it'll probably get re-written down the line |
23:23 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds] |
23:24 | < Azash> | Rewritten ten times until nothing remains except objectinterfacesingletonfactoriessingletons |
23:29 | < iospace> | heh |
23:29 | < iospace> | hopefully my next task is to demolish his code |
23:33 | < iospace> | though i will say his "what are you running, Emacs?" error message for when you're out of memory is pretty witty :P |
23:33 | < iospace> | though it doesn't belong here |
23:34 | < iospace> | but most everything he does can be handled by a much simpler protocol |
23:43 | < iospace> | ugh, i hate it when you look at code and it's not commented enough |
23:44 | < Azash> | I hate when someone codes for like six hours and then they're like |
23:44 | < iospace> | son of a bitch |
23:44 | | * iospace head desks |
23:44 | < Azash> | git commit -m "Added several features" |
23:44 | < iospace> | haha |
23:45 | | * iospace flips tables Dx |
23:45 | < iospace> | ok you know what |
23:45 | < iospace> | fuck you pcie |
23:45 | < iospace> | fuck you ^_^ |
23:45 | < Azash> | ^_____________^ |
23:46 | < iospace> | and fuck you pointers |
23:46 | < iospace> | ^_^ |
23:46 | < Reiv> | ... you're using the smiling face over things you swear at? |
23:47 | < iospace> | Reiv: I'm a strange person :) |
23:47 | < iospace> | anyway |
23:47 | < iospace> | i have to head home before i rip my coworker a new one for bungling his code :P |
23:47 | < iospace> | later ^_^ |
--- Log closed Fri Oct 19 00:00:29 2012 |