--- Log opened Wed May 13 00:00:10 2020 |
00:01 | <&jeroud> | The main problem with doing that on an empty interface is that you only discover at runtime that you got the wrong kind of value. |
00:01 | <&McMartin> | This is a problem it shares with C and I'm treating the C idiom here as Within Parameters. |
00:01 | <&McMartin> | (The C way being struct { int typeid; union { ... } } ) |
00:02 | <&McMartin> | (And then outside of the compiler, you promise that typeid will always be between 0 and 8 and always correctly identifies which member of the union is valid) |
00:02 | <&jeroud> | If you do it on a "marker" interface you can at least have a little more confidence that anyone passing in the wrong kind of value has had to work at it. |
00:02 | < catalyst> | does go have unions? |
00:03 | <&jeroud> | I don't remember seeing any. |
00:03 | <&McMartin> | Pretty sure the closest you get is interface{} |
00:04 | <&McMartin> | IMO unions are a hack that you want to hide if you can possibly get away with it, but I acknowledge that C can't and that is fine |
00:04 | <&McMartin> | C++ can't and it is *not* fine >_> |
00:05 | < catalyst> | hm? |
00:05 | <&McMartin> | destructors and unions don't mix |
00:05 | < catalyst> | they do now |
00:05 | <&McMartin> | that's std::variant, though, isn't it? |
00:06 | <&McMartin> | std::variant is fine |
00:06 | < catalyst> | they introduced some other more basic features for them I think |
00:06 | <&McMartin> | Huh, OK |
00:06 | <&McMartin> | Possibly restrict my comments to C++98 |
00:06 | <&McMartin> | (or 11, or 14, or whatever) |
00:07 | < catalyst> | I forget when |
00:07 | < catalyst> | my brain has kind of jettisoned C++ in favour of Rust lately |
00:08 | < catalyst> | and my float_eq library had 45 downloads yesterday (!) |
00:08 | <&jeroud> | I kind of want to write some Rust again, but I can't justify it for work stuff. |
00:09 | <&McMartin> | Yup, I've been keeping bits of C++ swapped in but I try to use as little of it as I can |
00:09 | <&jeroud> | Hrm. I need to learn a new language before December. |
00:09 | < catalyst> | does anyone have opinions on zig? |
00:09 | <&jeroud> | What's zig? |
00:10 | < catalyst> | an intended C replacement that the rust community talks about occasionally |
00:10 | <@Alek> | launch every zig? |
00:10 | <&jeroud> | Maybe this year's language should be JS. Except I don't want to be sad. |
00:11 | | McMartin [mcmartin@Nightstar-c25omi.ca.comcast.net] has quit [[NS] Quit: Lost terminal] |
00:11 | | McMartin [mcmartin@Nightstar-c25omi.ca.comcast.net] has joined #code |
00:11 | | mode/#code [+ao McMartin McMartin] by ChanServ |
00:12 | <&McMartin> | Hmm. That's the second time irssi has just started flatly refusing keyboard input. |
00:13 | <@TheWatcher> | That's weird |
00:14 | | catalyst [catalyst@Nightstar-v6lb30.cable.virginm.net] has quit [Connection closed] |
00:14 | <&jeroud> | Now it is time for me to sleep and maybe dream of cloud services that actually work as advertised. |
00:14 | <@TheWatcher> | A man can dream. A man can dream. |
00:15 | <&jeroud> | More likely that I'll dream of electric sheep instead. |
00:15 | <&McMartin> | (And it's not XON or XOFF - all the other tabs in the screen session work fine) |
00:17 | | catalyst [catalyst@Nightstar-v6lb30.cable.virginm.net] has joined #code |
00:18 | <&jeroud> | Or maybe dragons, since I'm reading a bunch of McCaffrey lately. |
00:19 | <@celticminstrel> | Yay McCaffrey. |
00:19 | <@celticminstrel> | That reminds me, I wanted to re-read the Freedom trilogy. |
00:21 | | catalyst [catalyst@Nightstar-v6lb30.cable.virginm.net] has quit [Connection reset by peer] |
00:21 | | catalyst [catalyst@Nightstar-v6lb30.cable.virginm.net] has joined #code |
00:23 | | catalyst [catalyst@Nightstar-v6lb30.cable.virginm.net] has quit [Connection closed] |
00:27 | | catalyst [catalyst@Nightstar-v6lb30.cable.virginm.net] has joined #code |
00:33 | | mac [macdjord@Nightstar-rslo4b.mc.videotron.ca] has joined #code |
00:33 | | mode/#code [+o mac] by ChanServ |
00:36 | | macdjord [macdjord@Nightstar-rslo4b.mc.videotron.ca] has quit [Ping timeout: 121 seconds] |
00:37 | | Kindamoody is now known as Kindamoody|zZz] |
02:01 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection closed] |
03:56 | | Tamber [tamber@furryhelix.co.uk] has quit [The TLS connection was non-properly terminated.] |
04:29 | | Degi [Degi@Nightstar-sfak36.dyn.telefonica.de] has quit [Ping timeout: 121 seconds] |
04:29 | | Degi [Degi@Nightstar-cj4otk.dyn.telefonica.de] has joined #code |
04:37 | | macdjord|slep [macdjord@Nightstar-rslo4b.mc.videotron.ca] has joined #code |
04:37 | | mode/#code [+o macdjord|slep] by ChanServ |
04:40 | | mac [macdjord@Nightstar-rslo4b.mc.videotron.ca] has quit [Ping timeout: 121 seconds] |
04:55 | | celticminstrel [celticminst@Nightstar-nuu42v.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
07:05 | | Kindamoody|zZz] is now known as Kindamoody |
07:48 | | catalyst [catalyst@Nightstar-v6lb30.cable.virginm.net] has quit [Ping timeout: 121 seconds] |
07:49 | | catalyst [catalyst@Nightstar-v6lb30.cable.virginm.net] has joined #code |
09:07 | | VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has quit [Connection closed] |
09:07 | | VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has joined #code |
09:07 | | mode/#code [+ao VirusJTG VirusJTG] by ChanServ |
09:07 | | catalyst_ [catalyst@Nightstar-drlc7k.dab.02.net] has joined #code |
09:10 | | catalyst [catalyst@Nightstar-v6lb30.cable.virginm.net] has quit [Ping timeout: 121 seconds] |
09:32 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code |
09:32 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
11:46 | | VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has quit [Connection closed] |
11:48 | | VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has joined #code |
11:48 | | mode/#code [+ao VirusJTG VirusJTG] by ChanServ |
11:53 | | Pi [sid25146@Nightstar-oju.p8m.184.192.IP] has quit [[NS] Quit: ] |
12:12 | | Kindamoody is now known as Kindamoody|afk |
13:42 | | celticminstrel [celticminst@Nightstar-nuu42v.dsl.bell.ca] has joined #code |
13:42 | | mode/#code [+o celticminstrel] by ChanServ |
14:47 | | Alek [Alek@Nightstar-o723m2.cicril.sbcglobal.net] has quit [[NS] Quit: brb] |
14:49 | | Alek [Alek@Nightstar-o723m2.cicril.sbcglobal.net] has joined #code |
14:49 | | mode/#code [+o Alek] by ChanServ |
15:26 | | catalyst [catalyst@Nightstar-jjae0u.dab.02.net] has joined #code |
15:27 | | catalyst_ [catalyst@Nightstar-drlc7k.dab.02.net] has quit [Ping timeout: 121 seconds] |
16:59 | | Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has joined #code |
19:35 | | Tamber [tamber@furryhelix.co.uk] has joined #code |
19:36 | | mode/#code [+o Tamber] by ChanServ |
19:36 | | Tamber [tamber@furryhelix.co.uk] has quit [Connection closed] |
19:37 | | Tamber [tamber@furryhelix.co.uk] has joined #code |
19:37 | | mode/#code [+o Tamber] by ChanServ |
19:39 | | Tamber [tamber@furryhelix.co.uk] has quit [The TLS connection was non-properly terminated.] |
19:41 | | Tamber [tamber@furryhelix.co.uk] has joined #code |
19:41 | | mode/#code [+o Tamber] by ChanServ |
19:43 | | Kindamoody|afk is now known as Kindamoody |
21:51 | | VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has quit [Connection closed] |
21:52 | | VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has joined #code |
21:52 | | mode/#code [+ao VirusJTG VirusJTG] by ChanServ |
21:56 | | catalyst_ [catalyst@Nightstar-2m8p1m.dab.02.net] has joined #code |
21:58 | | catalyst [catalyst@Nightstar-jjae0u.dab.02.net] has quit [Connection closed] |
22:31 | | * TheWatcher readsup |
22:31 | <@TheWatcher> | McMartin: are you running irssi, and glib > 2.62? |
22:31 | <@TheWatcher> | If so, the problem you might be having is https://github.com/irssi/irssi/issues/1180 |
22:32 | <@TheWatcher> | *irssi 1.2.2 |
22:34 | <&[R]> | "This affects all versions of Irssi as soon as your system is updated to this GLib version." |
22:35 | <&McMartin> | And this would happen if I fat-finger a ctrl-C or ctrl-V. |
22:36 | <&McMartin> | Well spotted |
22:38 | | macdjord|slep [macdjord@Nightstar-rslo4b.mc.videotron.ca] has quit [Connection reset by peer] |
22:39 | | McMartin [mcmartin@Nightstar-c25omi.ca.comcast.net] has quit [[NS] Quit: Kernel upgrade] |
22:43 | | McMartin [mcmartin@Nightstar-c25omi.ca.comcast.net] has joined #code |
22:43 | | mode/#code [+ao McMartin McMartin] by ChanServ |
22:44 | <&McMartin> | ... or, for that matter, if I were to fat-finger Ctrl-A [space] to move to the next screen instance. |
22:44 | <&McMartin> | TheWatcher: I remember you making warding symbols re: Golang the other week; do you have specific horror stories of things it does actively wrong for you is it just "this is not the thing, no" |
22:47 | | macdjord [macdjord@Nightstar-rslo4b.mc.videotron.ca] has joined #code |
22:47 | | mode/#code [+o macdjord] by ChanServ |
22:50 | | Pink [user1@Nightstar-g7hdo5.dyn.optonline.net] has quit [Ping timeout: 121 seconds] |
22:52 | <@TheWatcher> | Most of my experience with golang has been connected with gitlab - I run the gitlab system in work, and several parts of the amorphous cloud of interlocking madness that is gitlab is written in golang, and I've had to go in an either fix bugs or change behaviour to fit the things we need. This was *way* more painful to do than some of the other work I've had to do in other |
22:52 | <@TheWatcher> | (ruby on rails, which isn't on my list of favourite languages either) parts of gitlab simply because it felt like I was trying to perform neurosurgery on a plate full of live squid. It isn't just spaghetti code, trying to localise exactly where things were that I needed to work on was a fight |
22:55 | <@TheWatcher> | golang really feels to me almost like a write-only language, or one that people would use to hammer out quick proptotypes that're supposed to then be rewritten in a language that isn't actively working to smear your abstractions all over the place. |
22:58 | <@TheWatcher> | But, y'know, I'm completely aware that I probably revoked any right to complain about languages doing whacky shit when I started intensively using perl, so *shrug* |
22:59 | <@Tamber> | :) |
23:03 | | Pink [user1@Nightstar-g7hdo5.dyn.optonline.net] has joined #code |
23:03 | <&McMartin> | That is part of why I value your opinion on this; in particular, what it means to a skilled Perl programmer for a language to "smear its abstractions all over the place" |
23:04 | <&McMartin> | (If you weren't here for the earlier discussion; I've been trying to experiment with it to see if I can develop a sensible discipline for it, much like the kind of exercises people do when they have to write OO-like code in C, or manage the memory of dynamic data structures) |
23:12 | <&[R]> | Gitlab moved from RoR to Go? |
23:14 | <&McMartin> | The "beauty" of microservices is that there's no need to maintain any coherency in your build tools from one module to the next! |
23:18 | <@TheWatcher> | [R]: no, it's using go. And RoR. And nodejs |
23:20 | <&[R]> | Ah |
23:20 | <&[R]> | Like how my work scripts are written in bash, nodejs, and xs |
23:21 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection closed] |
23:23 | | Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has quit [Ping timeout: 121 seconds] |
23:25 | <@TheWatcher> | The core web interface is RoR, gitlab-workhorse (which started as a proxy for http repo access and now does a bunch of things) is go, gitaly (RPC access to git repos) is go, gitlab shell is go (with bits of ruby for build), and on and on... |
23:25 | <@TheWatcher> | like I said, amorphous cloud of interlocking madness. |
--- Log closed Thu May 14 00:00:12 2020 |