code logs -> 2020 -> Sat, 06 Jun 2020< code.20200605.log - code.20200607.log >
--- Log opened Sat Jun 06 00:00:10 2020
00:01 Kindamoody|out is now known as Kindamoody
00:06
< Yossarian>
Distractions to productive and learning thought are a damned shame.
00:20
<&McMartin>
jerith: 1100 lines of Go became 1500 lines of C, along with some significant reorganization at the outer API level.
00:20
<&McMartin>
Instead of one program that kept bending into different shapes as I edited it to do different things, it's now a collection of shell scripts.
00:21
<&McMartin>
The ones that produce PNGs use stb_image_write.h, 1600 lines of code I'm not counting against the program size, which works admirably but also produced much larger PNGs than I wanted.
00:21
<&McMartin>
So piping those through ImageMagick and pngcrush after the fact solved that.
00:22
<&McMartin>
I've also added new functionality that was never present in the Golang system, but that was well under 100 lines of additional code including comments.
00:23
<&McMartin>
Three bugs emerged from the C code that were in some sense not possible in the Go code, including one that produced subtly wrong answers instead of crashing, which is always a bad sign.
00:24
<&McMartin>
That said, the C code repeats itself far less, except for the PNG generation code that is very heavily copy-pasted and if I were more serious about the application suite I would refactor into some more general operation all of them linked against.
00:26
<&McMartin>
Also, of course, there is the small matter that the C applications were on the order of 20-50KB each and any given incarnation of the Golang program was 2.5MB.
00:29
<&McMartin>
There's a few tricks I picked up writing the Go code; mostly getting both versions of polymorphism to kind of work
00:29
<&McMartin>
And then while writing the better version of that in C I got an idea for how to make Go do that more cleanly but I haven't worked up a toy example of it yet
00:29
< catalyst>
polymorphism that kind of works describes go's approach really
00:29
<&McMartin>
But I think I can get "nontrivial abstract superclass".
00:29
<&McMartin>
Which is a thing I needed for that.
00:30
<&McMartin>
And in C, that's "you do a tagged union, but the struct part with the tag has more than just the union in it"
00:31
<&McMartin>
And in Rust, I think that translates too. If I've got a "variant" where all variants are guaranteed to share a value, have a struct that has those fields and then put the variant/enum as an additional field. Then work exclusively with the "containing" struct.
00:34
< catalyst>
yeah you can construct that as a struct with an enum in it
00:50 Kindamoody is now known as Kindamoody[zZz]
01:59 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection closed]
02:36 McMartin [mcmartin@Nightstar-c25omi.ca.comcast.net] has quit [Operation timed out]
02:44 Vorntastic [uid293981@Nightstar-ks9.9ff.184.192.IP] has quit [[NS] Quit: Connection closed for inactivity]
03:00 McMartin [mcmartin@Nightstar-c25omi.ca.comcast.net] has joined #code
03:00 mode/#code [+ao McMartin McMartin] by ChanServ
03:25 Pinkhair [user1@Nightstar-g7hdo5.dyn.optonline.net] has joined #code
03:25 Pink [user1@Nightstar-g7hdo5.dyn.optonline.net] has quit [Ping timeout: 121 seconds]
03:39 Degi [Degi@Nightstar-57qkqn.dyn.telefonica.de] has quit [Operation timed out]
03:44 Degi [Degi@Nightstar-8n26nd.dyn.telefonica.de] has joined #code
03:53 JustLurk [justbob@ServerAdministrator.Nightstar.Net] has joined #code
03:53 JustBob [justbob@Nightstar.Customer.Dissatisfaction.Administrator] has quit [NickServ (RECOVER command used by JustLurk)]
03:53 JustLurk is now known as JustBob
03:53 mode/#code [+o JustBob] by ChanServ
04:30 Pinkhair [user1@Nightstar-g7hdo5.dyn.optonline.net] has quit [Ping timeout: 121 seconds]
04:30 Pink [user1@Nightstar-g7hdo5.dyn.optonline.net] has joined #code
05:42 Attilla [uid13723@Nightstar-2dc.p8m.184.192.IP] has quit [[NS] Quit: Connection closed for inactivity]
05:49 catalys53 [catalyst@Nightstar-5urngh.dab.02.net] has joined #code
05:52 catalyst [catalyst@Nightstar-8n2v7q.dab.02.net] has quit [Ping timeout: 121 seconds]
05:57 Pink [user1@Nightstar-g7hdo5.dyn.optonline.net] has quit [Ping timeout: 121 seconds]
06:02 VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has quit [Connection closed]
06:02 VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has joined #code
06:02 mode/#code [+ao VirusJTG VirusJTG] by ChanServ
06:33 Pink [user1@Nightstar-g7hdo5.dyn.optonline.net] has joined #code
07:20 Vorntastic [uid293981@Nightstar-ks9.9ff.184.192.IP] has joined #code
07:20 mode/#code [+qo Vorntastic Vorntastic] by ChanServ
08:13 celticminstrel [celticminst@Nightstar-ovl74f.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
09:05 Kindamoody[zZz] is now known as Kindamoody
09:37 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has joined #code
09:44 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has quit [Ping timeout: 121 seconds]
10:53 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has joined #code
11:12 * TheWatcher has a very unusual experience when looking at old code
11:14
<@TheWatcher>
Instead of the more normal "What the fuck was I on when I wrote this?!" I'm finally working out what I was doing here and damn, I should pin a tail on this and call it a weasel.
11:20
< catalys53>
:D
11:24
<&Reiver>
Presented without comment https://www.youtube.com/watch?v=4dS6_pX5sTM
11:26 Attilla [uid13723@Nightstar-2dc.p8m.184.192.IP] has joined #code
11:26 mode/#code [+o Attilla] by ChanServ
11:44 Kindamoody is now known as Kindamoody|afk
12:19 catalyst_ [catalyst@Nightstar-mq3.tcr.132.82.IP] has joined #code
12:22 catalys53 [catalyst@Nightstar-5urngh.dab.02.net] has quit [Ping timeout: 121 seconds]
12:48 Yossarian [yoss@Nightstar-d7h8ki.org] has quit [[NS] Quit: WeeChat 2.2]
--- Log closed Sat Jun 06 13:09:51 2020
--- Log opened Sat Jun 06 13:10:02 2020
13:10 TheWatcher [chris@GlobalOperator.Nightstar.Net] has joined #code
13:10 Irssi: #code: Total of 32 nicks [24 ops, 0 halfops, 0 voices, 8 normal]
13:10 mode/#code [+o TheWatcher] by ChanServ
13:10 Irssi: Join to #code was synced in 14 secs
13:24
<@TheWatcher>
AAaand now I remember why I hit a brick wall with this code
14:20 catalyst_ [catalyst@Nightstar-mq3.tcr.132.82.IP] has quit [[NS] Quit: -a- IRC for Android 2.1.55]
15:12 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
15:12 mode/#code [+qo Vornicus Vornicus] by ChanServ
15:33 Yossii [Yossii@Nightstar-d7h8ki.org] has joined #code
16:13 Yossii [Yossii@Nightstar-d7h8ki.org] has quit [Connection closed]
16:20 Yossii [Yossii@Nightstar-d7h8ki.org] has joined #code
16:28 Yossii [Yossii@Nightstar-d7h8ki.org] has quit [Connection closed]
16:57 catalyst_ [catalyst@Nightstar-mq3.tcr.132.82.IP] has joined #code
17:10 Vorntastic [uid293981@Nightstar-ks9.9ff.184.192.IP] has quit [[NS] Quit: Connection closed for inactivity]
18:52 catalyst_ [catalyst@Nightstar-mq3.tcr.132.82.IP] has quit [Ping timeout: 121 seconds]
18:54 catalyst [catalyst@Nightstar-v6lb30.cable.virginm.net] has joined #code
18:58 celticminstrel [celticminst@Nightstar-ovl74f.dsl.bell.ca] has joined #code
18:58 mode/#code [+o celticminstrel] by ChanServ
19:51 Kindamoody|afk [Kindamoody@Nightstar-eubaqc.tbcn.telia.com] has quit [Client exited]
19:57 Kimo|autojoin [Kindamoody@Nightstar-eubaqc.tbcn.telia.com] has joined #code
19:57 mode/#code [+o Kimo|autojoin] by ChanServ
21:09 Kimo|autojoin [Kindamoody@Nightstar-eubaqc.tbcn.telia.com] has quit [Connection closed]
21:09 KiMo|autorejoin [Kindamoody@Nightstar-eubaqc.tbcn.telia.com] has joined #code
23:12 KiMo|autorejoin is now known as Kindamoody
23:12 mode/#code [+o Kindamoody] by ChanServ
23:36 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has quit [Ping timeout: 121 seconds]
23:37 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection closed]
--- Log closed Sun Jun 07 00:00:56 2020
code logs -> 2020 -> Sat, 06 Jun 2020< code.20200605.log - code.20200607.log >

[ Latest log file ]