00:00:59 > let eea _ xa xb 0 _ _ = (xa, xb); eea x xa xb y ya yb = (let s = x `mod` y in eea y ya yb (y - s * x, ya - s * xa, yb - s * xb) in eea 314 1 0 100 0 1 00:01:01 :1:129: error: parse error on input ‘in’ 00:01:20 > let eea _ xa xb 0 _ _ = (xa, xb); eea x xa xb y ya yb = (let s = x `mod` y in eea y ya yb (y - s * x, ya - s * xa, yb - s * xb)) in eea 314 1 0 100 0 1 00:01:22 error: 00:01:22 • Couldn't match type ‘c -> c -> (c, c)’ with ‘(c, c)’ 00:01:22 Expected type: c -> c -> c -> (c, c, c) -> (c, c) 00:01:49 > let eea _ xa xb 0 _ _ = (xa, xb); eea x xa xb y ya yb = (let s = x `mod` y in eea y ya yb (y - s * x) (ya - s * xa) (yb - s * xb)) in eea 314 1 0 100 0 1 00:01:56 mueval: ExitFailure 1 00:02:19 🤔 00:03:48 > let eGCD 0 b = (b, 0, 1); eGCD a b = (let (g, s, t) = eGCD (b `mod` a) a in (g, t - (b `div` a) * s, s)) in eGCD 314 100 00:03:50 (2,-7,22) 00:05:06 > let eGCD (_, 0, b) = (b, 0, 1); eGCD (_, a, b) = (let (g, s, t) = eGCD (undefined, (b `mod` a), a) in (g, t - (b `div` a) * s, s)) in iterate eGCD (undefined, 314, 100) 00:05:10 [(*Exception: Prelude.undefined 00:05:23 > let eGCD (_, 0, b) = (b, 0, 1); eGCD (_, a, b) = (let (g, s, t) = eGCD (undefined, (b `mod` a), a) in (g, t - (b `div` a) * s, s)) in iterate eGCD (123456789, 314, 100) 00:05:26 [(123456789,314,100),(2,-7,22),(-1,-3,-1),(-1,0,1),(1,0,1),(1,0,1),(1,0,1),(... 00:06:10 I conclude that 314/100 is approximately 22/7. 00:08:41 tswett[m]: you seem to be an approximately rational person 00:09:01 Thank you, more or less. 00:09:14 Can you name a number that is not approximately another number? 00:12:56 shachaf: let's be discrete... 00:13:25 But I guess you'll say that 42 is approximately 0. 00:15:22 I wasn't making any claims. 00:15:45 But I suppose that, for example, an infinite hyperreal isn't approximately equal to any finite number. 00:17:05 I did consider mentioning \omega. But then that's approximately \omega + 1, if we allowed 0 to be approximately 1. 00:18:56 OTOH hyperreals give you better-than-rational approximations. 00:24:07 -!- zhiayang has joined. 00:28:56 hello, not entirely sure if this fits, but: say i'm targeting a limited stack vm as a backend for a compiler, and the vm only has the constants 0-9 (so to get 20 i'd need 4 5 *). so, how do i do relocations, given that the "size" of each relocation is not fixed? 00:30:03 perhaps something like this https://www.sifive.com/blog/all-aboard-part-3-linker-relaxation-in-riscv-toolchain 00:31:18 int-e: Oh, well, I meant "do there exist x,y such that x is not approximately y" 00:31:30 Not "does there exist x such that for all y, x is not approximately y" 00:33:42 kmc: hm, the thing is most of these places have an "upper bound" for the address/offset 00:33:50 like i can 100% say it will either be 32-bits or less 00:34:25 whereas if my offset happens to be some prime number or something, the number of instructions i need to generate it might be unpredictably large 00:34:32 so it's hard to reserve a set amount of space for it 00:35:43 I was reading about fancy assemblers that try to optimize the number of bytes used for jump instructions. 00:35:51 In some cases you need a lot of passes. 00:35:52 hmm 00:36:12 zhiayang: you can set a maximum, and anything bigger gets turned into a function call to a function created by the linker 00:36:33 Don't functions have the same issue? 00:36:46 I guess the linker could place them at a particular place. 00:36:59 or depending on your memory instructions you could place them in a data section http://www.keil.com/support/man/docs/armasm/armasm_dom1359731147760.htm 00:37:10 You could maybe have some nops around jump targets, which gives you more leeway in avoiding prime numbers. 00:37:11 ah, there's nothing as fancy as a linker here, tbh 00:37:23 i'm currently going from IR -> vm opcodes 00:37:28 (which is just text) 00:39:17 ahttps://board.flatassembler.net/topic.php?t=20249 is the post I was thinking of. 00:39:23 s/a// 00:39:35 Not really relevant to you. 00:39:40 [[Special:Log/newusers]] create * Aquirel * New user account 00:42:54 interesting read, nontheless 00:44:25 also, to read from the data section would require the same kind of shennanigans, so i don't think it might be useful 00:44:45 i might just set an upper limit of 32 and complain if it's exceeded 00:47:15 kmc: did you ever see http://slbkbs.org/serp.html 00:47:50 [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=63083&oldid=62922 * Aquirel * (+114) 00:50:52 yes 00:51:03 still works 00:51:22 i guess browser people don't care 00:53:54 [[ABCR]] https://esolangs.org/w/index.php?diff=63084&oldid=50392 * Aquirel * (+237) 01:04:39 -!- unlimiter has joined. 01:11:38 -!- unlimiter has quit (Quit: WeeChat 2.4). 01:15:14 ais523: https://secretgeek.github.io/html_wysiwyg/html.html is arguably different from the types of quines we talked about. 01:15:24 Though I think you can classify it as cheating. 01:18:32 that's cute 01:18:34 > The only other style that is special is "style" itself, which has to include an escape character to avoid being taken literally. I like to think that may be a parser bug created by browser developers who did not suspect that people would engage in such an atrocity. 01:18:36 :1:55: error: parse error on input ‘,’ 01:18:39 it's not really a bug 01:18:43 it's a consequence of nesting parsers 01:18:59 or perhaps nesting tokenizers within parsers 01:19:01 I remember a capture the flag thing we both did that uesd that bug. 01:19:11 Though I think I used it and you used some other method. 01:19:15 I mean, that non-bug. 01:19:24 where you sneak a inside a string in a