--- Log opened Fri Sep 09 00:00:49 2016 |
00:46 | | macdjord [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has quit [Ping timeout: 121 seconds] |
00:52 | | macdjord [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has joined #code |
00:52 | | mode/#code [+o macdjord] by ChanServ |
00:53 | | macdjord [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has quit [Connection reset by peer] |
00:53 | | macdjord [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has joined #code |
00:53 | | mode/#code [+o macdjord] by ChanServ |
00:53 | | macdjord [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has quit [Connection reset by peer] |
00:55 | | macdjord [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has joined #code |
00:55 | | mode/#code [+o macdjord] by ChanServ |
00:59 | | mac [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has joined #code |
00:59 | | mode/#code [+o mac] by ChanServ |
00:59 | | mac [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has quit [Connection reset by peer] |
01:00 | | mac [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has joined #code |
01:00 | | mode/#code [+o mac] by ChanServ |
01:01 | | macdjord [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has quit [Ping timeout: 121 seconds] |
01:09 | | mac [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has quit [Ping timeout: 121 seconds] |
01:10 | | macdjord [macdjord@Nightstar-r9vt2h.mc.videotron.ca] has joined #code |
01:10 | | mode/#code [+o macdjord] by ChanServ |
03:29 | | gizmore [kvirc@Nightstar-smfncn.dip0.t-ipconnect.de] has joined #code |
04:55 | | catadroid` [catadroid@Nightstar-p7hvmt.dab.02.net] has joined #code |
04:57 | | catadroid [catadroid@Nightstar-tm5jdm.dab.02.net] has quit [Ping timeout: 121 seconds] |
05:04 | | Derakon is now known as Derakon[AFK] |
06:02 | | Kindamoody[zZz] is now known as Kindamoody |
06:35 | <@celticminstrel> | McMartin: Hmm? This sounds interesting. |
06:42 | | * Vornicus vornballs |
06:55 | | himi [sjjf@Nightstar-dm0.2ni.203.150.IP] has quit [Ping timeout: 121 seconds] |
07:01 | <&McMartin> | celticminstrel: Basically, a program start you construct and configure a set of "golden master objects" and then every object you make in those classes thenceforth is struck off the masters with the copy constructor. |
07:01 | <&McMartin> | https://en.wikipedia.org/wiki/Prototype_pattern |
07:08 | | Pink` [user1@Nightstar-g7hdo5.dyn.optonline.net] has joined #code |
07:11 | | Pinkhair [user1@Nightstar-g7hdo5.dyn.optonline.net] has quit [Ping timeout: 121 seconds] |
07:18 | <@celticminstrel> | Hmm, so I guess that implies only private/protected constructors, or something... |
07:21 | <&McMartin> | It can but it doesn't have to |
07:22 | <&McMartin> | When you're using an alien discipline, the language generally won't enforce it for you. |
07:27 | < catadroid`> | C++ is so brittle in surprising ways |
07:29 | <~Vornicus> | I'm not wure why you'd want to do prototype in C++ in the first place honestly |
07:31 | < catadroid`> | There's no reason why you shouldn't want to use a paradigm in a multiparadigm language |
07:32 | < catadroid`> | But the dynamic dispatch is against the design philosophy of the language in general |
07:32 | | catadroid` is now known as catadroid |
07:32 | < catadroid> | I suppose |
07:32 | < catadroid> | I am increasingly annoyed by languages that distinguish compile and runtime though |
07:34 | <~Vornicus> | Meanwhile I keep wishing for build-time or interactive error checking but not wanting a fuckton of work to get it, where "fuckton" is defined as "more than a standard program installation" |
07:37 | | gizmore [kvirc@Nightstar-smfncn.dip0.t-ipconnect.de] has quit [[NS] Quit: KVIrc 4.9.2 Aria http://www.kvirc.net/] |
07:39 | < catadroid> | I just think people should realise that there's nothing special about types |
07:39 | < catadroid> | They're just metadata |
07:39 | < catadroid> | Useful metadata for proving some kinds of correctness |
07:40 | < catadroid> | But not the point of the exercise |
07:40 | <~Vornicus> | A lot of my grump at sublime text this week is actually that, since it's not smart enough to figure out what's allowed, its autocompletion function becomes utterly useless. |
07:41 | | * catadroid nods |
07:42 | <~Vornicus> | It's not merely proving correctness that types help; it's also that it allows systems to figure out what's available to run. Yes sometimes it gets bogged down but it's not actually terribly often. |
07:42 | < catadroid> | I'm near certain that a lot of the reason object orientation is handy for building ides is because it's good at scoping autocompletion and enabling correctly targeted refactoring |
07:43 | < catadroid> | Ah, but what people mean when they say type is often very confused and ambiguous |
07:47 | | * catadroid sighs |
07:48 | <@Tamber> | It's just that type of word. |
07:48 | | * Tamber flees |
07:49 | | * catadroid TYPES FURIOUSLY |
07:49 | < catadroid> | (it's an Adverb<English>) |
08:08 | | Kindamoody is now known as Kindamoody|afk |
08:14 | | wolfmoon [uid178473@Nightstar-2dc.p8m.184.192.IP] has joined #code |
08:42 | | Emmy [NSkiwiirc@Nightstar-41pbej.static.chello.nl] has joined #code |
08:42 | | mode/#code [+o Emmy] by ChanServ |
08:42 | <@Emmy> | werkidy werk werk. |
08:55 | | * Vornicus chews on catadroid's delicious brainmeats to extract the succulent knowledge |
09:17 | | himi [sjjf@Nightstar-v37cpe.internode.on.net] has joined #code |
09:17 | | mode/#code [+o himi] by ChanServ |
09:18 | <@simon> | catadroid, types are not just metadata! they're propositions! and propositions are a logical specification of (some of) the program, like the rest of the code. </Philip-Wadler-fanboy> |
09:19 | | * Emmy notes to self: When trying to add data to a certain table, make sure you are trying to add data to that table, and that table alone. |
09:20 | <@simon> | types will surely be appreciated more when they achieve first-class citizenship (as in Dependent Types, where you have types that can depend on values, etc.) |
09:21 | <@Emmy> | fortunately i did not fuck up any existing data, (development test data, but still) but it sure tickled my nuisance bone trying to find out why the fuck my code didn't work. |
09:29 | < catadroid> | That's what I mean by types not being special |
09:29 | < catadroid> | They're values just like functions are |
09:30 | <@simon> | types make me happy and frustrated at the same time. |
09:30 | < catadroid> | Types are helpful but a lot of folk forget that programming is about computation, not types |
09:30 | <@simon> | but types are computed |
09:31 | <@simon> | :P |
09:31 | < catadroid> | But I'm not writing a program to make types, just like I'm not writing a generic program to make use of templates |
09:31 | < catadroid> | They're a tool, they aren't the goal |
09:33 | <@simon> | yeah, so compiler people and type theorists tend to forget that the point of most programs is to run them in production, rather than assert that they compile correctly. a lot of people would rather run a slightly buggy program and go back and fix it, than verify everything to death from the beginning. |
09:33 | < catadroid> | Largely because you actually can't verify everything whilst you're building it |
09:36 | <@simon> | right. I guess it depends on how many times you're allowed to go back and fix things after they fail in production. :) financial software and airplanes don't get as many chances. |
09:37 | <@simon> | (I don't think any airplane software was written in a functional language, though.) |
09:37 | < catadroid> | Sure, but I'm biased by my personal experience ;p |
09:37 | < catadroid> | Although there is a case for airplane software to fail less hard |
09:43 | <@simon> | I think one strategy that autopilot software employs is write a bunch of autopilots and do whatever most of them say at any given point. |
09:45 | < catadroid> | That makes sense |
09:46 | < catadroid> | I do find the idea that my thinking MUST be type based laughable in the same way that I feel about the idea that my thinking MUST be object oriented, or functional, etc, it's just one tool |
09:46 | < catadroid> | Types that are working well should be very sparse |
09:47 | < catadroid> | But then I also think that programming ought not to just be text based |
09:52 | <@simon> | I think types are not a paradigm comparable to OOP. they're the formalisation of your thought process. type annotations are a byproduct of that, and I don't mind if there's very few of those. and yeah, I think at different stages of the development process, you want to be more or less formal about things. it can severely limit the creative process if you think in terms of what's correct all the time. |
09:53 | < catadroid> | Types are very definitely avoidable if you want them to be |
09:53 | < catadroid> | At least as part of the conscious thought process of the programmer |
09:53 | < catadroid> | Obviously at some point you need to speak in terms of the types the machine you're running on uses |
09:54 | <@simon> | and yeah, programming really isn't text-based, since all program code has tree structure. I guess the reason we haven't really gone beyond a linear representation of program code is that it's how we deal with regular language, of which the structure isn't linear, even though we encode it linearly, too. |
09:54 | <~Vornicus> | the other reason we haven't gone beyond directories of text files is because the tools we have for those are utterly bonkers good |
09:55 | | * simon is actually quite disappointed about the state of our filesystems. |
09:55 | < catadroid> | https://youtu.be/8pTEmbeENF4 |
09:56 | <@simon> | I read a HackerNews post saying ext4 still doesn't support >32767 files per directory, and I recently had a horrible time migrating 2TB of files from one machine running NTFS to another. >_< |
09:56 | <@simon> | catadroid, will watch later. |
09:56 | < catadroid> | I really like how he thinks about programming |
09:57 | < catadroid> | Incidentally, I do actually really like types in the code I write |
09:57 | < catadroid> | But I find it really frustrating the amount of effort that's being put into them compared to other areas |
10:04 | <@TheWatcher> | simon: some of the student servers here have perennial problems with ext* filessystems, in particular they like to run out of inodes for fun |
10:05 | < catadroid> | inodes, unodes, hesheitortheynodes |
10:05 | <@simon> | hehe |
10:06 | <~Vornicus> | Still think the next nintendo console should be called the WIi They |
10:10 | <@Emmy> | no, it should be called the wii wee. |
10:10 | <@TheWatcher> | Or a mini version specifically aimed at the Scottish market: the Wee Wii. |
10:11 | <@Emmy> | now that would be fun |
10:12 | <~Vornicus> | the first one was first person, the second one was second person, the third one has to be third person |
10:12 | <@Emmy> | silly vorny. zero based arrays! |
10:12 | <@Emmy> | also, d'oh. must... resist... using goto... |
10:12 | <~Vornicus> | hey I didn't name the first two |
10:28 | <@Emmy> | hmmmh. interesting. I make a new dossier file in the db, and when i cause the subform showing the dossier tags to refresh by titling it, (which automatically should add any tags occuring in the title to said subform) it shows the tags of the last dossier i had open instead. |
10:31 | <@Emmy> | Aaah. I think i might have the cause. because it is a new dossier entry, no unique key is assigned to it yet. |
10:32 | <@Emmy> | odd. it should've done so. |
10:45 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
11:02 | <@Emmy> | yup, that fixed it. |
11:25 | | catadroid` [catadroid@Nightstar-7mau7l.dab.02.net] has joined #code |
11:27 | | catadroid [catadroid@Nightstar-p7hvmt.dab.02.net] has quit [Ping timeout: 121 seconds] |
11:34 | | wolfmoon [uid178473@Nightstar-2dc.p8m.184.192.IP] has quit [[NS] Quit: Connection closed for inactivity] |
11:41 | | catadroid` is now known as catadroid |
11:45 | <@Emmy> | workday is over! :D |
11:45 | | Emmy [NSkiwiirc@Nightstar-41pbej.static.chello.nl] has quit [[NS] Quit: http://www.kiwiirc.com/ - A hand crafted IRC client] |
17:55 | | catadroid` [catadroid@Nightstar-gvmoap.dab.02.net] has joined #code |
17:55 | | catadroid` [catadroid@Nightstar-gvmoap.dab.02.net] has quit [[NS] Quit: Bye] |
17:58 | | catadroid [catadroid@Nightstar-7mau7l.dab.02.net] has quit [Ping timeout: 121 seconds] |
19:17 | | McMartin [mcmartin@Nightstar-rpcdbf.sntcca.sbcglobal.net] has quit [[NS] Quit: zoom] |
19:17 | | catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code |
19:25 | | McMartin [mcmartin@Nightstar-rpcdbf.sntcca.sbcglobal.net] has joined #code |
19:25 | | mode/#code [+ao McMartin McMartin] by ChanServ |
19:56 | | Derakon[AFK] is now known as Derakon |
19:58 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code |
19:58 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
21:58 | | Pink [user1@Nightstar-g7hdo5.dyn.optonline.net] has joined #code |
21:59 | | Pinkhair [user1@Nightstar-g7hdo5.dyn.optonline.net] has joined #code |
22:00 | | Pink` [user1@Nightstar-g7hdo5.dyn.optonline.net] has quit [Ping timeout: 121 seconds] |
22:02 | | Pink [user1@Nightstar-g7hdo5.dyn.optonline.net] has quit [Ping timeout: 121 seconds] |
22:20 | | Kindamoody|afk is now known as Kindamoody |
23:18 | | Kindamoody is now known as Kindamoody[zZz] |
--- Log closed Sat Sep 10 00:00:05 2016 |