--- Log opened Mon Aug 20 00:00:44 2012 |
00:12 | | You're now known as TheWatcher[T-2] |
00:15 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds] |
00:21 | | You're now known as TheWatcher[zZzZ] |
00:25 | | Nemu [NeophoxProd@Nightstar-e1d9a987.asahi-net.or.jp] has quit [Ping timeout: 121 seconds] |
01:39 | | himi [fow035@D741F1.243F35.CADC30.81D435] has joined #code |
01:39 | | mode/#code [+o himi] by ChanServ |
02:58 | <&McMartin> | Oh hey |
02:58 | <&McMartin> | A 100% Java reimplementation of Git |
02:58 | <&McMartin> | This is possibly the best thing that could have happened to it -_- |
03:14 | <&Derakon> | What was Git originally written in? Perl? |
03:16 | <&ToxicFrog> | A mix of perl and bash, mostly |
03:16 | | * Derakon winces. |
03:17 | <&Derakon> | Changing the subject, I'm working on rewriting how Pyrel handles inputs. |
03:17 | <&Derakon> | The goal is to make it easy to serialize/deserialize commands so that they can be readily chained together / repeated. |
03:18 | <&Derakon> | For example, I want to have an object that represents "fire an arrow from this stack at this target". |
03:18 | <&Derakon> | Or "cast Magic Missile from this spellbook at this target", etc. |
03:18 | <&Derakon> | I have a pretty good handle on how all that should be implemented, I think. |
03:18 | <&Derakon> | But it conflicts with my original input-handling design. |
03:18 | <&Derakon> | In that design, every object in the game is allowed to say "I'm interested in user input". |
03:19 | <&Derakon> | And then react to it as it sees fit. |
03:19 | <&Derakon> | The problem here is that I'm pretty sure the new design requires there to only ever be one Command at a time, since the UI layer and engine layer need to be communicating with each other on how to contextualize the Command. |
03:20 | <&Derakon> | As it stands, only the Player currently listens to input anyway, so I could just assume that only the Player cares about input. |
03:21 | <&Derakon> | The reason I went with the any-object-can-listen-to-input system in the first place was because I imagined that there could be objects which would require the user to e.g. answer riddles (like the Mastermind puzzle in NetHack). But I suppose those could be handled via custom Prompts instead of custom Things... |
03:21 | <&Derakon> | I grant I may not have described this clearly, but anyway, what are your thoughts? |
03:22 | <&Derakon> | I should describe how the new system is planned. |
03:22 | <&Derakon> | Basically, user inputs map to Command subclasses. Each one, broadly speaking, represents a verb. |
03:22 | <&Derakon> | The Command determines what context it needs to execute itself (direct/indirect objects, mostly). |
03:23 | <&Derakon> | It creates Prompts to obtain that information. |
03:23 | <&Derakon> | Once it is fully contextualized, it executes, modifying the game state as appropriate. |
03:24 | <&Derakon> | So e.g. the "fire arrow" example earlier would be a FireCommand, which generates an ItemPrompt("Fire which ammo?") and then a TargetPrompt("Shoot at which target?") before executing. |
03:43 | <&Derakon> | No thoughts? |
03:48 | | Kindamoody[zZz] is now known as Kindamoody |
03:48 | < rms> | That seems a bit overkill |
03:48 | < rms> | But might be due to Python not having a way to swap functions dynamically |
03:48 | < rms> | So I can't really comment |
03:50 | <&McMartin> | Python can in fact do that on objects - "monkey patching" - but it's kind of one of those summon-the-old-gods techniques |
03:51 | <&Derakon> | I'd rather not be inserting functions into class objects at runtime, no. |
03:52 | <&Derakon> | Also, various Commands may have different logic for assuming parts of their context. |
03:52 | <&Derakon> | For example, targeting the same thing that the player last targeted. |
03:52 | < rms> | Even something like C's function pointers or PHP's variable functions would be fine (as that's what I was thinking of) |
03:52 | <&Derakon> | Explain more? |
03:52 | <&Derakon> | How are you imagining using these? |
03:53 | < rms> | You basically want a class per command, IMO that's a bit overkill |
03:53 | <&Derakon> | Not quite |
03:53 | <&Derakon> | You can map multiple inputs to the same command. |
03:53 | <&Derakon> | For example, all movement-related inputs use the same command. |
03:54 | <&Derakon> | Part of the context of the Command object is the input used to create it. |
03:54 | <&Derakon> | So it knows which direction to move in. |
03:55 | <&Derakon> | In any event, that logic needs to be somewhere. Why would a class be inherently worse than a function? Sure it's marginally memory-inefficient, but not so's you'd notice, especially since typically only one will be active at a time. |
04:01 | <&Derakon> | (I note that currently all that logic is stuck inside the Listener subclass of the Creature class, and it's a moderately nasty snarl of if/elif/.../ and callback chains) |
04:02 | < Rhamphoryncus> | I'm confused. Is FireCommand a factory function? A callback? |
04:02 | <&Derakon> | It's a class. |
04:02 | <&Derakon> | Its job is to acquire the necessary information to fire something. |
04:02 | <&Derakon> | (Specifically, what to fire, by whom, and at whom) |
04:03 | < Rhamphoryncus> | Where's the potential monkey patching? |
04:03 | | * Derakon shrugs. |
04:03 | < Rhamphoryncus> | Or is it the fact that you'll only have one instance of each class? |
04:05 | < Rhamphoryncus> | Or maybe one instance and just one method too, so you want a simpler way to declare it? |
04:05 | <&Derakon> | Currently-planned methods for Command subclasses are __init__, contextualize(), execute(), and [de]serialize(). |
04:06 | <&Derakon> | Mm, the need to serialize them is one of the big arguments for making separate subclasses for 'e.m |
04:06 | <&Derakon> | Er, 'em. |
04:07 | < Rhamphoryncus> | Why? |
04:07 | <&Derakon> | Why serialize them? Or why is serializing a good reason to make classes out of them? |
04:08 | <&Derakon> | The serialization is necessary for hotkeys and a command history. |
04:08 | < Rhamphoryncus> | The latter.. or why are you considering not making subclasses? |
04:08 | <&Derakon> | Angband has a "repeat the last command" hotkey, and a macro system to do more complicated stuff. |
04:08 | <&Derakon> | I am making subclasses! |
04:08 | <&Derakon> | FireCommand is a subclass of Command. |
04:08 | <&Derakon> | More layers would be used if they were appropriate, of course. |
04:10 | <&Derakon> | What kinds of subclasses did you have in mind, though? |
04:29 | < Rhamphoryncus> | I've no idea. I still don't understand what you're debating |
04:30 | <&Derakon> | Mostly just wondering if I have a good reason for keeping the old input-handling system around. But I think I talked myself out of it. |
04:41 | | iospace is now known as iospacedout |
04:45 | <~Vornicus> | By "summon-the-old-gods techniques", by the way, McM means that if I catch you doing it, I will find you. |
04:48 | <&Derakon> | Hee. |
04:49 | | Kindamoody is now known as Kindamoody|breakfast |
04:50 | <&Derakon> | Hm, okay, movement is working again, except that I get a warning about a memory leak every time I take a step. |
04:50 | <&Derakon> | 'scuse me, every time I attack a creature. |
04:50 | <&Derakon> | "2012-08-19 20:50:30.405 Python[25806:4c07] *** __NSAutoreleaseNoPool(): Object 0x1050eee90 of class NSCFLocale autoreleased with no pool in place - just leaking" |
04:51 | <~Vornicus> | Wow, um |
04:51 | <~Vornicus> | ...what libraries are you using? |
04:51 | <&Derakon> | Something to do with the receiveAttack() method on attackable entities. |
04:51 | <&Derakon> | wxPython is the only non-builtin library. |
04:52 | <&Derakon> | Ah, found it. |
04:52 | <&Derakon> | I'm not supposed to be modifying the UI outside of the main thread. |
04:52 | <&Derakon> | receiveAttack() generates messages. |
04:53 | <&Derakon> | Easily fixed. |
04:54 | <&Derakon> | wxWidgets has a CallAfter() function that says "Invoke this function, with these arguments, in the main thread, next chance you get." |
05:13 | | Kindamoody|breakfast is now known as Kindamoody |
05:18 | | Kindamoody is now known as Kindamoody|out |
05:23 | <&jerith> | Why are you using wxWidgets? |
05:23 | <&jerith> | It's the horriblest ever. |
05:23 | <&jerith> | (Except for most of the others.) |
05:23 | <&Derakon> | Heh. |
05:23 | <&Derakon> | Because it's what I'm familiar with. |
05:24 | <&Derakon> | And I didn't want to spend time on learning another UI widget library when I had much more interesting problems to work on. |
05:24 | <&jerith> | That's not a bad reason. |
05:24 | <&Derakon> | I fully expect that if Pyrel takes off, someone (possibly even me) will write a Qt UI layer. |
05:24 | <&jerith> | A good one, even. |
05:24 | <&Derakon> | It shouldn't even be very hard. |
05:24 | <&jerith> | Qt is always hard. |
05:24 | <&jerith> | What is Pyrel? |
05:25 | <&Derakon> | The project in question; a reimplementation of Angband, in Python. |
05:25 | <&jerith> | And does it have wings yst? |
05:25 | <&Derakon> | ...? |
05:25 | <&jerith> | To take off with. |
05:26 | <&Derakon> | Ah. |
05:26 | <&Derakon> | One dude's submitted a couple of patches fixing some cross-platform issues. |
05:26 | <&jerith> | Nice. |
05:33 | <&Derakon> | Gameplay-wise, the game is technically winnable if you don't mind using an unenchanted weapon to poke Morgoth to dead, one hit at a time, while he wanders around like a drunken idiot with 20000HP. |
05:33 | <&Derakon> | Not that the game will recognize your achievement. |
05:34 | <&Derakon> | s/dead/death/ |
05:36 | <~Vornicus> | heh |
05:37 | <&Derakon> | (When I mentioned this on the Angband forums, I got the response "So, it's ready for a competition, then.") |
06:32 | | Derakon is now known as Derakon[AFK] |
07:08 | | You're now known as TheWatcher |
07:10 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [Operation timed out] |
07:11 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code |
07:28 | | Vash [Vash@Nightstar-e8057de2.wlfrct.sbcglobal.net] has quit [[NS] Quit: I lovecraft Vorn!] |
07:28 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [Operation timed out] |
08:08 | | You're now known as TheWatcher[afk] |
08:14 | | 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!] |
09:22 | | himi [fow035@D741F1.243F35.CADC30.81D435] has quit [Ping timeout: 121 seconds] |
09:58 | | You're now known as TheWatcher |
11:23 | | You're now known as TheWatcher[d00m] |
11:58 | | iospacedout is now known as iospace |
12:14 | | Nemu [NeophoxProd@Nightstar-7b79ce4f.asahi-net.or.jp] has joined #code |
12:24 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code |
12:24 | | mode/#code [+o himi] by ChanServ |
12:35 | | You're now known as TheWatcher |
12:56 | | You're now known as TheWatcher[d00m] |
13:02 | | iospace is now known as iofficespace |
13:53 | | You're now known as TheWatcher |
14:01 | | celticminstrel [celticminst@Nightstar-05d23b97.cable.rogers.com] has joined #code |
14:30 | | gruber [lenin@Nightstar-ccbf4b44.cust.bredbandsbolaget.se] has joined #code |
14:30 | | gnolam is now known as NSGuest63873 |
14:30 | | gruber is now known as gnolam |
14:32 | | NSGuest63873 [lenin@Nightstar-ccbf4b44.cust.bredbandsbolaget.se] has quit [Ping timeout: 121 seconds] |
14:36 | | You're now known as TheWatcher[afk] |
14:46 | | Kindamoody|out is now known as Kindamoody |
15:15 | < Rhamphoryncus> | Woo, article posted with a date of 12/11 |
15:15 | < Rhamphoryncus> | You might say 2011 is the most likely, but on some sites that'd actually be a day and a month with no year |
15:16 | | ToxicFrog [ToxicFrog@Nightstar-858b8f6f.eng.wind.ca] has joined #code |
15:17 | | mode/#code [+ao ToxicFrog ToxicFrog] by ChanServ |
15:20 | < gnolam> | Which is why everyone should go ISO 8601 already. :P |
15:21 | < Rhamphoryncus> | yup |
15:22 | < gnolam> | Also, ob. illustration: http://graphjam.files.wordpress.com/2012/02/united-states-vs-the-rest-of-the-wor ld.jpg |
15:24 | < Rhamphoryncus> | heh |
15:24 | < Rhamphoryncus> | Celsius is fairly arbitrary too |
15:25 | < Rhamphoryncus> | But at least it's an arbitrary based on very specific physical properties |
15:25 | < Rhamphoryncus> | Whereas fahrenheit uses as the top end the temperature of the guy's wife |
15:30 | < Rhamphoryncus> | hrm. Wikipedia has a different story |
15:32 | | JBeshir [namegduf@Nightstar-5c10d129.beshir.org] has joined #code |
15:32 | | McMartin_ [mcmartin@Nightstar-99166553.pltn13.sbcglobal.net] has joined #code |
15:32 | | Netsplit *.net <-> *.split quits: Vornicus, Namegduf, @Tamber, Syloq_Home, @McMartin, Reiv, @ToxicFrog |
15:32 | | FurryHelix [tamber@furryhelix.co.uk] has joined #code |
15:32 | | Netsplit over, joins: Reiv |
15:32 | | Vornotron [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
15:36 | | ToxicFrog [ToxicFrog@Nightstar-8cc826e0.eng.wind.ca] has joined #code |
15:46 | < Rhamphoryncus> | yeah, there's no consensus on the history |
15:49 | | Syloq_Home [Syloq@NetworkAdministrator.Nightstar.Net] has joined #code |
15:54 | | FurryHelix is now known as Tamber |
15:54 | | mode/#code [+o Tamber] by ChanServ |
16:32 | | Vornotron is now known as Vornicus |
16:32 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
17:25 | | Kindamoody is now known as Kindamoody|out |
18:48 | | Kindamoody|out is now known as Kindamoody |
18:50 | < iofficespace> | "Why are you on IRC?" "Testing script" "Oh, carry on." |
19:00 | | Vash [Vash@Nightstar-e8057de2.wlfrct.sbcglobal.net] has joined #code |
19:00 | | mode/#code [+o Vash] by ChanServ |
19:12 | | Kindamoody is now known as Kindamoody[zZz] |
20:37 | | xeode [xeode@FEE8B2.A109E0.D3ED6F.80F408] has joined #code |
20:37 | < xeode> | hi, anyone about? |
20:37 | < gnolam> | Yes. |
20:38 | < xeode> | how you doing? any good at vb? |
20:38 | < gnolam> | I've... tried to avoid it. |
20:39 | < xeode> | me too (but not in preference of other languages, because it's complicated) |
20:40 | | * Tamber shudders at the memories of VB. |
20:40 | <@Tamber> | ...it could be /worse/, though. |
20:40 | < xeode> | any better at dos or cmd ? ; ) |
20:41 | <@Tamber> | If it helps any, I vaguely remember they exist. ;) |
20:41 | < xeode> | have a bat/vbs bodge that im trying to get to handle foreign chars properly |
20:41 | <@Tamber> | Oh. |
20:41 | < xeode> | lols |
20:41 | <@Tamber> | Whelp, doomed! :p |
20:41 | < xeode> | bad start |
20:41 | < xeode> | how about purely VB |
20:42 | < xeode> | had to stick VB in to replace vertical bar delimiter that DOS couldnt escape |
20:42 | <@Tamber> | To be honest, I have no idea. I last used VB back in college, and then only because I wasn't allowed any other option. |
20:42 | <@Tamber> | I just have some not-so-fond memories of it~ |
20:42 | < xeode> | I want to move on to powershell or something but all i have is bat and windows script host |
20:43 | < xeode> | it's basicly to reformat a delimited interface file |
20:43 | < gnolam> | <xeode> had to stick VB in to replace vertical bar delimiter that DOS couldnt escape |
20:43 | < gnolam> | Could you elaborate? |
20:44 | < xeode> | well as set out a little already I was writing a bat file to reorder a delimted interface file |
20:44 | < xeode> | source is delimited by vertical bar char and when NULL filed was back to back || |
20:45 | < xeode> | dos for loop doesnt see this as a null field but rahter a double delimiter |
20:45 | < xeode> | changing the positions of following fields |
20:46 | < xeode> | so 2 line vbs s = Wscript.StdIn.ReadAll 'Wscript.Echo Replace(s,"||","| |") |
20:47 | < xeode> | would be good to rewrite it in VBS but put a bit of effort into the batch version, only really want some off the shelf VB code to repalce foreign e with english e |
20:49 | < xeode> | no luck on tinternet, there's a PHP function to transliterate but cant see a function or sample code that does it in VBS |
20:50 | < xeode> | could use a 3rd language lol, not sure how to run PHP code from a script lol |
20:51 | <@Tamber> | Surely the only running should be *from* something that ends up like that? |
20:51 | < gnolam> | And you're locked to windows console/VB? |
20:52 | < gnolam> | (Because while I hate to Apollo 13 someone, this is the point where I have to recommend Python) |
20:52 | < xeode> | ill do whatever it takes, got packages going to séméac ending up saying sNmNac |
20:53 | < xeode> | i could install python no problem, it's just one terminal |
20:57 | < Rhamphoryncus> | gnolam: apollo 13 someone? |
20:58 | < gnolam> | Rhamphoryncus: http://www.xkcdb.com/?5088 |
20:59 | <@Tamber> | hehe |
21:00 | < Rhamphoryncus> | heh |
21:00 | < Rhamphoryncus> | wrong analogy, but still :) |
21:00 | < Rhamphoryncus> | Better would be repairing an old car vs buying new |
21:00 | | xeode [xeode@FEE8B2.A109E0.D3ED6F.80F408] has quit [Client closed the connection] |
21:00 | | xeode [xeode@FEE8B2.A109E0.D3ED6F.80F408] has joined #code |
21:00 | | xeode [xeode@FEE8B2.A109E0.D3ED6F.80F408] has quit [Client closed the connection] |
21:00 | | xeode [xeode@FEE8B2.A109E0.D3ED6F.80F408] has joined #code |
21:01 | < xeode> | soz, tried to click the link and cause it's IE it reset the session |
21:01 | < xeode> | could you resend |
21:01 | < Rhamphoryncus> | You can always repair an old car, but eventually the "cost" (in whatever form) will exceed that of buying new |
21:02 | < Rhamphoryncus> | But only if you look at the long term costs. If you only look at "right now" you'll just keep repairing |
21:02 | < xeode> | I dont mind starting from the ground up, it would be a good little project to starrt off in any language |
21:03 | < xeode> | just looking for one with a good transliterate function to replace foriegn chars with the english equivilents |
21:03 | < Rhamphoryncus> | Which is why it pisses people off. They just need to get to work tomorrow, they don't want to spend $15,000 on a new car |
21:04 | < xeode> | get the bus |
21:05 | < Rhamphoryncus> | In some cases that's a good solution, yes |
21:05 | < xeode> | thnking outside of the......car |
21:06 | < xeode> | any good at python rhamphoryncus |
21:06 | < Rhamphoryncus> | a little :) |
21:06 | | * Rhamphoryncus hides his fork |
21:06 | < xeode> | im a little stuck trying to transliterate text files |
21:06 | < xeode> | replace séméac with semeac and the like |
21:08 | < Rhamphoryncus> | Okay. I have to ask why first. What's being stupid with the existing encoding and why can't it be fixed? |
21:08 | < xeode> | well trying it in dos is a non starter, it just messes up all the foreign chars |
21:09 | < Rhamphoryncus> | I want to know why you're transliterating |
21:09 | < xeode> | have changed codepage and it still sucks, so looking to replace the proper ones with english ones, for compatibility with my existing script (written and working well with english chars) |
21:10 | < Rhamphoryncus> | Why not fix your existing script? |
21:11 | < xeode> | looking to replace them with the base ascii char so it works in dos |
21:11 | < xeode> | as I say, my dos scrip seems to translate the foreign chars badly |
21:11 | < xeode> | séméac becomes sNmNac etc etc |
21:12 | < Rhamphoryncus> | Translate to where? |
21:12 | < Rhamphoryncus> | Just outputting on the windows command prompt? |
21:13 | < xeode> | well I am currently using 'type' to send to the standard out and into the VBScript that inflates null fields which DOS for loop doesnt understand ( || in my case) |
21:14 | < xeode> | i could set my vbscript to read the file rather than the output of type but then I still need a VB method of transliterating the fancy french letters to base ascii ones |
21:14 | < Rhamphoryncus> | Back up here. What is the *overall* goal? Not the various little problems, but the ultimate purpose of the entire thing? |
21:15 | < xeode> | sorry, I wrongly assumed you saw the whole thing, |
21:15 | < xeode> | im reordering a delimited file |
21:15 | < xeode> | changing the field order |
21:16 | < Rhamphoryncus> | And the encoding of the original file isn't problematic? Just the order of fields? |
21:16 | < xeode> | my batch script did the job in english for a year or so but french chars screw it up and looing to change them to the base ascii chars |
21:17 | < xeode> | no, I think the encoding on the input is quite flexible |
21:17 | < xeode> | just trying to reorder the files without adulterating them with unprintable chars and other translation errors |
21:17 | < xeode> | have tried other codepages in dos but to no avail |
21:17 | < xeode> | oh and cmd /u for force unicode |
21:17 | < Rhamphoryncus> | If it's only *your* stuff that can't handle the encodings then you can definitely do it properly and leave the encoding untouched |
21:18 | < xeode> | I could import them as binary values and transpose them verbatim, I just dont know the best way of doing so |
21:19 | < Rhamphoryncus> | Your python code would look something like this: |
21:19 | < Rhamphoryncus> | with open("foo.tmp", "wb") as output: |
21:19 | < Rhamphoryncus> | for line in open("foo", "rb"): |
21:20 | < xeode> | string processing in dos doesnt seem to get foreign chars so looking for a quick way of translating |
21:20 | < Rhamphoryncus> | part1, part2, part3, part4 = line.split('|') |
21:21 | < Rhamphoryncus> | output.write('|'.join([part3, part1, part2, part4])) |
21:21 | < Rhamphoryncus> | mv("foo.tmp", "foo") |
21:21 | < Rhamphoryncus> | oh, newlines need better handling than what I gave, unless part4 stays at the end (it includes the linefeeds) |
21:23 | < xeode> | one line files so should be fine, let me just copy this for tomrrow ; ) |
21:23 | < Rhamphoryncus> | heh |
21:23 | < xeode> | do you know how the line split command handles double delimited |
21:23 | < Rhamphoryncus> | properly :) |
21:24 | < Rhamphoryncus> | Once you've got python installed fire up IDLE and play |
21:25 | < xeode> | great so one|two|three||five gives what when output.write('|'.join([part4,part3,part2,part1])) |
21:26 | < xeode> | with a part5 naturally....donh |
21:26 | < Rhamphoryncus> | >>> 'one|two|three||five'.split('|') |
21:26 | < Rhamphoryncus> | ['one', 'two', 'three', '', 'five'] |
21:27 | < xeode> | result |
21:27 | < McMartin_> | One, two, five |
21:27 | < McMartin_> | (three sir!) |
21:27 | < Rhamphoryncus> | splitting actually returns a list, so unpacking to separate variables is entirely optional. It seems the easiest here though |
21:28 | < xeode> | ok will have to go get me some python tomoz |
21:29 | | * Rhamphoryncus feels like he's handing out "free samples" of crack ;) |
21:30 | < xeode> | 'and the number of the counting shal be......' |
21:34 | < McMartin_> | The tutorials on the official python.org site are actually pretty good for learning the language |
21:41 | | You're now known as TheWatcher |
21:43 | < xeode> | so they are, will give it a go, we use a fair bit of other people's python but not made any of our own |
21:43 | < xeode> | it's a bit of a pita that you have to install the stuff but it's a million times more flexible |
21:44 | | xeode [xeode@FEE8B2.A109E0.D3ED6F.80F408] has quit [Client closed the connection] |
22:30 | <~Vornicus> | The official python tutorials are literally how I learned to program |
22:30 | <~Vornicus> | They're better than pretty good~ |
22:32 | <~Vornicus> | also this channel at some point became the third largest public channel on the network. |
22:38 | | iofficespace is now known as io\gone |
22:43 | < ToxicFrog> | Time to learn how to be a certificate authority. |
22:48 | <@TheWatcher> | Kinda scary to think that python is older than vorn programming. And makes me feel bloody old. |
22:49 | <~Vornicus> | TW: I've only been programming since about 2001 |
22:49 | <~Vornicus> | Shit now I feel old. |
22:49 | <~Vornicus> | Java and Python both came out in 1993. |
22:50 | <@TheWatcher> | Yeah, I've been programming since about 1988 >.< |
22:50 | < AnnoDomini> | Vornicus: You make *me* feel old. |
22:50 | <~Vornicus> | shit man |
22:51 | < AnnoDomini> | I was programming on C64 around the mid-90s. |
22:52 | <~Vornicus> | I had a C64 and "could program" it which basically meant that I could string print statements together. I never did anything even vaguely useful with it. |
22:52 | <~Vornicus> | Oh, and I could copy programs out of Compute's Gazette, but that hardly counts. |
22:53 | < AnnoDomini> | I didn't do anything useful with it, either, but I did modify programs from the manual so they displayed things differently. |
22:55 | <@TheWatcher> | I was programming 68k assembler on my A500 back then |
23:00 | <~Vornicus> | On the other hand in the 90s the things I could do with Excel and a decent search/replace were amazing. |
23:34 | | ToxicFrog [ToxicFrog@Nightstar-8cc826e0.eng.wind.ca] has quit [Ping timeout: 121 seconds] |
23:37 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code |
23:53 | | mode/#code [+ao ToxicFrog ToxicFrog] by ChanServ |
--- Log closed Tue Aug 21 00:00:00 2012 |