00:00:37 -!- oerjan has joined.
00:05:08 -!- heroux has quit (Ping timeout: 260 seconds).
00:09:41 -!- izabera has changed nick to ziapia.
00:18:35 -!- ziapia has changed nick to izabera.
00:20:54 -!- heroux has joined.
00:22:59 <HackEgo> 1/1:tomfoolery//tomfoolery is always factually inaccurate. always. \ mk//Everything's better with `mk. \ Я//Я is the 9th letter of the hsilgnE alphabet \ ping//Ping is a Peking Duck H4XX0R who amuses himself by making people's IRC connections timeout. \ alogl//ALOGL is a logarithmic language.
00:26:05 -!- augur has quit (Remote host closed the connection).
00:32:43 * oerjan slightly tempted to revert, although not many people use `tomfoolery
00:42:31 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
00:58:56 -!- imode has joined.
01:24:31 <HackEgo> quintopia is our resident tl;dr generator. He is flooded by thundercats and thunderdogs. He is the temporal antipode of boily despite living on the same continent.
01:24:57 <HackEgo> “Only sane adverb” boily is monetizing a brotherhood scheme with the Guardian of Lachine, apparently involving cookie dealing. He is also a NaniDispenser, a Trigotillectomic Groan Man Eating Chicken, a METARologist, seriously lacking in the f-word department, a thwack doctor, and a renowned Capitalist who helps keep the world boring.
01:25:38 <boily> `slwd boily//s/doctor,/doctor, a Quintopial antipodist,/
01:25:39 <HackEgo> boily//“Only sane adverb” boily is monetizing a brotherhood scheme with the Guardian of Lachine, apparently involving cookie dealing. He is also a NaniDispenser, a Trigotillectomic Groan Man Eating Chicken, a METARologist, seriously lacking in the f-word department, a thwack doctor, a Quintopial antipodist, and a renowned Capitalist who helps k
01:26:12 <boily> `slwd boily//s/, apparently involving cookie dealing//
01:26:13 <HackEgo> boily//“Only sane adverb” boily is monetizing a brotherhood scheme with the Guardian of Lachine. He is also a NaniDispenser, a Trigotillectomic Groan Man Eating Chicken, a METARologist, seriously lacking in the f-word department, a thwack doctor, a Quintopial antipodist, and a renowned Capitalist who helps keep the world boring.
01:28:37 -!- hppavilion[1] has joined.
01:30:49 * boily lightly, acupuncturically mapoles hppavilion[1]
01:32:45 <boily> eille! no knifing, unless for cooking!
01:32:51 <boily> and no, I'm not edible, only sane.
01:40:50 <shachaf> I read in a book that "sane" means "safe".
01:41:39 <boily> hmm... I'd guess I'm pretty much safe?
01:45:07 -!- ais523 has joined.
01:47:21 <quintopia> does my short wisdom entry indicate that i am less fully vested here than others?
01:47:53 <ais523> IMO, the best thing to do with wisdom is ignore it
01:48:37 <ais523> `addquote <ais523> IMO, the best thing to do with wisdom is ignore it
01:48:38 <HackEgo> 1314) <ais523> IMO, the best thing to do with wisdom is ignore it
01:48:48 <ais523> although don't do it again now that it's been done once
01:48:58 <ais523> also, I didn't realise how profound it was until I saw it in quote form
01:49:00 <quintopia> yeah but you know i'll forget it by the time i think to do it again
01:49:20 <oerjan> ais523 is not a connoiseur of wisdom.
01:49:35 <oerjan> and no longer of PPCG, it seems. chopping off some hobbies?
01:49:38 <HackEgo> 485) <elliott> Deewiant: How do you go through life without seeing at least one gaping anus, that's what I want to know
01:49:44 <ais523> that's not the one I wanted
01:49:51 <HackEgo> 133) <alise> Why do you use random acronyms you know we don't know the expansions of? <pikhq> alise: TLAAW \ 314) <zzo38> I figured out something about C program. If you use ? : a lot then you don't need as much parentheses but it makes it more difficult to understand. \ 495) <CakeProphet> monqy: help how do I use lambdabot to send messages to peo
01:49:58 <HackEgo> 495) <CakeProphet> monqy: help how do I use lambdabot to send messages to people. [...around half an hour later...] <CakeProphet> @messages <lambdabot> quicksilver said 1y 2m 18d 19h 54m 29s ago: you use @tell
01:50:02 <ais523> there, that's the one I wanted
01:50:14 <ais523> oerjan: I really /really/ hate Stack Exchange
01:50:30 <ais523> I kind-of reluctantly moved there because that's where the codegolfing was
01:50:41 <quintopia> that's pretty hilarious. too bad i missed that
01:50:45 <ais523> and although PPCG's community is great, Stack Exchange is sufficiently bad that I was starting to resent code golf by association
01:50:50 <oerjan> . o O ( is chopping off hobbies a hydra-like activity? )
01:51:12 <ais523> I wasn't enjoying myself at all, it was something of negative addiction cycle towards the end
01:51:27 <ais523> quintopia: the incentives are all wrong
01:51:49 <ais523> in particular, the fact that answers with more votes have more visibility, thus more votes, means that getting a vote lead early is the main thing that controls how much reputation you'll get
01:51:55 <ais523> and the site puts huge emphasis on reputation
01:52:04 <ais523> then when you actually get it, it actually makes the site experience worse rather than better
01:52:14 <oerjan> <ais523> that's not the one I wanted <-- or anyone, really.
01:52:53 <HackEgo> *poof* <elliott> Deewiant: How do you go through life without seeing at least one gaping anus, that's what I want to know
01:53:06 <quintopia> well, i mostly ignore the parts of SE outside PPCG, where those things mostly don't apply
01:54:07 <ais523> it applies even on PPCG, because if you go to the people who can actually change the site software to, e.g., report a bug that disproportionately affects PPCG
01:54:11 <ais523> they just tell you you're using the site wrong
01:54:49 <quintopia> well, no one ever claimed SE was well-supported :P
01:55:24 <ais523> this is a particularly bad example of an SE bug that should be trivial to fix (given that it just involves removing a misfeature), and frequently affects newbies at PPCG: https://meta.stackexchange.com/q/276269
01:56:16 <ais523> but in general, none of the features of the Stack Exchange software actually work for their intended purpose (this is particularly noticeable at PPCG but true elsewhere, too)
01:56:30 <ais523> when a feature does turn out to be useful, it's because it's being used in a way contrary to the official recommendations
01:58:52 <quintopia> i have thought on many occasions that moving the PPCG community to more code golf friendly software (that still keeps what /does/ work well at SE) would improve the community
01:59:55 <ais523> the top two features that PPCG has and most golf sites don't have are: a) the ability to add an explanation along with the code; b) an ability to comment on other people's code
02:00:12 <ais523> that way, it's actually possible to have some sort of workable communication between the people golfing and the people appreciating the results
02:00:32 <quintopia> and c) the ability to redirect comment threads to group chats
02:00:39 <ais523> note that the use of SE's comment system for b) is actually banned according to the comment policy but everyone ignores that
02:00:51 <ais523> quintopia: no, that does more harm than good in several ways the way it's currently implemented
02:01:18 <ais523> and also requires subsequent moderator action in 90% of the cases where it's triggered, either intentionally or accidentally
02:01:36 <quintopia> i've only seen it done intentionally
02:01:40 <ais523> if I'm having a productive conversation about improving a post, directing it to chat is probably a mistake, because you want it attached to the post (and can clean it up later)
02:02:00 <ais523> OTOH, if it's a case where one person is being unreasonable and other people are arguing with them, the conversation is probably better off not happening at all
02:02:04 <quintopia> yeah, having (hidden) attached comment threads would be a better solution
02:02:24 <quintopia> but i like the idea of being able to coerce people into live chats somehow
02:02:52 <quintopia> at the least, the ability to link to a live chat that opens in the browser
02:03:01 <ais523> yes, ability to link to chat is very helpful
02:04:31 <ais523> but just doing it with an actual regular link is much better than the autolink
02:04:49 <ais523> in fact, the autolink works more than once and IIRC creates a new chat room each time
02:05:24 <quintopia> if we take those few features, add anagolf like automatic code testing and scoring, add en /entire forum/ for challenge sandboxing instead of one stupid overgrown thread...
02:05:40 <quintopia> i didn't know there was an autolink
02:05:49 <quintopia> like i said, i've only ever seen it done intentionally
02:07:53 <ais523> quintopia: it comes up every time you try to add a comment
02:08:20 <ais523> also the created chat room has no owners and no way to add any, which is a problem in its own right (and there's a trivial solution, making it the OP of the relevant post, that hasn't been implemented)
02:13:33 <ais523> that said, I have had thoughts about what an optimal golfing site would look like
02:19:59 -!- augur has joined.
02:25:54 -!- boily has quit (Quit: ROGUE CHICKEN).
02:41:23 <doesthiswork> could you document what the optimal golfing site would look like?
02:41:58 <oerjan> . o O ( just keep it as brief as possible )
02:42:45 <ais523> first, and most importantly, you have some sort of system to keep out spambots
02:43:20 <ais523> ideally, this should be requiring actual golf entries to recently-posted problems to be submitted that are at least decently competitive
02:43:34 <ais523> as that proves that people understand what the site is about, and will also help repel human-aided spambot farms
02:44:20 <ais523> once you're sure that there's no sort of automated attack going on, that then allows you to let people express opinions without worrying about the system being flooded
02:44:40 <ais523> then, you let people write up golfing problems, with some sort of "automatic marking"
02:45:08 <ais523> I think you express the specification in the form of a set of possible inputs (which could be infinite), and a program (that isn't necessarily golfed, and in fact probably shouldn't be, i.e. it should be as clear as possible)
02:45:46 <ais523> then an answer is correct if it gives the same answers as the program (tested on some manually given test cases + some randomly selected ones); you have a recheck feature which allows people to give counterexamples to other people's programs
02:46:27 <ais523> all submissions to a problem, and all problems, should be categorisable with tags, and people should be able to tag each other's answers
02:46:54 <ais523> and people should be able to attach commentary to problems and submissions (whether it's explanations, feedback, or something else; keep it decently freeform)
03:05:01 <ais523> I think there should be some way to improve problems after they're posted, perhaps by marking the problem as provisional for a set period, and allowing wiki-style edits to it (which invalidate any answers that violate the new spec)
03:06:57 <ais523> incidentally, when I left PPCG, I was sent a number of messages by Stack Exchange staff that were worded to look like they were concerned about my reasons for leaving, but which (from the way they were worded) were clearly written without actually having read my stated reasons
03:07:26 <ais523> so I'm assuming they were just boilerplate misleadingly written to imply that they cared about what people thought about the site
03:12:06 <ais523> meanwhile, the actual PPCG community listened to my concerns (and largely agreed with them), but I think they're powerless to fix the fundamental issues with the site software
03:14:06 <ais523> oh, one other thing is related to I/O; I think each challenge would specify the inputs and outputs using a well-known format (probably JSON), but each language would have a "default boilerplate" that went and decoded/encoded the JSON into whatever form was most convenient for the language, and that doesn't count against the byte count
03:14:29 <ais523> so in most cases, what you'd actually submit would be a function body, or the language's closest equivalent to that
03:15:48 <ais523> this would end all the arguments that you get in individual questions about which I/O formats are acceptable, and change them into a more centralised question about which I/O formats are most suitable for each given language
03:15:54 <ais523> which only has to be argued once per language, not once per challenge
03:17:12 <ais523> oh, for non-golf challenges, you should also have the option of specifying a scoring function
03:17:35 <ais523> another useful feature (which no golfing site has yet that I'm aware of) would be an auto-encoding feature, where you enter your program in whatever encoding is most convenient for working on the program
03:17:46 <ais523> but the site automatically works out the best possible encoding of that that works in the language
03:18:13 <ais523> for example, you could type Jelly using Unicode (which is normally easier), but have that automatically transcoded to Jelly's character set (which is more compact in terms of the number of octets needed)
03:22:11 <ais523> something I'm torn on is efficiency: should we require the answers to run within, say, a factor of 10 of the model answer? one approach I see is separate leaderboards for answers that do and answers that don't
03:22:46 <ais523> meaning that there are two golf competitions at once (the shortest answer, and the shortest answer that uses an algorithm that isn't considerably slower than that of the model answer)
03:29:04 <doesthiswork> is it possible to dispute a tag on someone's answer?
03:31:31 <ais523> I have a system in mind where tags are voted up and down, but with hysteresis
03:31:53 <ais523> something like "a score of +3 for a tag adds it, a score of -3 removes it, votes change the score by 1 point, the OP sets the original status"
03:33:13 -!- hppavilion[1] has quit (Ping timeout: 255 seconds).
03:33:54 <doesthiswork> how do you express the infinite set of inputs?
03:34:58 -!- kmc_ has quit (Remote host closed the connection).
03:40:50 -!- augur has quit (Remote host closed the connection).
03:41:25 -!- augur has joined.
03:45:53 -!- augur has quit (Ping timeout: 248 seconds).
03:52:09 -!- augur has joined.
04:30:52 -!- Slereah__ has joined.
04:32:30 -!- Slereah has quit (Ping timeout: 240 seconds).
04:41:38 -!- ais523 has quit (Read error: Connection reset by peer).
04:41:47 -!- ais523 has joined.
04:49:25 -!- MrBismuth has quit (Ping timeout: 246 seconds).
04:55:07 -!- oerjan has quit (Quit: Nite).
05:22:59 <Jafet> do you know what killer feature the stackexchange site has over yours
05:24:31 <HackEgo> 801) <Jafet> I wonder if Red Alert 4 will use MMIX
05:25:17 <Jafet> (it didn't, sadly)
05:25:20 <HackEgo> 1/1:801) <Jafet> I wonder if Red Alert 4 will use MMIX \ 1020) <Jafet> Is there a debian package for making lousy debian forks \ 1243) <Jafet> Some people, when confronted with a problem, think "I know, I'll use the Banach-Tarski theorem."
05:25:49 <shachaf> Are there any good RTS games lately?
05:26:57 <Jafet> does eu4 qualify as an rts?
05:28:36 <shachaf> I don't know eu4. What is wps?
05:33:18 <Jafet> “well played sir”; wp is “with pause” though
05:33:31 -!- MrBismuth has joined.
05:36:01 <Jafet> also I don't know how the pausing works in multiplayer
06:03:48 -!- hppavilion[1] has joined.
06:09:01 -!- PinealGlandOptic has quit (Quit: leaving).
06:21:06 -!- GeekDude has quit (Ping timeout: 255 seconds).
06:27:07 -!- erkin has joined.
06:35:28 -!- sleffy has quit (Ping timeout: 255 seconds).
06:36:18 -!- GeekDude has joined.
06:38:16 <ais523> Jafet: most real-time strategy games are with-pause in single player but not multiplayer
06:44:56 <Jafet> well, with-pause usually implies that you can perform game actions during the pause
06:45:18 <Jafet> (other than “save”, “load”, and “flee to windows“)
06:47:16 <Jafet> anyway, videos of eu4 show that pausing in multiplayer is possible
07:00:15 -!- FreeFull has quit.
07:01:48 <HackEgo> [wiki] [[Ly]] https://esolangs.org/w/index.php?diff=52463&oldid=52459 * LyricLy * (+159)
07:03:35 <HackEgo> [wiki] [[Ly]] https://esolangs.org/w/index.php?diff=52464&oldid=52463 * LyricLy * (+148)
07:03:47 <HackEgo> [wiki] [[Ly]] https://esolangs.org/w/index.php?diff=52465&oldid=52464 * LyricLy * (+8)
07:19:57 -!- ais523 has quit.
07:20:25 <HackEgo> 1/2:comonad//Comonads are just monads in the dual category. They are hard to get into. \ third law of thermodynamics//The third law of thermodynamics says that Taneb cannot reach absolute zero. \ antarctica//There's no such country as Antarctica. \ thyme//Thyme itself is only an abstract approximation of oregano. \ gaszpacho//gaszpacho is a polish
07:20:28 <HackEgo> 2/2:soup, traditionally szerved cold for hot szummer days
07:20:45 <shachaf> Are comonads really that hard to get into?
07:20:58 <shachaf> I was into comonads before they were ol.
07:39:16 -!- erkin has quit (Quit: Ouch! Got SIGABRT, dying...).
08:05:39 -!- augur has quit (Remote host closed the connection).
08:10:53 -!- imode has quit (Quit: WeeChat 1.9).
08:11:10 -!- imode has joined.
08:21:11 -!- AnotherTest has joined.
08:34:06 -!- augur has joined.
08:38:46 -!- augur has quit (Ping timeout: 255 seconds).
09:01:49 -!- erkin has joined.
09:13:58 -!- imode has quit (Ping timeout: 276 seconds).
10:10:26 -!- Slereah has joined.
10:12:05 -!- Slereah__ has quit (Ping timeout: 240 seconds).
10:26:07 <Jafet> making it is easy, like monoids
10:29:02 <HackEgo> Monoids are just categories with single objects.
10:29:42 <shachaf> all the single objects / all the single objects
10:29:56 <shachaf> What kind of joke is like comonoids?
11:05:59 <Cale> shachaf: There's usually only one joke of that sort up to isomorphism anyway, so nobody makes it.
11:07:55 <doesthiswork> I think the channel should publish a coffee-table joke book
11:09:09 <doesthiswork> because even though that joke was very simple, it made me laugh
11:14:21 <shachaf> Cale: There's only one complete ordered field up to isomorphism, but people keep making it.
11:14:39 <HackEgo> [wiki] [[User:Challenger5]] https://esolangs.org/w/index.php?diff=52466&oldid=52018 * Challenger5 * (+30)
11:15:04 <HackEgo> [wiki] [[User:Challenger5]] https://esolangs.org/w/index.php?diff=52467&oldid=52466 * Challenger5 * (+1)
11:24:28 -!- erkin has quit (Quit: Ouch! Got SIGABRT, dying...).
11:34:11 -!- boily has joined.
11:48:10 -!- erkin has joined.
12:06:51 -!- doesthiswork has quit (Quit: Leaving.).
12:07:30 -!- erkin has quit (Quit: Ouch! Got SIGABRT, dying...).
12:28:50 -!- boily has quit (Quit: PORE CHICKEN).
13:46:11 -!- erkin has joined.
14:00:31 -!- doesthiswork has joined.
14:38:55 -!- `^_^v has joined.
14:58:53 -!- idris-bot has quit (Quit: Terminated).
15:00:57 -!- Melvar has quit (Quit: thunderstorm).
15:24:32 -!- Slereah__ has joined.
15:26:28 -!- Slereah has quit (Ping timeout: 255 seconds).
15:56:05 -!- erkin has quit (Quit: Ouch! Got SIGABRT, dying...).
15:56:36 -!- wob_jonas has joined.
15:57:16 <wob_jonas> Could someone please point me to that article about how to achieve mutable state during compile time in C++ by using friend function declarations in template class definition bodies?
15:57:31 <wob_jonas> I'm trying to use it for eso purposes only, not for production stuff, I swear
16:00:07 <wob_jonas> I can find a lot of references to that stuff, but not the original article that explains the trick.
16:00:14 <wob_jonas> Oh well, I might be able to use those derivatives.
16:07:19 <wob_jonas> found it: https://web.archive.org/web/20161217033223/http://b.atch.se/posts/non-constant-constant-expressions/
16:14:18 <Jafet> trying to find a use, you mean?
16:15:44 <wob_jonas> no, I have a potential eso-use already (which might or might not actually work, I have to understand more about C++ to figure out), I'm trying to learn how the technique works now
16:16:19 <wob_jonas> also apparently there are followup blog posts, but they're hard to find, since I can access the original blog post only through archive.com too
16:17:41 <wob_jonas> https://web.archive.org/web/20161217232535/http://b.atch.se/posts/constexpr-counter/ is the second part I beleive
16:17:44 <wob_jonas> but I'm not sure if there's a third part
16:18:17 <wob_jonas> https://web.archive.org/web/20161217033218/http://b.atch.se:80/posts/constexpr-meta-container/ is the third one
16:19:28 <wob_jonas> and it says "The upcoming post, in this series, will talk about other techniques [... than] the friend-injection technique [...], how the Standard could potentially make the techniques (plural) ill-formed, and the implications of such potential outcome."
16:27:29 <wob_jonas> in fact, I think I need only a little crumb of that technique
16:44:10 -!- Slereah has joined.
16:45:37 -!- Slereah__ has quit (Ping timeout: 248 seconds).
16:58:01 -!- Melvar has joined.
17:03:17 -!- idris-bot has joined.
17:04:47 -!- imode has joined.
17:10:52 -!- AnotherTest has quit (Ping timeout: 255 seconds).
17:11:11 -!- \a\a\a has joined.
17:19:05 <doesthiswork> I just got paid $20 to talk about fanfiction forums for an hour
17:20:38 -!- imode has quit (Quit: WeeChat 1.9).
17:20:53 -!- imode has joined.
17:26:08 -!- imode has quit (Quit: WeeChat 1.9).
17:26:22 -!- imode has joined.
17:28:43 -!- FreeFull has joined.
17:45:46 <HackEgo> [wiki] [[Mutable compile-time state in C++]] N https://esolangs.org/w/index.php?oldid=52468 * B jonas * (+1139) Created page with "In C++, constexpr functions are supposed to be pure functions in the Haskell sense: deterministic (the return value is a mathematical function of the arguments) and without si..."
17:51:59 <HackEgo> [wiki] [[Mutable compile-time state in C++]] https://esolangs.org/w/index.php?diff=52469&oldid=52468 * B jonas * (+50)
18:01:45 -!- hppavilion[1] has quit (Ping timeout: 255 seconds).
18:20:22 <Jafet> “Disclaimer: The technique described in this post is primarily meant as "just another clever hack, diving into the dark corners of C++".” — isn't this half of what c++ is
18:21:22 <shachaf> You are in a maze of dark little corners, all different.
18:21:44 <shachaf> What sort of architectural style maximizes corners?
18:21:44 <Jafet> if wg21 wasn't going to nuke it, I could have seen meta_list.hpp coming to your local boost library this autumn
18:24:13 <Jafet> I've heard that the hilbert hotel has lots of corners, despite fitting snugly in a unit square
18:24:30 <Jafet> that must be how they get an infinite number of rooms in
18:24:43 <shachaf> I thought it had infinite volume?
18:25:36 <Jafet> might have been a four-dimensional square
18:31:22 -!- hppavilion[1] has joined.
18:39:43 <HackEgo> Cubes come in all sizes, colors, and materials, but only one shape. The companion cube does not speak, however.
18:49:13 -!- cim4 has joined.
18:55:58 -!- sleffy has joined.
18:56:37 -!- cim4 has left ("Leaving...").
18:58:19 -!- impomatic has joined.
19:07:08 -!- augur has joined.
19:07:58 -!- DHeadshot has joined.
19:14:15 <HackEgo> [wiki] [[Special:Log/newusers]] create * Hydrogenn * New user account
19:14:34 -!- sleffy has quit (Ping timeout: 276 seconds).
19:19:41 -!- Slereah__ has joined.
19:19:54 <HackEgo> [wiki] [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=52470&oldid=52460 * Hydrogenn * (+181) Added my signature.
19:21:21 -!- Slereah has quit (Ping timeout: 248 seconds).
19:25:18 -!- sleffy has joined.
19:30:51 -!- u_nuSLASHkm8 has joined.
19:33:00 -!- u_nuSLASHkm8 has left.
19:42:53 -!- DHeadshot has quit (Ping timeout: 260 seconds).
19:55:29 -!- Slereah has joined.
19:55:59 -!- Slereah__ has quit (Ping timeout: 240 seconds).
19:56:24 <HackEgo> 504) <fungot> elliott: mr president, commissioner, i fully accept that description when it comes to human rights. yes, with an average fat content of chocolate, and we are using double standards! we all know that under present legislation and also in relation to standardization bodies. if i do not want.
19:59:59 -!- MDude has quit (Remote host closed the connection).
20:01:10 <HackEgo> frenemy:Frenemy is the relationship between Kirby and king Dee Dee. \ schaf:"Schaf" is german for "sheep". There is absolutely no relation to shachaf. \ vi:vi is in a relationship with emacs.
20:08:12 -!- DHeadshot has joined.
20:14:30 <Jafet> are they frenemies?
20:14:49 -!- sleffy has quit (Ping timeout: 246 seconds).
20:20:19 <\oren\> warning: This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated.
20:21:18 <\oren\> how in the fuk is a hash map deprecated
20:21:43 <HackEgo> [wiki] [[BitP]] N https://esolangs.org/w/index.php?oldid=52471 * Hydrogenn * (+4813) Added BitP
20:23:47 <int-e> <hash_map> is deprecated and will be REMOVED. Please use <unordered_map>
20:25:00 <\oren\> GAH, they just renamed it HWY!
20:26:10 -!- Slereah__ has joined.
20:26:33 <\oren\> if it doesn't have to be a hash then why does unordered_map still have an hash_function () method in it!?!?!?
20:26:55 <int-e> not quite; from what I can see, hash_map was never standard C++
20:27:10 <HackEgo> [wiki] [[BitP]] https://esolangs.org/w/index.php?diff=52472&oldid=52471 * Hydrogenn * (+255)
20:27:25 <int-e> and unordered_map *is* a hashtable, by its description
20:27:40 -!- Slereah has quit (Ping timeout: 260 seconds).
20:27:50 <\oren\> it's a STUPID name made by AHOLES
20:28:52 <HackEgo> [wiki] [[BitP]] https://esolangs.org/w/index.php?diff=52473&oldid=52472 * Hydrogenn * (-1) Fixed the table
20:29:25 <HackEgo> [wiki] [[BitP]] https://esolangs.org/w/index.php?diff=52474&oldid=52473 * Hydrogenn * (+77)
20:29:32 <int-e> presumably what happened was that the C++ standards committee didn't like a few aspects of MS's implementation and then chose a different name so that code wouldn't just break.
20:29:49 <int-e> s/implementation/interface/
20:42:41 -!- tinyurl_comSLASH has joined.
20:44:09 -!- tinyurl_comSLASH has left.
20:46:57 <impomatic> Hmmm... how fast would a typical bit-by-bit square root algorithm be in big-O? Like this https://pastebin.com/22xXieff
20:47:31 <impomatic> O(n) I assume, because the number of iterations is proportional to the number of bits?
20:50:22 <wob_jonas> I'll try to write an implementation for the esolang I'm making
21:25:33 -!- Phantom_Hoover has joined.
21:29:10 -!- DHeadshot has quit (Ping timeout: 255 seconds).
21:34:28 <Slereah__> Ten years ago I did a python interpreter for one of my esolang
21:34:40 <Slereah__> I really wish I left comments and used better variables
21:39:56 -!- AnotherTest has joined.
21:40:53 -!- MrBismuth has quit (Quit: https://www.youtube.com/watch?v=xIIqYqtR1lY -- Suicide is Painless - Johnny Mandel).
22:07:52 -!- hppavilion[1] has quit (Ping timeout: 255 seconds).
22:09:12 <HackEgo> 1/2:advertisement//Advertisement starts: have you heard about this hip and froopy 'net place called #esoteric? It is on freenode. Brought to you by The Board of Timeskewed Advertiesements. \ cloud//The cloud is a server Blackhat guy runs, connected to the internet through a cable modem. There's a lot of caching. Cloud is also the shape of clouds. \
22:09:15 <HackEgo> 2/2: phở//Phở là một món ăn truyền thống của Việt Nam, cũng có thể xem là một trong những món ăn đặc trưng nhất cho ẩm thực Việt Nam. \ java//Java is a programming-language shaped collection of misfeatures. \ chthonic//Chthonic lithping can be vethy dithturbing to lithten to.
22:11:19 <HackEgo> 8474:2016-06-13 <oerjän> sled wisdom/java//s/./J/;s/$/./ \ 5604:2015-06-17 <coppr̈o> learn java is a programming-language shaped collection of misfeatures
22:11:56 <shachaf> alercah: Which misfeatures does Java have?
22:12:50 <int-e> what does alercah have to do with coppro, hmm.
22:13:36 <int-e> alercah: last 5 lines
22:13:57 <alercah> oh I missed the quote line
22:14:26 <alercah> - everything needs to be in a class
22:15:01 <shachaf> - covariant mutable arrays
22:15:04 <int-e> shachaf: how about the limitation of string constants to 64k bytes UTF-8..., objects to 64k methods, methods to 64kb bytecode...
22:15:14 <shachaf> http://slbkbs.org/fluids.jpg
22:15:41 <shachaf> int-e: Java string constants are in UTF-8? I thought everything was UTF-16.
22:16:26 <int-e> yes, they're UTF-8
22:17:10 <int-e> the 64kb bytecode thing may seem harmless until you realize that when you declare a large constant array, you actually get a final array variable plus bytecode that fills in the elements one by one.
22:18:09 <int-e> And none of this will ever change because that would break all "bytecode enhancers" in existence :P
22:18:38 <int-e> So... in a way... custom classloaders are a misfeature because they've been abused quite terribly.
22:21:04 <int-e> Anyway, I have not seriously touched Java in the last 20 years (though I have seen glimpses of language improvements like generics and other additions like enums) ... I would complain about the awful standard library but this may have improved.
22:21:26 <int-e> hmm, 20 is a bit too high, make that 18
22:21:44 <alercah> type erasure in generics is another great one
22:22:00 <int-e> oh misfeature, yes it is...
22:22:36 <int-e> ...getting run-time type checks for something that the compiler *should* have checked already.
22:22:49 <alercah> what run-time type checks?
22:22:58 <alercah> oh when you extract things, yes
22:23:09 <int-e> when a generic container is compiled you get a compiler of obects
22:24:17 <int-e> and there's no way type safety can be ensured on the bytecode level despite the compiler having checked the types... so... there still has to be a runtime check.
22:39:22 -!- `^_^v has quit (Quit: This computer has gone to sleep).
22:42:36 -!- tswett has joined.
22:42:45 <tswett> I want to talk about theories, doctrines, and logics.
22:43:23 <tswett> The motivating example here is that the concept of a finite limit category is "self-supporting", in a particular way.
22:43:57 <tswett> The axioms defining the concept "finite limit category" are also a presentation of a particular finite limit category.
22:44:26 <tswett> This is not true of, say, the concept of a group.
22:44:43 <tswett> The axioms defining the concept "group" are a presentation of a finite product category, but they are not a presentation of a group.
22:46:48 <tswett> So, I'm going to use the word "variety" to mean "a type of algebraic structure". So, for example, groups are a variety, categories are a variety, FLCs are a variety.
22:47:49 <tswett> Actually, I'm going to call that a "theory" instead. Sorry for the bait-and-switch.
22:47:56 <tswett> Groups are a theory, categories are a theory, FLCs are a theory.
22:48:34 <tswett> Each theory has a corresponding concept of a "presentation": groups have presentations, categories have presentations, FLCs have presentations, blah blah blah.
22:48:47 <tswett> A presentation is a collection of generators.
22:50:48 <tswett> Now, each theory has a collection of axioms. The axioms, I guess, have some influence over what the presentations can look like.
22:51:07 <tswett> You can't take a presentation of a category and treat it as being a presentation of a group.
22:51:15 <tswett> And then, we have the kicker...
22:51:29 <tswett> Theories are presentations, and their axioms are their generators.
22:51:48 -!- doesthiswork has quit (Quit: Leaving.).
22:51:54 <tswett> Any presentation, of course, belongs to another theory.
22:52:04 -!- impomatic has quit (Ping timeout: 268 seconds).
22:52:43 <tswett> So, the theory of groups is a presentation belonging to the theory of FPCs.
22:52:58 <tswett> The theory of FPCs is a presentation belonging to the theory of FLCs. The theory of FLCs is a presentation belonging to the theory of FLCs.
22:53:11 <tswett> And we've found a fixed point. :D
22:54:32 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
22:54:59 <tswett> On nLab, they call the "theory of a theory" a doctrine.
22:55:16 <tswett> How long can I keep the monologue going before someone else speaks? :D
22:56:28 -!- AnotherTest has quit (Ping timeout: 255 seconds).
23:06:45 <tswett> Let me compare the theory of groups to the theory of real numbers.
23:07:25 <tswett> The theory of groups has axioms such as "there exists an 'identity' element e" and "the operation is associative".
23:08:15 <tswett> These axioms are the generators of a finite product category.
23:08:57 <tswett> The theory of real numbers has axioms such as "every non-empty, bounded set of numbers has a least upper bound".
23:09:07 <tswett> These axioms are axioms of second-order logic.
23:11:46 <tswett> The theory of groups has an interesting property. Namely, every presentation satisfying the theory of groups (every group presentation) has models.
23:11:59 <tswett> In fact, every group presentation defines one particular model.
23:12:50 <tswett> Which we just call the group presented by that presentation.
23:13:21 <tswett> It's not the *only* model consistent with the presentation, though.
23:14:06 <tswett> What it is, is... let me think, here.
23:14:30 <tswett> There's a category of groups (aka the category of models of the theory of groups).
23:14:33 -!- DHeadshot has joined.
23:15:34 <tswett> Suppose I have some particular group presentation, P.
23:15:53 <tswett> Then there's also a category of groups-which-are-consistent-with-P.
23:19:45 <tswett> The special property, I think, is that the category of groups-consistent-with-P is always a coslice category of the category of groups.
23:21:57 <tswett> And the base object of this category is the "group presented by P".
23:22:45 <tswett> Now, when I said "theory of real numbers", I really should have said "theory of real number systems", because its models are real number systems, not individual real numbers.
23:24:29 <tswett> The theory of real number systems does *not* have that neat little property where every presentation defines a coslice category of models.
23:25:06 <tswett> Indeed, although there are lots of different groups, I think there's generally considered to be only *one* model of the theory of real number systems.
23:25:11 <tswett> Namely: the real numbers.
23:30:35 -!- lambdabot has quit (Ping timeout: 240 seconds).
23:36:28 -!- DHeadshot has quit (Ping timeout: 268 seconds).
23:36:31 <tswett> Now, we all know what a "presentation of a group" is.
23:37:02 -!- lambdabot has joined.
23:37:33 <tswett> It's a thing declaring the existence of various elements, and equations that hold between them.
23:37:40 <tswett> What is a "presentation of a real number system"?
23:38:16 <tswett> It's a thing declaring the existence of various numbers, and...?
23:40:15 <tswett> I mean, I guess the words "of a" are no longer relevant here, since a presentation no longer defines a real number system.
23:40:25 <tswett> Let's call it a... "presentation for real number systems" instead?
23:40:46 <tswett> This is definitely a presentation for real number systems: "numbers x, y, z such that x + y = z."
23:40:53 <tswett> That presentation has infinitely many models.
23:41:09 <tswett> This is another one: "a number x such that x + x = x * x." That one has exactly 2 models.
23:41:23 <tswett> And another one: "a number i such that i * i = -1." That one has no models.
23:42:20 -!- MrBusiness has joined.
23:43:31 -!- boily has joined.
23:43:49 <tswett> How about "a number x such that x = pi"? Can you use pi in a presentation for real number systems?
23:49:49 <tswett> Presentations for a theory are always extensions of the theory, but the converse isn't true.
23:51:47 <tswett> You can extend the axioms for a group by saying that there exists an element x. This extension is also a presentation, and it presents the infinite cyclic group.
23:52:03 <tswett> The trivial extension, which adds no axioms, is also a presentation. It presents the trivial group.
23:52:28 <tswett> You can also extend the axioms for a group by saying that the operation is commutative. This extension is not a presentation.
23:53:13 <tswett> Hmmmmm. I've got some gears turning, here.
23:54:36 <tswett> Consider the category of "finite limit theories" (finitely generated finite limit categories, seen as "theories").
23:55:26 <tswett> Theories are objects in this category.
23:56:09 <tswett> Presentations for theories are *also* objects in this category... but of a very constrained type.
23:57:02 <tswett> If I have a presentation for a theory T, then it is necessary (but not sufficient) that there exists another theory P and an "inclusion" arrow T -> P.
23:57:18 <tswett> T is the original theory; P is the original theory plus all of the generators in the presentation.
23:58:56 <tswett> Every theory has a category of models; let's call it Mod(T).