00:27:50 Today I wrote this program: http://sprunge.us/3AtNod (I don't know if it is any good to you, but, there it is.) 00:30:50 -!- FreeFull has quit (Ping timeout: 265 seconds). 00:31:22 zzo38: What language is that? 00:32:03 moony: PostScript. 00:33:30 -!- FreeFull has joined. 00:46:39 (Although, with some features specific to Ghostscript, such as the %pipe% device, and the makeimagedevice operator.) 00:47:51 zzo38: what does it do? 00:48:16 kmc: It parses and renders a DVI file (such as output from TeX). 00:49:07 oh, cool 00:50:34 -!- tromp has joined. 00:56:27 -!- tromp has quit (Ping timeout: 272 seconds). 01:20:35 -!- Sgeo has quit (Read error: Connection reset by peer). 01:22:46 -!- Sgeo has joined. 01:24:00 -!- adu has joined. 02:59:31 -!- craigo has quit (Ping timeout: 246 seconds). 03:23:35 [[Troll Online]] https://esolangs.org/w/index.php?diff=76749&oldid=65983 * LegionMammal978 * (+49) replace private repo with clone 04:15:08 [[E62qpodb593]] https://esolangs.org/w/index.php?diff=76750&oldid=76427 * AlexIsOK * (-5) 04:26:23 -!- Lord_of_Life_ has joined. 04:28:09 -!- Lord_of_Life has quit (Ping timeout: 265 seconds). 04:28:09 -!- Lord_of_Life_ has changed nick to Lord_of_Life. 04:53:06 -!- tromp has joined. 04:57:40 -!- tromp has quit (Ping timeout: 244 seconds). 05:00:54 -!- adu has quit (Quit: adu). 05:04:11 -!- kritixilithos has joined. 05:07:49 -!- kritixilithos has quit (Remote host closed the connection). 05:08:36 -!- kritixilithos has joined. 05:57:57 -!- ProofTechnique has quit (Ping timeout: 246 seconds). 05:59:50 -!- ProofTechnique has joined. 07:17:32 -!- tromp has joined. 07:36:39 -!- Sgeo has quit (Read error: Connection reset by peer). 07:37:06 -!- imode has quit (Ping timeout: 260 seconds). 07:40:17 -!- glowcoil has quit (Ping timeout: 260 seconds). 07:46:07 -!- ocharles has quit (Ping timeout: 240 seconds). 07:57:31 -!- ocharles has joined. 08:02:22 -!- glowcoil has joined. 08:09:48 -!- hendursa1 has joined. 08:10:23 -!- tromp has quit (Remote host closed the connection). 08:11:43 -!- hendursaga has quit (Ping timeout: 240 seconds). 08:30:03 -!- kritixilithos has quit (Changing host). 08:30:03 -!- kritixilithos has joined. 08:30:04 -!- ProofTechnique has quit (Changing host). 08:30:04 -!- ProofTechnique has joined. 08:30:05 -!- glowcoil has quit (Changing host). 08:30:06 -!- glowcoil has joined. 09:16:55 -!- t20kdc has joined. 09:29:14 -!- tromp has joined. 10:38:00 -!- xelxebar has quit (Quit: ZNC 1.7.2+deb3 - https://znc.in). 10:38:24 -!- xelxebar has joined. 11:11:43 -!- kritixilithos has quit (Ping timeout: 240 seconds). 11:24:54 -!- kritixilithos has joined. 12:08:43 -!- kritixilithos has quit (Ping timeout: 240 seconds). 12:10:15 -!- hendursa1 has quit (Quit: hendursa1). 12:10:30 -!- hendursaga has joined. 12:12:56 -!- kritixilithos has joined. 12:34:23 -!- kritixilithos has quit (Ping timeout: 240 seconds). 12:43:11 -!- kritixilithos has joined. 12:59:58 -!- Lord_of_Life has quit (Read error: Connection reset by peer). 13:00:29 -!- Lord_of_Life has joined. 13:09:20 -!- Frater_EST has joined. 13:27:13 -!- spruit11 has quit (Remote host closed the connection). 13:27:34 -!- spruit11 has joined. 13:30:28 -!- arseniiv has joined. 14:48:33 -!- craigo has joined. 14:49:29 what type of integer does getsockopt(fd, IPPROTO_IP, IP_MTU, &i, sizeof(i)); expect? 15:15:00 https://man7.org/linux/man-pages/man7/socket.7.html 15:17:37 spruit11: "Unless otherwise noted, optval is a pointer to an int." that suggests int, but I'm not sure it applies to IP_MTU, which is doc'ed in ip(7) 15:17:54 Lemme check. 15:18:53 That's not listed as an option you can pass? 15:19:51 ip(7) says "Returns an integer." 15:20:17 probably an int, that's wide enough for all IP MTU 15:20:41 Success... 15:26:29 ah look https://man7.org/linux/man-pages/man2/getsockopt.2.html says "Most socket-level options utilize an int argument for optval." 15:27:48 Well, isn't that exactly the same as man 7 socket's "unless otherwise noted, optval is a pointer to an int" that you quoted? 15:29:03 As in, it's not strictly a "socket-level option" if you pass IPPROTO_IP as the level, so if you don't think one of them necessarily applies, the other shouldn't either. 15:29:21 (I'd assume `int` anyway.) 15:30:46 fizzie: yes, but there are sockopt options associated with different layers, distinguihsed by the second arg of ?etsockopt, so SOL_SOCKET layer doc'ed in socket(7), IPPROTO_IP layer doc'ed in ip(7) etc, and ip(7) does not have such a ocmment, but the getsockopt(2) comment is for any layer 15:31:18 fizzie: and eg. libcurl I think uses long or long long as default type for options 15:32:09 No, I don't think it's for any layer. 15:32:13 It says "socket-level options". 15:32:20 hmm 15:32:35 The second parameter of getsockopt is called `level`, not `layer`. 15:32:39 but does "socket-level" mean socket(7) level or any level of sockets? 15:33:04 I would *assume* it means level == SOL_SOCKET. 15:33:04 I should look at the header file, it may have useful comments 15:33:11 "To manipulate options at the sockets API level, level is specified as SOL_SOCKET." 15:33:16 (Another bit from man getsockopt.) 15:34:03 probably 15:34:35 yep, the header "/usr/include/x86_64-linux-gnu/bits/in.h" has a clear comment that says int 15:34:39 that's where I should have looked at first 15:35:12 although... it also says "bool" for some types, and iiuc those are of int type, not of the C99/C++ bool type (which has sizeof 1 on x86) 15:35:39 but these comments may have been written when wasn't a usual thing so bool wasn't a macro or keyword 15:35:47 or at least by people who were used to that 15:36:25 Yeah, I imagine `bool` in that context just means "int with value 0 or 1". 15:37:06 in fact there's a comment for that too: "bool" means a boolean value stored in an `int'. 15:37:10 in the same header file 15:37:42 headers are often useful, I should look at headers more often 15:38:01 they're not useful for all libraries, but for linux ones they are 15:38:50 -!- Arcorann has quit (Read error: Connection reset by peer). 15:40:13 I did a class on Objective-C and iOS things once, and the instructor was firmly of the opinion that it's better to read Apple's header files than their documentation. 15:40:22 They have surprisingly few comments in there though. 16:10:44 Is the a classification of finite categories analogous to that of the finite groups? 16:26:12 [[Special:Log/newusers]] create * Joaomilho * New user account 16:26:58 -!- Lord_of_Life_ has joined. 16:29:46 -!- Lord_of_Life has quit (Ping timeout: 265 seconds). 16:29:50 -!- Lord_of_Life_ has changed nick to Lord_of_Life. 16:41:17 -!- spruit11 has quit (Quit: Lost terminal). 16:47:56 -!- spruit11 has joined. 17:00:59 [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=76751&oldid=76739 * Joaomilho * (+207) Introduce myself 17:07:12 finite categories 17:34:23 -!- adu has joined. 17:46:18 Taneb: try to count those finite categories as a function of size modulo whatever kind of isomorphism you want and search on OEIS to find out 17:55:43 -!- kritixilithos has quit (Ping timeout: 240 seconds). 17:57:04 -!- kspalaiologos has joined. 17:59:20 -!- Sgeo has joined. 18:43:25 a friend of mine asked how often there is a type like “angle32” or “angle64” which encodes angle values (R/2πR or R/R as you prefer) in an obvious manner (fixed point without overflow and without allowing multiplication or division by values of the same type, only multiplication by integers if one really wishes to do that)? 18:44:45 I know there is an algorithm to compute cosine/sine from that representation and that it’s used in some special hardware but I doesn’t know more. Maybe there are interesting things related to that 18:47:18 ah, there would also be of course useful an intrinsic operation (x, m) ↦ 2π(x mod m) which doesn’t resort to floating-point operations (x, m may be non-angular fixed-point numbers or integers) 18:48:51 the friend came to this noting that expressing angles in floating point makes some values less precise than others, which is quite unnatural for angle representation 18:50:43 arseniiv: hmm... I don't know, I've only seen sin and cos routines for various floating points, including arbitrary precision. so if you gave me a fixed point value with some known range, I'd just scale it to a floating point value of the required precision and compute the sin that way. 18:51:33 you could probably do it directly with fixed points if you really wanted to, but the fact is, double precision floats (64 bit) is almost always eonugh precision for computations like this, and they're fast 18:51:58 so usually just use double precision or single precision, and even then you can choose a full sincos routine or some faster but less precise approximation 18:52:25 trying to do the computation with integers would just slow this down 18:52:43 at least on the modern fast x86_64 hardware that I work on 18:53:53 you can still use a scaled fixed point value for storage or communication if you want 18:53:55 in a usual system, yes, but there happen to be a dedicated hardware for doing that… 18:55:31 yes, dedicated hardware for measurements for example. at our work we do industrial control, and all the analog sensors have a hardware that gives fixed point numbers with a known scale (the scale is known from the type of hardware) to the computer, but then our program on the cpu just scales that to a single-precision floating point number before we do anything with it 18:55:53 except possibly an out of range checks (to detect hardware failures), that may be before the scaling 18:57:20 though we very rarely need to compute anything like a sincos from them, I believe the only case is a tank where we're estimating the volume of the contained liquid from a distance sensor that measures the height, and we know the shape of the tank in advance 18:57:54 and that's for the operator UI, not for the control 19:25:26 yeah double is very precise and even single is sometimes good, damn you IEEE 754 for being so good 19:25:40 yes, sometimes single is good, sometimes not 19:26:16 of course you also have to write your program correctly, if you write it bad so it has additions that cancel out or such similar problems, then no amount of precision is enough 19:26:29 Minecraft used single in some places but then in very big worlds very far away this caused entities to misalign. Not long ago they changed to double in those places to alleviate that 19:30:40 and that's why when kids grow up to programmers, we tell them that their teachers lied to them about the quadratic equation a*x**2 + b*x + c = 0 where a, b, c are given real numbers: its actual solutions are x_0 = -(b + sgn(b) * sqrt(b**2 - 4*a*c)) / (2*a), x_1 = c / (a * x_0) 19:32:44 and when you understand why exactly that is true, you've done the first step on the long path to become a numeric programmer 19:54:05 [[Imeight]] N https://esolangs.org/w/index.php?oldid=76752 * Kekcsi * (+2589) Created page with "== What is imeight == ''imeight'' is an imaginary eight-bit machine imagined by Csaba Skrabk. As an open source project, its emulator is also implemented and available onli..." 20:01:35 -!- aaaaaa has joined. 20:02:51 [[Imeight]] https://esolangs.org/w/index.php?diff=76753&oldid=76752 * Kekcsi * (+188) 20:12:16 -!- adu has quit (Ping timeout: 256 seconds). 20:12:26 -!- aaaaaa has quit (Quit: leaving). 20:13:39 [[Imeight]] https://esolangs.org/w/index.php?diff=76754&oldid=76753 * Kekcsi * (+8) /* Interpreted? */ 20:20:00 -!- adu has joined. 20:20:49 -!- kspalaiologos has quit (Quit: Leaving). 20:32:29 Fucking Google. 20:37:23 -!- Frater_EST has quit (Remote host closed the connection). 20:41:35 https://paste.debian.net/1160688/ <-- all I wanted to do is send an email. 21:07:05 and when you understand why exactly that is true, you've done the first step on the long path to become a numeric programmer => yeah numerics are hard 21:07:37 x_0 = -(b + sgn(b) * sqrt(b**2 - 4*a*c)) / (2*a), x_1 = c / (a * x_0) => I think I saw something more sophisticated 22:12:00 -!- tromp has quit (Remote host closed the connection). 22:19:32 [[Imeight]] https://esolangs.org/w/index.php?diff=76755&oldid=76754 * Kekcsi * (+1050) 22:27:42 -!- arseniiv has quit (Ping timeout: 256 seconds). 22:44:03 [[Imeight]] https://esolangs.org/w/index.php?diff=76756&oldid=76755 * Kekcsi * (+4) /* Interpreted? */ 22:53:25 -!- Arcorann has joined. 22:54:07 [[User:Kekcsi]] N https://esolangs.org/w/index.php?oldid=76757 * Kekcsi * (+309) Created page with "Hello World! I am a professional user of programming languages, interested in the development of the languages actually used, and a fan of languages that are too interesting..." 23:12:54 arseniiv: more sophisticated how? handles complex a,b,c? can avoid some rare overflows/underflows? 23:13:47 or the much more complicated but still practically important cubic solver?