code logs -> 2013 -> Sat, 20 Jul 2013< code.20130719.log - code.20130721.log >
--- Log opened Sat Jul 20 00:00:47 2013
00:12 You're now known as TheWatcher[T-2]
00:14 gnolam [lenin@Nightstar-d47c5b7b.hotsplots.net] has joined #code
00:15 gnolam is now known as NSGuest40568
00:16 NSGuest40568 is now known as gnolam
00:16 mode/#code [+o gnolam] by ChanServ
00:17 You're now known as TheWatcher[zZzZ]
00:23
< [R]>
So apparently calling db.connect() without a callback will cause athentication to fail.
00:24
< [R]>
I don't even want to guess how the hell they fucked that up.
00:25 gnolam [lenin@Nightstar-d47c5b7b.hotsplots.net] has quit [[NS] Quit: Z?]
00:31 * McMartin attempts to read about Scala
00:32
<&McMartin>
I can't tell if this documentation is not great or if Scala is just gratuitously wildly ad-hoc or if the grammatical simplicity of Clojure has spoiled the shit out of me or what
00:43
<&ToxicFrog>
All three.
00:53
<&McMartin>
Heh.
00:54
<&McMartin>
I honestly can't remember if C was this bad for me, back in '90, or if Java was, back in '96
00:54
<&ToxicFrog>
C has a more complicated grammar and standard library than either, tbf.
00:54
<&ToxicFrog>
Er
00:54
<&ToxicFrog>
Scala does, rather
00:54 * McMartin nods
00:54
<&McMartin>
C's grammar was infamous at the time for being resistant to the mechanical parsing techniques of the age
00:54
<&McMartin>
We've gotten better since, and someone ultimately did make a LALR(1) grammar for it
00:55
<&ToxicFrog>
I found the stdlib docs to be pretty excellent in both content and presentation, especially compared to javadocs, but it is very obviously a reference manual meant to refresh your memory and not a learning resource.
00:55
<&McMartin>
But it took years to do so, and had not, for instance, been successfully done at the time C++ was first created.
00:55
<&ToxicFrog>
I forget how I learned the language proper, other than lots of fiddling around.
00:55
<&McMartin>
Yeah
00:55
<&McMartin>
Each time I try to fiddle with Scala a voice in my head prods me and asks why I'm not using Clojure
00:55
<&McMartin>
(or, for that matter, Python or C~)
00:56
<&ToxicFrog>
I've reached the awkward point where when I'm using scala I want clojure's cleanliness and when I'm using clojure I want scala's static typing~
00:56
<&McMartin>
Harsh~
00:57
<&ToxicFrog>
(it is not an exaggeration to say that scala is the only statically typed language I have truly enjoyed using)
00:57
<&McMartin>
From what I've seen, Scala's Case Types make me pretty happy
00:57
<&McMartin>
They mesh well with my preferred form of data-driven programming, which is to say, ML's and Haskell's.
00:58
<&ToxicFrog>
Yeah
00:58
<&ToxicFrog>
My impression when first learning scala was "holy shit, it's everything I liked about Haskell without any of the stuff that drove me insane"
01:00
<&ToxicFrog>
Basically, haskell was the language that convinced me that I didn't hate static typing as a concept, just most statically typed languages, and scala is the language that convinced me that you could do practical things in a statically typed language, not just beautiful things.
01:43 RichyB [RichyB@D553D1.68E9F7.02BB7C.3AF784] has quit [[NS] Quit: Gone.]
01:46 RichyB [RichyB@D553D1.68E9F7.02BB7C.3AF784] has joined #code
02:20 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has joined #code
03:43 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has quit [Connection reset by peer]
03:43 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has joined #code
03:44 Karono_ [Karono@Nightstar-0e4527e4.optusnet.com.au] has joined #code
03:44 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has quit [Connection reset by peer]
03:44 Karono_ is now known as Karono
04:10 Kindamoody[zZz] is now known as Kindamoody
04:19 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
04:26 VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [[NS] Quit: Program Shutting down]
04:32 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
04:32 mode/#code [+o himi] by ChanServ
04:44 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has quit [Client closed the connection]
04:45 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has joined #code
04:49 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has quit [[NS] Quit: ]
05:19 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has joined #code
05:29 Derakon is now known as Derakon[AFK]
05:36 Turaiel[Offline] is now known as Turaiel
05:37 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has quit [Client closed the connection]
05:38 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has joined #code
05:43 Kindamoody is now known as Kindamoody|out
06:09 Turaiel is now known as Turaiel[Offline]
06:16 Karono [Karono@Nightstar-0e4527e4.optusnet.com.au] has quit [[NS] Quit: ]
06:17 Turaiel[Offline] is now known as Turaiel
06:50 ktemkin[work] is now known as ktemkin[awol]
07:29 Karono [Karono@Nightstar-a97724cd.optusnet.com.au] has joined #code
07:32 Turaiel is now known as Turaiel[Offline]
08:25 gnolam [lenin@Nightstar-87438f9f.hotsplots.net] has joined #code
08:25 mode/#code [+o gnolam] by ChanServ
08:32 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
08:45 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
08:45 mode/#code [+o himi] by ChanServ
08:46 gnolam [lenin@Nightstar-87438f9f.hotsplots.net] has quit [[NS] Quit: Gone]
08:53 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
09:06 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
09:06 mode/#code [+o himi] by ChanServ
09:31 ErikMesoy [Erik@Nightstar-16aba739.80-203-17.nextgentel.com] has joined #code
09:31
< ErikMesoy>
Minor WTF: According to this university handout, it's an "advantage" of C that you can write very compact code like A[++n]*=3.1
09:32
< ErikMesoy>
According to my impressions from the intertubes, this is mostly a way to shoot yourself in the foot, and the extra length of saying n:=n+1; A[n]:=A[n]*3.1; in Simula is more than made up for by the clarity.
09:34
<@froztbyte>
You're learning
09:34
<@froztbyte>
Excellent.
09:35
<@froztbyte>
stuff like that has some advantages in niche situations
09:36
< ErikMesoy>
I think it's also a minor WTF that the university is comparing C to Simula, especially when I've already taken a Python course there previously. :p
09:36
<@froztbyte>
but, in general, it's just a way to get yourself some mistakes
09:36
<@froztbyte>
ErikMesoy: is it the case there as well that profs make up course content?
09:37
< ErikMesoy>
I don't know.
09:37
< ErikMesoy>
Maybe it's nationalism - Simula is a Norwegian derivate of ALGOL from the 1960s.
09:39
<&McMartin>
Simula is the other primary ancestor of C++, alongside C.
09:41
<&McMartin>
(By the time standardization had finished, the primary additional ancestors added ML, Clu, and Ada.)
09:41
<@froztbyte>
heh
09:42 * McMartin was rereading "The Design and Evolution of C++" last week
09:42
<&McMartin>
It's extra hilarious now because the book was written in 1995 or so.
09:42
<&McMartin>
Three years before standardization completed.
09:42
<&McMartin>
So the STL is shoehorned in as a footnote in one chapter, mentioned once, and then never again
09:44
<&McMartin>
In a super broad sense you can also basically claim that Object-Oriented Programming can be divided into three parts: Simula and languages like it; Smalltalk and languages like it; and CLOS, over there, ranting about how you are all fools unable to recognize its genius and how it will destroy you all.
09:44
<&McMartin>
(It's right; most of the 'post-OOP' stuff I've seen is stuff CLOS has supported natively for decades~)
09:45
< ErikMesoy>
I seem to recall Lisp rants similarly.
09:45
<&McMartin>
(Well, it's not right about the destroying us all, as Common LISP as a whole is about as friendly a language as Visual Basic)
09:45
<@froztbyte>
McMartin: wait, standardization of C++ only finished in 1998?
09:46
<&McMartin>
The relevant standard is "C++98", to be replaced by what was "C++0x" and then became "C++1x" and I guess is now independently C++11 and C++14?
09:46
<&McMartin>
But yes.
09:46
<@froztbyte>
also, that comparison you make to VB breaks down
09:46
<@froztbyte>
there is a lot of VB software in the world
09:46
<@froztbyte>
tons of shareware out to get us
09:46
<@froztbyte>
winning by numbers
09:46
<&McMartin>
Heh.
09:46
<&McMartin>
VB6 was about 10 years ahead of its time
09:46
<&McMartin>
Where it stayed, unchanging, for about 25~
09:47
<@froztbyte>
McMartin: I didn't know that the actual standard was /that/ late overall, I thought C++98 was just a couple of extra things I'd never bothered to read more about
09:47
<&McMartin>
Heh
09:47
<&McMartin>
On top of that, *actually complaint implementations* didn't start becoming widely available until the mid-200Xs.
09:47
<&McMartin>
*compliant, rather
09:47
<&McMartin>
Because templates meant everyone had to rewrite their binutils, more or less.
09:48
<&McMartin>
A thing that Early C++ strove mightily to avoid.
09:48
<&McMartin>
But function overloading in the presence of linkers that only treated the first six characters as meaningful (which was apparently A Thing back in the 80s when C++ was in its birthing fluid) meant that had to go out the window pretty fast
09:48
<&McMartin>
Early C++ actually ended up influencing the standardization of C.
09:48
<~Vornicus>
I've never been able to figure out what exactly the difference between simula-like and smalltalk-like languages is.
09:49
<&McMartin>
Smalltalk is duck typed, Simula is class-based and statically typed.
09:49
<&McMartin>
And CLOS has before/after/instead advice like the aspect-oriented guys and also has multiple dispatch, which means that "classes" and "message passing" are both special cases.
09:50 AverageJoe [evil1@Nightstar-4b668a07.ph.cox.net] has joined #code
09:50 * ErikMesoy is trying to decide on what informatics course to take this fall at university.
09:50
<&McMartin>
(And you can organize those to get ML-style typeswitch or virtual function-like behavior basically via declaration re-ordering)
09:50
<@froztbyte>
<McMartin> But function overloading in the presence of linkers that only treated the first six characters as meaningful (which was apparently A Thing back in the 80s when C++ was in its birthing fluid) meant that had to go out the window pretty fast
09:50
<@froztbyte>
rofl
09:50 * ErikMesoy has taken 11.3 courses of the 18 needed for his degree, now glares balefully at the remnants of the informatics program.
09:50
<@froztbyte>
that must have been quite the majestic fuckup
09:51
<&McMartin>
The 80s were a dark time
09:51
<&McMartin>
Even on minicomputers
09:51
<&McMartin>
My Commodore 64 had better filesystem support than some of those minicomputer systems >_<
09:51
<@froztbyte>
I'd say /especially/ on minicomputers just from some basic historical knowledge
09:52
<&McMartin>
Well, I'm comparing it to the 8-bit micros
09:52
<~Vornicus>
before/after/instead advice like the stuff in I7?
09:52
<&McMartin>
Which are these days considered obsolete even for wristwatches and car dashboards.
09:52
<&McMartin>
Vornicus: Kind of, but more like the stuff in AspectJ.
09:52
< ErikMesoy>
First level suggestions that students are expected to start an informatics degree with are: 1) INF1000 Basic Programming, ok. 2) MAT1001 a mathematical basis for everything, sure. 3) INF1300 Introduction to Databases. Behold, we visit the horrors of SQL upon freshmen.
09:53
<~Vornicus>
Also it appears that part of the difficulty here is that the first thing I think of when I think of C++ object orientation is "virtual" and wondering why the hell it isn't default.
09:53
< Azash>
I object to "horrors of SQL"
09:53
<&McMartin>
In C++, nothing that isn't free is default.
09:53
<&McMartin>
Virtual functions aren't free in time or space.
09:54
< Azash>
We do intro to DBs in the first year and it's no problem
09:54
< ErikMesoy>
Azash: Does it help if I state that the course expects you to use SQL from inside Java? :p
09:54
<&McMartin>
Or, for that matter, compatibility; a class or struct that has no virtual methods can be treated as a C struct.
09:54
< Azash>
That's more about the horrors of Java DBCs
09:54
< Azash>
:b
09:54
<&McMartin>
And C compatibility started out super important and gradually became less so as time went on.
09:55
<&McMartin>
C ABIs were not remotely as well-standardized then, either, to the point that cross-language shared-object linking couldn't be guaranteed even with multiple C compilers.
09:55
< Azash>
fwiw our course uses an online SQL sandbox where you enter the queries directly (with homework consisting of increasingly complex queries to the general example database)
09:55
<&McMartin>
Yeah, learning SQL early is fine
09:55
<&McMartin>
I didn't learn inner vs. outer join until I was 35 years old, and that honestly is Too Late To Be Picking That Shit Up
09:55
< Azash>
McMartin: Agreed, it's important to foster perverse thinking early on
09:55
< Azash>
:P
09:55
<&McMartin>
Well, kinda
09:55
<&McMartin>
Now that you mention it
09:56
<&McMartin>
DB usage is one of the few places left where obsessing over efficiency is actually a defensible position~
09:56
< ErikMesoy>
Hmm. Maybe I should take the SQL course, then.
09:56
< Azash>
ErikMesoy: http://class2go.stanford.edu/db/Winter2013
09:57
<&McMartin>
SQL is A Good Thing To Know, if only because Sqlite3 is good enough to throw at small personal apps for things like object persistence.
09:57
< Azash>
If you want a very good intro by a very recognized lecturer, here you go
09:57
<&McMartin>
(SpaceChem actually uses SQLite3 as its savegame format~)
09:57
<~Vornicus>
sqlite is Kind Of The Bomb
09:58
< Azash>
Vornicus: Agreed
09:58
<&McMartin>
...yeah, that would qualify as a very recognized lecturer
09:58
< ErikMesoy>
Azash: Here's mine. http://www.uio.no/studier/emner/matnat/ifi/INF1300/index-eng.html
09:59
< Azash>
McMartin: Other than being the CS chair, isn't she like in the top 10 for book citations in the field or something?
09:59
< Azash>
Field being CS
09:59
<&McMartin>
She's definitely up there
09:59
<&McMartin>
I'm not super-familiar with DBs though, as noted >_>
09:59
< Azash>
I actually use that DB class as my go-to reference
09:59
<~Vornicus>
McM: and intellectually I know that bit about "nothing that isn't free is default", but still, well, yeah. Virtual makes it act somewhat more smalltalkishly and that is where it fell over
09:59
< Azash>
It's a very clear and informative course
10:00 * McMartin was a compilers/languages/program analysis guy when he was at Stanford, and as such has much more to say about those folks
10:00
<&McMartin>
Which IIRC includes her husband
10:00
< Azash>
ErikMesoy: Is that your DB course?
10:00
< ErikMesoy>
Potentially. I'm picking courses for autumn now.
10:01
< Azash>
Mm
10:01 * Azash should do the same
10:01 * McMartin checks. "Yep."
10:01
<&McMartin>
Vorn: IIRC, Smalltalk's closest C-like relative is Objective-C
10:01
<&McMartin>
But IIARC, Python's closer to it than either
10:02
<&McMartin>
Azash: If you are a Stanford student, 242 (I think?) is the one that is "absurdly broad survey of all the various sorts of languages"
10:03
< Azash>
ErikMesoy: Anyway, my suggestion is that you do a casual run through that online course, it's quite likely that you will repeat the same things in your DB course, at least partially
10:03
<&McMartin>
243 is the one I TAed lo these many years ago
10:03
< Azash>
McMartin: Oh I would like to be but no :P
10:03
< Azash>
I come from Linuslandia
10:03
< Azash>
Where the department has its own distro
10:03
<&McMartin>
Heh
10:03
< Azash>
Seriously though, I wouldn't mind the survey
10:04 You're now known as TheWatcher
10:05
< Azash>
After the two programming intro courses, we just have applied programming (eg. "string methods", "data structures") and spearhead languages (eg. "software engineering in Scala", "distributed functional programming (in a language you have never heard of nor will again)")
10:05
<&McMartin>
Sounds like Erlang to me~
10:06
< Azash>
Erlang is too useful to teach
10:06
<&McMartin>
Snerk
10:06
< Azash>
Nah but it was some lecturer from a Hungarian university that had spent two years writing her own clustre middleware or something
10:06
< Azash>
And the course was on that
10:14
< Azash>
McMartin: Do you have any idea on what kind of BSc grade is needed for international master's applicants there?
10:16
<~Vornicus>
(I hated obj-c, mostly because it all felt very, um, tacked on)
10:18
< ErikMesoy>
"Draw this doodad in ORM" - I presume this means Object-Relational Mapping? (Looking through the course archives and reading the exercises. Some context missing.)
10:19
< ErikMesoy>
It seems the most reasonable thing for drawing a set of access rights on an SQL-related course
10:22 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
10:35 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
10:35 mode/#code [+o himi] by ChanServ
11:04 AverageJoe [evil1@Nightstar-4b668a07.ph.cox.net] has quit [[NS] Quit: Leaving]
11:12 Serah [Z@Nightstar-b920a19c.cust.comxnet.dk] has joined #code
11:24 Serah [Z@Nightstar-b920a19c.cust.comxnet.dk] has quit [[NS] Quit: :tiuQ]
12:06 Xires [xires@Nightstar-c54fd8cd.feedthetrolls.net] has quit [Operation timed out]
12:21 Xires [xires@Nightstar-c54fd8cd.feedthetrolls.net] has joined #code
12:25 * Azash chokes on his lunch: 13:17 <+MK> >Great repository names are short and memorable. Need inspiration? How about yolo-adventure.
12:26
<~Vornicus>
kill
12:57 celticminstrel [celticminst@Nightstar-3d915c28.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
13:23 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving]
13:25 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
13:28 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code
13:28 mode/#code [+qo Vornicus Vornicus] by ChanServ
13:38 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
13:38 mode/#code [+o himi] by ChanServ
14:00 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
14:13 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
14:13 mode/#code [+o himi] by ChanServ
14:33 cpux [cpux@Nightstar-98762b0f.dyn.optonline.net] has joined #code
14:33 mode/#code [+o cpux] by ChanServ
14:50 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
16:05 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [Operation timed out]
16:07 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code
16:07 mode/#code [+ao ToxicFrog ToxicFrog] by ChanServ
16:16 VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has joined #code
16:27 * TheWatcher hairpulls at the dark engine
16:40 Kindamoody|out is now known as Kindamoody
16:48 Karono [Karono@Nightstar-a97724cd.optusnet.com.au] has quit [[NS] Quit: ]
16:58
<@TheWatcher>
Ffffffffff, something is corrupting these variabled, argh
17:14 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
17:27 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
17:27 mode/#code [+o himi] by ChanServ
17:30 Turaiel[Offline] is now known as Turaiel
17:57 Turaiel is now known as Turaiel[Offline]
17:59 Turaiel[Offline] is now known as Turaiel
18:20 celticminstrel [celticminst@Nightstar-3d915c28.dsl.bell.ca] has joined #code
18:20 mode/#code [+o celticminstrel] by ChanServ
18:30 ktemkin[awol] is now known as ktemkin[work]
18:55 * ToxicFrog releases vstruct 1.1.4
19:42 Derakon[AFK] is now known as Derakon
19:42 Kindamoody is now known as Kindamoody[zZz]
21:47 Serah [Z@Nightstar-b920a19c.cust.comxnet.dk] has joined #code
22:12 ErikMesoy [Erik@Nightstar-16aba739.80-203-17.nextgentel.com] has quit [Ping timeout: 121 seconds]
22:14 ErikMesoy [Erik@A08927.B4421D.FE7332.704AA5] has joined #code
22:48 * TheWatcher golfclaps at the dark engine
22:48
<@TheWatcher>
So, I put a script on an AI
22:49
<@TheWatcher>
Enter game mode and it creates a script object attached to the AI, sends it a BeginScript message, as normal
22:50
<@TheWatcher>
It should then send Sim to the same script object
22:50
<@TheWatcher>
In fact, it creates a new one, sends it sim, and uses that new object for the rest of the game, completely ignoring the first one it created.
22:52
< [R]>
gg
22:53
< ErikMesoy>
If it's stupid but it works, in this case, I think it's still stupid.
22:56
<@TheWatcher>
And it looks like it's unique to AIs. If I put the same script on any other concrete object, it uses the same script object for the whole lifetime.
23:02 ErikMesoy is now known as ErikMesoy|sleep
23:11
<@froztbyte>
haha
23:27 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
23:31 Serah [Z@Nightstar-b920a19c.cust.comxnet.dk] has quit [[NS] Quit: :tiuQ]
23:40 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
23:40 mode/#code [+o himi] by ChanServ
23:54 Vorntastic [Vorn@Nightstar-221158c7.sd.cox.net] has joined #code
--- Log closed Sun Jul 21 00:00:03 2013
code logs -> 2013 -> Sat, 20 Jul 2013< code.20130719.log - code.20130721.log >

[ Latest log file ]