00:17:12 -!- oerjan has joined.
00:24:52 <oerjan> <Taneb> Girl Genius theory: the entire thing's going to be a shaggy dog story, with Agatha, Gil, and Tarvek being unable to claim their titles due to having died in Castle Heterodyne during the Si Vales Valeo procedure <-- only tarvek really needs to worry. gil never actually died, and agatha's title is decided by the castle, which already knows and doesn't care.
00:25:55 * oerjan @tells in private, just in case
00:26:03 <HackEso> dontaskdonttelllist: quintopia myname int-e
00:27:30 <oerjan> also there's the future detective story where agatha definitely rules mechanicsburg.
01:15:26 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:27:31 <zzo38> Is there something like OpenID but that does not require a web browser?
01:34:09 <zzo38> Now I am writing a document of a idea of it
01:48:32 -!- Sgeo_ has changed nick to Sgeo.
02:36:50 -!- mniip_ has joined.
02:41:07 -!- mniip has quit (Ping timeout: 620 seconds).
02:41:55 <esowiki> [[User talk:Calamari]] https://esolangs.org/w/index.php?diff=65442&oldid=65421 * Areallycoolusername * (+362) Asking Calamari for MS DOS clarification
02:44:08 -!- mniip_ has changed nick to mniip.
03:13:31 -!- xylochoron[m] has quit (*.net *.split).
03:13:34 -!- ^[ has quit (*.net *.split).
03:13:35 -!- lynn has quit (*.net *.split).
03:13:44 -!- ^[ has joined.
03:13:46 -!- lynn has joined.
03:14:47 -!- xylochoron[m] has joined.
03:15:13 -!- j-bot has quit (Ping timeout: 265 seconds).
03:33:48 <zzo38> http://zzo38computer.org/textfile/miscellaneous/openid_no_html
03:44:39 <esowiki> [[User talk:Calamari]] https://esolangs.org/w/index.php?diff=65443&oldid=65442 * Areallycoolusername * (+42) /* Issues With Page */
03:58:47 <zzo38> Oops! The rec.arts.int-fiction.mbox.zip file I found on archive.org does not quote lines beginning with "From " as it should.
04:07:06 <zzo38> At least it does not contain mangled email addresses, even though the data seems to come from Google.
04:22:03 -!- oerjan has quit (Quit: Nite).
04:31:39 <zzo38> Is it possible for a file in Linux to be both a dynamic library and also a stand-alone executable file, that it can fork/exec itself?
04:51:21 -!- adu has quit (Quit: adu).
05:25:22 -!- Sgeo_ has joined.
05:29:13 -!- Sgeo has quit (Ping timeout: 268 seconds).
06:28:26 -!- xkapastel has joined.
06:45:57 -!- heroux has joined.
06:50:34 -!- heroux has quit (Ping timeout: 246 seconds).
06:52:16 <esowiki> [[User:Gamer]] M https://esolangs.org/w/index.php?diff=65444&oldid=63564 * Gamer * (+2) /* Madbrain (Python 3) */
06:52:55 <esowiki> [[User:Gamer]] M https://esolangs.org/w/index.php?diff=65445&oldid=65444 * Gamer * (+1) /* Madbrain (Python 3) */
06:53:20 <esowiki> [[User:Gamer]] https://esolangs.org/w/index.php?diff=65446&oldid=65445 * Gamer * (-8) /* Madbrain (Python 3) */
06:54:10 <esowiki> [[User:Gamer]] https://esolangs.org/w/index.php?diff=65447&oldid=65446 * Gamer * (+6) /* Madbrain (Python 3) */
06:54:34 <esowiki> [[User:Gamer]] M https://esolangs.org/w/index.php?diff=65448&oldid=65447 * Gamer * (-1) /* Madbrain (Python 3) */
06:56:26 <zzo38> Now I wrote a program that provides a NNTP interface for downloading a single message from Google Groups if you know its message ID (the only supported command is ARTICLE with a message ID; you can't select newsgroups or do anything else), which can be used as a protocol extension for bystand. (Bystand has the ability to do NNTP communication with local programs.)
07:01:49 <Sgeo_> zzo38, write a program to convince Google to uncensor alt.hypertext so I can see Tim Berner-Lee's announcement
07:02:24 <Sgeo_> https://groups.google.com/forum/#!msg/alt.hypertext/eCTkkOoWTAY/urNMgHnS2gYJ
07:03:13 <Sgeo_> https://www.w3.org/People/Berners-Lee/1991/08/art-6484.txt
07:08:00 <Sgeo_> Apparently literally anyone can edit MDN https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Evolution_of_HTTP$compare?locale=en-US&to=1569093&from=1551070
07:12:04 <zzo38> I don't know how to convince Google to uncensor alt.hypertext, although if the message is readable anyways by the second URL, then you can read it anyways I think, isn't it?
07:13:55 <Sgeo_> I only found that second URL now, after I complained about Google's censorship
07:14:29 <Sgeo_> Or well, their destruction of valuable history
07:16:21 <zzo38> See if the Usenet archives on archive.org include the messages you want, maybe
07:17:02 <zzo38> (But know that some lines are not quoted properly in the mbox file.)
07:19:58 <zzo38> If you want, set up your own NNTP server with a copy of all messages you want to save.
07:23:06 <int-e> How did it go, "The price makes it a personal computer, the performance makes it a workstation, and the unit sales make it a mainframe."
07:25:46 <int-e> I don't really know what went wrong though. Not enough software?
07:41:05 -!- AnotherTest has joined.
07:42:28 <Sgeo_> int-e, what is that about, a specific computer?
07:42:35 <Sgeo_> Oh I didn't see your first line
07:46:38 <int-e> Sgeo_: That happens to me all the time. (missing context)
07:47:10 <int-e> Wow, go really hates unused things.
07:48:30 <int-e> I get the point but this is really annoying in explorative code.
07:51:47 -!- heroux has joined.
08:16:40 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
08:17:27 -!- Lord_of_Life has joined.
08:32:17 -!- andrewtheircer has joined.
08:34:55 -!- Sgeo_ has quit (Read error: Connection reset by peer).
08:35:23 -!- Sgeo_ has joined.
08:49:56 -!- andrewtheircer has quit (Remote host closed the connection).
08:51:25 -!- Sgeo_ has quit (Read error: Connection reset by peer).
08:51:50 -!- Sgeo_ has joined.
09:05:41 <int-e> shachaf: do you think http://paste.debian.net/1095332/ is a sane thing to do?
09:06:26 <int-e> (btw I'm not sure why they had to abandon the "while" keyword)
09:12:56 <int-e> merging generators of course.
09:15:59 <shachaf> Oh, you're asking whether the implementation is reasonable given the task (spawn a thread that reads from two channels and merges the values into an output channel).
09:17:22 <int-e> Partly. Partly I'm wondering whether using channels as lazy lists is sane.
09:18:07 <int-e> (I actually believe it may be sane in terms of incurred overhead, if I also use the buffering feature.)
09:18:33 <shachaf> I think that depends on your use of lazy lists.
09:19:06 <shachaf> Turning [1..n] into a channel to do an iterator thing is surely not reasonable.
09:19:58 <shachaf> Probably some uses could be OK? But they're not really the same thing.
09:26:05 <int-e> I'm toying with smooth numbers again... so a) they're not all that predictable and b) laziness comes up because I don't really know how far I will need them.
09:27:01 <int-e> So in a way I'm pondering a trade-off between boilerplate for explicit chunking and convenience.
09:28:00 <shachaf> I feel like introducing preemptive threads to emulate laziness is not a net gain.
09:28:27 <shachaf> But possibly it works for your case.
09:28:34 <shachaf> Since when are you using Go?
09:29:12 <int-e> Since today? I'm not sure "using" is the right word.
09:33:44 <int-e> interface{} ... hey, does that mean that they're fully embracing duck-typing?
09:34:29 <int-e> type Duck interface{ quack() }
09:36:25 <shachaf> Did you know Go does type-checking at runtime to generate vtables?
09:36:34 <shachaf> It does string comparison of interface method names and so on.
09:47:02 -!- xkapastel has quit (Quit: Connection closed for inactivity).
09:57:47 <shachaf> Also I'm barely keeping my eyes open so I'll go to sleep.
10:33:22 -!- Sgeo__ has joined.
10:36:56 -!- Sgeo_ has quit (Ping timeout: 268 seconds).
11:27:51 -!- Sgeo_ has joined.
11:31:25 -!- Sgeo__ has quit (Ping timeout: 276 seconds).
12:09:24 -!- Sgeo__ has joined.
12:13:01 -!- Sgeo_ has quit (Ping timeout: 276 seconds).
13:06:33 <int-e> Oh... let's define an interface... hmmm, interfaces need names... I know! Let's call the interface "Interface"! https://golang.org/pkg/sort/#Interface
13:51:19 -!- Sgeo_ has joined.
13:54:13 -!- Sgeo__ has quit (Ping timeout: 245 seconds).
14:23:33 <int-e> 6 hours later it dawns upon me that Go doesn't have generics... which is... fascinating.
14:25:11 <int-e> The solution seems to be a) interfaces; b) a perversion of the DRY principle (to wit: "DO repeat yourself") and c) reflection. The `sort` package features all of these.
14:28:03 <int-e> (sort.Float64s, sort.Ints, sort.Strings are repetitions of boilerplate code; Slice() takes an argument of type interface{} which is akin to `void *`, and does some reflection under the hood. And there's the aforementioned "Interface" interface that is used to drive the internal sort methods.)
14:38:40 -!- diverger has joined.
14:59:10 -!- Sgeo_ has quit (Ping timeout: 244 seconds).
15:08:47 -!- Sgeo has joined.
15:10:11 <fizzie> To be fair, for anything outside the sort package the name of the "Interface" interface is "sort.Interface", which isn't *that* silly.
15:10:19 <fizzie> The lack of generics is probably the most talked-about thing of the language.
15:11:11 <fizzie> There's a draft design for Go 2.0 generics, which is not yet a proposal, but a "starting point for discussion".
15:11:11 <int-e> I now have four code snippets that sort a slice of ints and I like none of them: sort.Ints(ps), sort.IntSlice(ps).Sort(), sort.Sort(sort.IntSlice(ps)), sort.Slice(ps, func (i, j int) bool { return ps[i] < ps[j] })
15:11:43 <fizzie> The "Summary of Go Generics Discussions" document is 22 pages.
15:11:44 <int-e> Mainly because I don't see *why* I have to tell anybody that it's a slice of ints at that point.
15:12:19 <int-e> and the sort.Slice() variant is a bit too verbose.
15:14:21 <fizzie> https://go.googlesource.com/proposal/+/master/design/go2draft-generics-overview.md https://go.googlesource.com/proposal/+/master/design/go2draft-contracts.md
15:14:23 <int-e> (And the sort.Slice() variant is also not overly type-safe, I can pass anything for 'ps' and get a runtime error if it's not a slice. This is alleviated by the fact that ps is repeated in the comparison function. On the downside, ps is repeated in the comparison function.)
15:16:57 <fizzie> I don't like any of those either, but I think I've used sort.Sort(sort.IntSlice(ps)) generally.
15:17:31 -!- Sgeo has quit (Ping timeout: 268 seconds).
15:19:42 <int-e> I'm happy that func SortSlice(data []T, less func(x, y T) bool) is one of the motivating examples in the first document :)
15:20:44 <fizzie> I think I picked sort.Sort(sort.IntSlice(ps)) so that it'd look consistent with a sort.Sort(foo.OtherKindOfSlice(qs)) call nearby.
15:21:08 <fizzie> (I guess I could've added a Sort() convenience method in OtherKindOfSlice too.)
15:21:45 -!- Sgeo has joined.
15:22:45 -!- Sgeo has quit (Read error: Connection reset by peer).
15:23:02 -!- Sgeo has joined.
15:24:15 <int-e> Why is it that C provides sort() and bsearch() but no merging function.
15:25:15 <int-e> (Which I guess is why Go does the same.)
16:17:11 -!- unlimiter has joined.
16:27:28 -!- unlimiter has quit (Quit: flushed).
16:30:41 <int-e> OUCH. primes := []int{2, 3, 5, 7, 9, 2147483647}
16:33:24 <int-e> (from the go language specification)
16:33:45 <esowiki> [[PAX16 CPU]] N https://esolangs.org/w/index.php?oldid=65449 * Areallycoolusername * (+888) Created page with "The '''PAX16''' computer, is a computer that runs using the PAX processor, made by [[User: Areallycoolusername|Areallycoolusername]]. The PAX processor uses an esolang called..."
16:33:58 <esowiki> [[PAX16 CPU]] https://esolangs.org/w/index.php?diff=65450&oldid=65449 * Areallycoolusername * (-2) /* Specifics */
17:06:45 -!- xkapastel has joined.
17:09:58 <esowiki> [[Deadfish]] https://esolangs.org/w/index.php?diff=65451&oldid=64612 * Areallycoolusername * (+381)
17:12:40 <esowiki> [[Deadfish]] https://esolangs.org/w/index.php?diff=65452&oldid=65451 * Areallycoolusername * (+0) /* Html/Javascript Simplified */
17:18:20 <fizzie> Heh, I completely skipped over the 9.
17:19:17 <Sgeo> I didn't know Karsten Koch's Blue Valley was a module
17:23:52 <int-e> fizzie: yeah I do recognize that particular Mersenne prime :)
18:10:31 -!- Phantom_Hoover has joined.
18:16:34 -!- unlimiter has joined.
18:21:56 <zzo38> Do you like my idea of monads in JavaScript? I have just made one mistake, which is, that if you write "return" without writing "return yield" then it is necessary to define the value of the return, such as by writing: listMonad.return=x=>[x]; If you write "return yield" then it does not need that. (If you want it to use the .return function anyways, then you can add parentheses.)
18:26:47 <rain2> instead of monads how about delimited continuations
18:27:20 <rain2> then we don't need to write in do notation
18:43:16 <zzo38> Yes, you could use delimited continuations
18:50:10 <zzo38> Although, one of the points of the idea I wrote is that you can capture a state that you can then rewind later.
18:51:13 <zzo38> (This is not shown in the example I provided)
19:32:55 -!- grumble has quit (Quit: inside we both know what's been going on, we know the game and we're gonna play it).
19:40:00 -!- grumble has joined.
19:50:01 -!- AnotherTest has quit (Ping timeout: 246 seconds).
19:57:39 <zzo38> Also, do you know if there is a MIME type for bbcode?
19:59:32 <zzo38> (It would be helpful if you want to integrate NNTP with some web forum software. I have also seen suggested to use Markdown; this has some advantages, such as easier to read as plain text if you do not have a Markdown renderer, and also there is a MIME type for Markdown defined; however, a lot of web forum software is not using Markdown.)
20:12:26 -!- unlimiter has quit (Quit: took a pill).
20:14:11 -!- Lord_of_Life_ has joined.
20:17:39 -!- Lord_of_Life has quit (Ping timeout: 248 seconds).
20:17:42 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
20:20:03 -!- b_jonas has joined.
20:42:09 -!- xkapastel has quit (Quit: Connection closed for inactivity).
20:51:15 <int-e> Hmm, more small things... go has no min() and max() functions for integers either.
20:59:38 <fizzie> Yes. Maybe another odd omission somehow copied over from C?
21:04:02 -!- AnotherTest has joined.
21:17:55 -!- AnotherTest has quit (Ping timeout: 248 seconds).
21:31:48 -!- xkapastel has joined.
21:41:17 -!- atslash has joined.
21:45:15 -!- AnotherTest has joined.
21:52:10 -!- AnotherTest has quit (Ping timeout: 276 seconds).
23:00:11 -!- Phantom_Hoover has quit (Remote host closed the connection).
23:22:15 -!- b_jonas has quit (Remote host closed the connection).