code logs -> 2020 -> Wed, 13 May 2020< code.20200512.log - code.20200514.log >
--- 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
code logs -> 2020 -> Wed, 13 May 2020< code.20200512.log - code.20200514.log >

[ Latest log file ]