←2015-02-15 2015-02-16 2015-02-17→ ↑2015 ↑all
00:02:46 -!- contrapumpkin has changed nick to copumpkin.
00:09:08 -!- skj3gg has quit (Quit: ZZZzzz…).
00:10:14 -!- Tritonio has quit (Ping timeout: 252 seconds).
00:21:02 -!- Sprocklem has joined.
00:24:58 -!- adu has joined.
00:44:38 <oerjan> @tell ais523 <ais523> anyway, 1972 is over 25 years ago <-- 40 hth
00:44:38 <lambdabot> Consider it noted.
00:45:20 <Taneb> oerjan, that makes no sense
00:45:29 <Taneb> 40 years is, like, 2 of my lifetimes
00:46:10 <oerjan> did you know jesus was born more than 100 of your lifetimes ago hth
00:47:15 <Taneb> What
00:47:31 <Taneb> Wasn't he born in, like, 6 BC
00:47:46 <oerjan> something like that.
00:48:21 <oerjan> are you saying it's only 99?
00:48:50 <Taneb> > 2015 - 20 * 100
00:48:51 <lambdabot> 15
00:49:00 <Taneb> I'm saying it's 101
00:49:34 <oerjan> well the date is a bit approximate so...
00:52:15 <oerjan> did you know the great pyramid was finished more than 227 of your lifetimes ago hth
00:54:00 <AndoDaan> So, that's 111 of your life times ago then, oerjan?
00:54:17 <oerjan> > 111*44
00:54:18 <lambdabot> 4884
00:54:36 <oerjan> NOT QUITE
00:55:03 <AndoDaan> Looks good... wow I can't remember when the great pyramids were built.
00:55:13 <oerjan> i _did_ google it hth
00:55:53 <AndoDaan> Wait. I know Chleopatra lived closer in time to the moon landings than the building of those pyramids.
00:56:07 <AndoDaan> I can figure this out without google.
00:56:18 <oerjan> hm i resolved the other day to look up the date for the fall of constantinople, only so i could give a cheeky in case someone asked me when the roman empire fell.
00:56:50 <oerjan> cleopatra was only about 50 years before jesus
00:57:30 <AndoDaan> It's funny how Western Civilisation gradual moved eastward over the centuries.
00:57:43 <AndoDaan> Italy, Turkey... then Russia.
00:57:57 <oerjan> hm actually just 30, she survived caesar by some years
00:58:05 <AndoDaan> I always mistake 50 BCE with 50CE.
00:58:22 <AndoDaan> Together with Marky Marc.
00:58:25 <oerjan> AndoDaan: well it first moved westward from greece hth
00:58:38 <oerjan> in fact it probably never left greece, which included turkey
00:58:39 <AndoDaan> True that.
00:58:57 <oerjan> (see: fall of constantinople)
00:59:28 <oerjan> ah 1453
00:59:44 <AndoDaan> Not 1467 (I think)?
01:00:17 <AndoDaan> I know there's some different views about the exact date.
01:00:21 <AndoDaan> To wikipedia!
01:00:40 <oerjan> nope
01:01:09 <AndoDaan> Blurgh.
01:01:50 <AndoDaan> You're right. I must be confusing the confusion with something else.
01:02:17 -!- gde33|2 has joined.
01:02:47 -!- gde33 has quit (Ping timeout: 245 seconds).
01:05:50 -!- gde33 has joined.
01:07:26 -!- gde33|2 has quit (Ping timeout: 252 seconds).
01:08:38 -!- shikhin_ has joined.
01:09:26 <Taneb> I am really enjoying Linear Algebra
01:09:41 <Taneb> So I ought to go to sleep now so I can get to my LA lecture in 9 hours
01:11:28 -!- shikhin has quit (Ping timeout: 252 seconds).
01:12:13 <oerjan> *+answer
01:16:05 -!- Lymia has joined.
01:19:09 -!- Sprocklem has quit (Ping timeout: 250 seconds).
01:19:38 -!- boily has joined.
01:53:22 -!- adu has quit (Quit: adu).
02:13:59 -!- v^ has quit (Read error: Connection reset by peer).
02:16:16 -!- ^v has joined.
02:20:55 <quintopia> helloily
02:37:44 <boily> quinthellopia!
02:43:21 -!- boily has quit (Quit: SEMILATTICE CHICKEN).
03:01:20 -!- skj3gg has joined.
03:15:57 -!- AndoDaan has quit (Quit: Going, going, gone.).
03:20:20 -!- hjulle has quit (Ping timeout: 246 seconds).
03:32:51 -!- skj3gg has quit (Quit: ZZZzzz…).
03:41:35 -!- skj3gg has joined.
03:52:51 <HackEgo> [wiki] [[Special:Log/move]] move * Rottytooth * moved [[A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer.]] to [[A programming language is a formal constructed language designed to communicate instructions to a machine, particularly a computer.]]: Updating to reflect new first sentence of Wik
03:55:44 <HackEgo> [wiki] [[A programming language is a formal constructed language designed to communicate instructions to a machine, particularly a computer.]] http://esolangs.org/w/index.php?diff=41914&oldid=41912 * Rottytooth * (+122) changed name of language, to match Wikipedia entry
03:56:51 <oerjan> brb prepending a paragraph saying just "brainfuck" to the wikipedia page
03:57:32 <HackEgo> [wiki] [[A programming language is a formal constructed language designed to communicate instructions to a machine, particularly a computer.]] http://esolangs.org/w/index.php?diff=41915&oldid=41914 * Rottytooth * (+149) /* Overview */
04:12:39 <oerjan> hm freefall mystery solved
04:14:46 -!- skj3gg has quit (Quit: ZZZzzz…).
04:16:34 <oerjan> hm i think he may have retconned the previous one
04:17:13 <oerjan> i distinctly thought it implied more clearly that there was just one order
04:18:08 <oerjan> maybe the last bubble in today's is lampshading it.
04:25:38 -!- zzo38 has joined.
04:25:38 <oerjan> the forum unfortunately links directly to the same image url
04:34:48 -!- adu has joined.
04:39:22 -!- shikhin_ has changed nick to shikhin.
04:39:36 -!- skj3gg has joined.
05:04:08 -!- MDude has changed nick to MDream.
05:05:14 <oerjan> ah mark stanley admits to having forgotten it
05:22:30 -!- skj3gg has quit (Quit: ZZZzzz…).
05:39:29 -!- GeekDude has quit (Quit: ZNC - http://znc.in).
05:57:24 -!- doesthiswork has joined.
06:27:13 -!- kapil__ has joined.
06:40:43 -!- shikhin has quit (Ping timeout: 256 seconds).
06:57:47 -!- doesthiswork has quit (Quit: Leaving.).
07:06:36 -!- AndoDaan has joined.
07:06:38 -!- AndoDaan_ has joined.
07:07:54 -!- AndoDaan has quit (Client Quit).
07:08:13 -!- AndoDaan_ has changed nick to AndoDaan.
07:08:48 -!- adu has quit (Quit: adu).
07:41:41 -!- Patashu has joined.
08:15:02 -!- tswett has quit (Quit: No Ping reply in 180 seconds.).
08:16:38 -!- Warrigal has joined.
08:36:08 -!- AndoDaan_ has joined.
08:36:28 -!- AndoDaan has quit (Read error: Connection reset by peer).
08:53:51 -!- AndoDaan_ has changed nick to AndoDaan.
08:54:19 -!- oerjan has quit (Quit: leaving).
09:14:09 <zzo38> HAKMEM says "The myth that any given programming language is machine independent is easily exploded by computing the sum of powers of 2. [...] If arithmetic overflow is a fatal error, some fascist pig [...] is trying to enforce machine independence. But the very ability to trap overflow is machine dependent."
09:14:15 -!- Sgeo has quit (Ping timeout: 244 seconds).
09:14:34 <zzo38> I think that it could be implemented in a machine independent way actually, although that might slow down the program.
09:15:42 <zzo38> (Also most computer in use today is twos complement, and if it isn't you can still imitate such things)
09:18:08 * Taneb hello
09:18:10 <zzo38> Also item 149 is algorithm to draw circle. With arithmetic bit shifting it would be: for(;;) { x-=y>>n; y+=x>>n; plot(x,y); } where n is a parameter, and the initial value of x and y are parameters.
09:18:46 <zzo38> I think you could set n=8 to do it with 8-bit computers.
09:20:11 <zzo38> So you could do it with only addition and subtraction (and carrying)!
09:21:33 <int-e> > sqrt (1 + 1/256^2)
09:21:35 <lambdabot> 1.0000076293654276
09:21:58 <int-e> > 1 + 1/2^15
09:21:59 <lambdabot> 1.000030517578125
09:22:08 <int-e> > 1 + 1/2^17
09:22:09 <lambdabot> 1.0000076293945313
09:29:58 -!- ais523 has joined.
09:44:03 -!- shikhin has joined.
09:45:44 -!- jameseb- has changed nick to jameseb.
09:51:54 -!- ais523 has quit (Quit: meeting).
10:17:47 <J_Arcane> "I can't come up with a real world use for the .map function" " it's a treatment for a symptom from anonymous functions, that you shouldn't even use in the first place." ... these kids today.
10:24:16 <myname> what
10:24:40 <myname> lap is like the best thing ever
10:26:11 <b_jonas> no! it should be called "collect" or "transform"
10:28:50 <myname> collect is just plain wrong
10:33:05 <b_jonas> why? collect is what smalltalk uses, it can't be wrong.
10:33:33 -!- AnotherTest has joined.
10:34:54 <b_jonas> (together with select, inject, detect)
10:34:56 -!- ais523 has joined.
10:42:22 -!- AnotherTest has quit (Ping timeout: 252 seconds).
10:43:45 <myname> collect sounds more like reduce/fold but nothing like map
10:44:11 -!- oren has joined.
10:50:16 <oren> real world use of map function: activation function over weighted sum output, in neural network.
10:50:24 <b_jonas> myname: it's computer jargon, fixed once smalltalk got popular enough. just like how "||" now means logical or even if you think it seems more like string concatenation.
10:50:44 <b_jonas> and it's better than "map" which means two different things
10:51:00 <oren> it does?
10:51:00 <b_jonas> reduce is called "inject" in smalltalk
10:51:17 <myname> inject sounds weird
10:51:28 <oren> I'm only familiar with the map from perl
10:52:17 <b_jonas> oren: sure, "map" means collect/transform in perl, but means dictionary or associative array in C++ or haskell
10:53:16 <oren> oh. well those meaning are related through the math meaning of it.
10:53:28 <b_jonas> but "select" is _much_ worse
10:53:36 <b_jonas> it means like ten different things in computers
10:53:37 <b_jonas> I have a list
10:53:57 <b_jonas> so for that, I recommend "filter" instead, which is what haskell calls it
10:54:01 <oren> I still picture the select button from my gameboy when I read the word select
10:54:05 <b_jonas> or "find_all" if you prefer
10:54:24 <b_jonas> http://www.perlmonks.com/?node_id=295576 has the list on how many things "select" means
10:54:33 <b_jonas> and the game boy button isn't listed
11:00:25 -!- Patashu has quit (Remote host closed the connection).
11:00:47 -!- Patashu has joined.
11:02:08 -!- AnotherTest has joined.
11:20:02 -!- shikhin has quit (Ping timeout: 250 seconds).
11:20:35 -!- AndoDaan has quit (Ping timeout: 246 seconds).
11:24:36 -!- boily has joined.
11:29:41 -!- AnotherTest has quit (Ping timeout: 246 seconds).
11:38:13 -!- AndoDaan has joined.
11:41:53 -!- Patashu has quit (Ping timeout: 246 seconds).
11:48:00 -!- AnotherTest has joined.
12:11:16 <elliott> b_jonas: map is collect in Haskell...
12:11:17 <elliott> :t map
12:11:18 <lambdabot> (a -> b) -> [a] -> [b]
12:11:27 <elliott> (there's also Data.Map though, yeah)
12:11:28 <elliott> (and fmap)
12:11:57 <b_jonas> elliott: ah, right, in Haskell it means _both_
12:22:08 -!- boily has quit (Quit: TRIMETHYLXANTHINE CHICKEN).
12:37:28 -!- AnotherTest has quit (Ping timeout: 255 seconds).
12:56:55 -!- ais523 has quit (Read error: Connection reset by peer).
13:26:01 -!- vanila has joined.
13:32:35 -!- shikhin has joined.
13:36:07 -!- ais523 has joined.
13:41:52 -!- NihilistDandy has quit (Ping timeout: 240 seconds).
13:51:42 -!- Taneb has quit (Ping timeout: 250 seconds).
13:53:34 -!- SopaXorzTaker has joined.
13:54:13 -!- Taneb has joined.
14:01:22 -!- SopaXorzTaker has quit (Ping timeout: 240 seconds).
14:04:41 <J_Arcane> "A trick here is to use keyboard macros to do the boilerplate." Oh the horror.
14:07:43 -!- SopaXorzTaker has joined.
14:11:45 <vanila> http://rosettacode.org/wiki/Quine
14:12:17 <ais523> I'm not sure a quine collection does that well at comparing languages
14:12:49 -!- Tritonio has joined.
14:13:23 <vanila> that burlesque quine sucks D:
14:14:54 <ais523> write a better one?
14:15:12 <vanila> im tnot good at burleque
14:15:58 <vanila> #1=(write '#1# :circle t) this common lisp one is very funny
14:16:56 <vanila> canwe please disallow self evaluating forms as "quines" :|
14:16:57 <ais523> @tell oerjan I picked 25 because that's when patents expire
14:16:58 <lambdabot> Consider it noted.
14:17:53 <vanila> I like the frink one
14:18:54 <ais523> hmm, I think you could do better for Befunge
14:18:57 <J_Arcane> ((λ (x) `(,x ',x)) '(λ (x) `(,x ',x))) ; <3
14:19:15 <vanila> lol @ HQ9+
14:19:19 <ais523> you can use a mismatched double quote character to put the entire program both inside and outside itself
14:19:29 <vanila> ais523, woah :D
14:19:33 <elliott> is that java one by int-e
14:20:07 <b_jonas> ais523: like, a string but you enter from orthogonally (or through a trampoline) so it's also not a string?
14:20:22 <b_jonas> I do something similar in perl and lua, when I both eval a string a use its value
14:20:23 <ais523> oh, we have one that works like that on the wiki: http://esolangs.org/wiki/Befunge#Quine
14:20:27 <ais523> I think it's possible to do better though
14:20:36 <b_jonas> (and there's such an obfuscation for dc too)
14:20:53 <vanila> R is a room. To quit: (- quit; -). When play begins: say entry 1 in Q; say Q in brace notation; quit. Q is a list of text variable. Q is {"R is a room. To quit: (- quit; -). When play begins: say entry 1 in Q; say Q in brace notation; quit. Q is a list of text variable. Q is "}
14:20:58 <vanila> in Inform!
14:21:20 <b_jonas> but my favourite style of quine is one that's easy to translate to any language,
14:21:28 <b_jonas> namely one where you index an array of strings with an array of numbers
14:21:32 <vanila> I like seeing the different categories of quine
14:21:33 <J_Arcane> BASIC's is my favorite: 10 LIST
14:21:36 <b_jonas> `perl -eprint+("print+(","\"",",","\\",")[g1012131121212133121414=~/./g]")[g1012131121212133121414=~/./g]
14:21:37 <HackEgo> print+("print+(","\"",",","\\",")[g1012131121212133121414=~/./g]")[g1012131121212133121414=~/./g]
14:21:41 <J_Arcane> I actually used that one as a kid for something IIRC.
14:22:30 <b_jonas> [ ;@(2 0 0 0 0 1 0 1 0 1 0 2 0&{)'''';';';';@(2 0 0 0 0 1 0 1 0 1 0 2 0&{)'
14:22:31 <j-bot> b_jonas: ;@(2 0 0 0 0 1 0 1 0 1 0 2 0&{)'''';';';';@(2 0 0 0 0 1 0 1 0 1 0 2 0&{)'
14:22:35 <vanila> `perl -eprint+("print+(","\"",",","\\",")[h=~/./g]")[h=~/./g]
14:22:38 <HackEgo> print+(
14:22:42 <b_jonas> [ ;2 0 0 0 0 1 0 1 0 1 0 2 0{'''';';';';2 0 0 0 0 1 0 1 0 1 0 2 0{'
14:22:42 <j-bot> b_jonas: ;2 0 0 0 0 1 0 1 0 1 0 2 0{'''';';';';2 0 0 0 0 1 0 1 0 1 0 2 0{'
14:22:50 <vanila> what is g1012131121212133121414 ?
14:23:10 <b_jonas> vanila: it's a bareword, a string literal
14:23:35 <ais523> `! befunge "0<>,#:_@#-2*66
14:23:39 <HackEgo> Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ 0<>,#:_@#-2*66 .
14:23:54 <ais523> oh come on HackEgo
14:23:58 <ais523> you can't put the EOF onto the playfield
14:24:12 <ais523> also I forgot a comma
14:24:16 <ais523> `! befunge "0<>,#:_@#,-2*66
14:24:17 <HackEgo> Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ "<>,#:_@#,-2*66 .
14:24:18 -!- ProofTechnique has joined.
14:24:47 <ais523> also I'm handling the end of the string wrong
14:24:49 <vanila> `perl -eprint+("print+(","\"",",","\\",")[g1017131121212133121414=~/./g]")[g1017131121212133121414=~/./g]
14:24:49 <vanila> why is it there
14:24:50 <HackEgo> print+("print+(""\"",",","\\",")[g1017131121212133121414=~/./g]")[g1017131121212133121414=~/./g]
14:24:53 <ais523> `! befunge "0<>:#,_@#,-2*66
14:24:54 <HackEgo> Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ "<>:#,_@#,-2*66
14:25:33 <vanila> it seems to matter, what the name of g is.. why?
14:26:55 <b_jonas> vanila: any letter instead of g works
14:27:10 <ais523> oh hmm
14:27:13 <vanila> can you expplain what it does
14:27:19 <ais523> anagolf is also putting an EOF on the playfield
14:27:26 <b_jonas> vanila: you need a letter, because if you wrote 01017131121212133121414 it would stringify as exponential
14:27:40 <b_jonas> `perl -eprint 1017131121212133121414
14:27:43 <HackEgo> 1.01713112121213e+21
14:27:45 <b_jonas> `perl -eprint 01017131121212133121414
14:27:45 <HackEgo> 9496725008436470540
14:27:53 <b_jonas> `perl -eprint g1017131121212133121414
14:27:54 <HackEgo> No output.
14:28:00 <vanila> im asking about the number
14:29:12 <vanila> `perl -eprint+("print+(","\"",",","\\",")[g8888=~/./g]")[g8888=~/./g]
14:29:12 <HackEgo> print+(
14:29:27 <vanila> `perl -eprint+("print+(","\"",",","\\",")[g1118888=~/./g]")[g1118888=~/./g]
14:29:28 <HackEgo> print+("""
14:29:53 <b_jonas> `perl -eprint+("zero ","one ","two ","three ")[3,1,0,0,1]
14:29:53 <HackEgo> three one zero zero one
14:30:02 <b_jonas> `perl -eprint+("zero ","one ","two ","three ")[31001=~/./g]
14:30:02 <HackEgo> three one zero zero one
14:30:06 <b_jonas> vanila: ^
14:30:15 <b_jonas> the digits are indexes to a list of strings
14:30:32 <vanila> thanks!
14:30:39 -!- SopaXorzTaker has quit (Ping timeout: 245 seconds).
14:30:41 <b_jonas> this is why it works in almost any language, because you can create a list of strings in almost any language, and a list of integers too, and index one by the other
14:30:56 <vanila> but it will not be so short, probably
14:31:06 <b_jonas> sure, it's not as short as other quines, not even in perl
14:31:19 <b_jonas> but it's also not very long
14:31:22 <HackEgo> [wiki] [[Befunge]] http://esolangs.org/w/index.php?diff=41916&oldid=41873 * Ais523 * (+1) /* External resources */ site has moved
14:31:32 <b_jonas> I've written a kilobyte long quine in C long ago
14:31:32 <vanila> The one you wrote in J uses the same idea
14:31:37 <b_jonas> yes
14:31:43 <vanila> that's cool
14:31:55 <b_jonas> http://www.perlmonks.com/?node_id=661934 has shorter quines in perl
14:32:17 -!- SopaXorzTaker has joined.
14:32:21 <ais523> oh come on
14:32:25 <vanila> I've written a new quine today which im proud of
14:32:28 <ais523> this online IDE crashed when I divided by zero
14:32:33 <vanila> haha
14:32:36 <vanila> don't divide by zero!
14:32:37 <ais523> `! befunge 00/@
14:32:42 <ais523> vanila: this is befunge, though
14:32:46 <ais523> it has defined behaviour on dividing by zero
14:32:48 <ais523> which isn't that
14:32:51 <vanila> :O
14:33:08 <HackEgo> No output.
14:33:55 <b_jonas> ais523: online befunge IDE?
14:33:59 <vanila> haha
14:34:05 <ais523> b_jonas: http://www.tutorialspoint.com/compile_befunge_online.php
14:34:08 <ais523> it's not that good, though
14:34:10 <ais523> can't even divide by zero
14:34:20 <ais523> I was looking for an online debugger though
14:34:20 <vanila> someone wrote a quine on perl whichs loads up the perlmonks thread and prints that post out
14:34:29 <vanila> the post containing his own quine haha
14:34:54 <ais523> at least it's not putting an EOF on the playfield
14:35:11 <b_jonas> I don't know of any online befunge interpreter
14:35:14 <b_jonas> or wait
14:35:17 <b_jonas> doesn't hackego have one?
14:35:22 <b_jonas> or maybe the other bot
14:35:24 <b_jonas> fungot
14:35:29 <ais523> oh, here it is: http://www.quirkster.com/iano/js/befunge.html
14:36:24 <vanila> Save the following line to a file named "/tmp/p" and run as: perl /tmp/p
14:36:24 <vanila> Illegal division by zero at /tmp/p line 1.
14:38:28 <ais523> vanila: kimian quine
14:38:37 <ais523> I'm surprised that that gives a divide-by-zero, though
14:38:44 <ais523> I thought it'd fail to parse after three barewords
14:38:51 <ais523> `! perl one two three four five siz
14:38:52 <HackEgo> Can't locate object method "five" via package "siz" (perhaps you forgot to load "siz"?) at /tmp/input.290 line 1.
14:38:54 -!- TieSleep has changed nick to TieSoul.
14:38:56 <ais523> `! perl one two three four five six
14:38:57 <HackEgo> Can't locate object method "five" via package "six" (perhaps you forgot to load "six"?) at /tmp/input.290 line 1.
14:39:02 <ais523> `! perl one two three
14:39:04 <HackEgo> Can't locate object method "one" via package "two" (perhaps you forgot to load "two"?) at /tmp/input.291 line 1.
14:39:10 <ais523> yep, exactly
14:39:26 <ais523> `! perl Illegal division by zero at /tmp/input.292 line 1.
14:39:32 <HackEgo> Bareword found where operator expected at /tmp/input.290 line 1, near "292 line" \ (Missing operator before line?) \ Number found where operator expected at /tmp/input.290 line 1, near "line 1." \ (Do you need to predeclare line?) \ syntax error at /tmp/input.290 line 1, near "292 line " \ Execution of /tmp/input.290 aborted due to compilation er
14:39:53 <ais523> oh, it seems that the chained barewords can be interpreted as one big chain of method calls
14:42:17 <vanila> `! error
14:42:18 <HackEgo> ​/hackenv/bin/!: 4: exec: ibin/error: not found
14:42:28 -!- kapil__ has quit (Quit: Connection closed for inactivity).
14:42:28 <vanila> `! /hackenv/bin/!: 4: exec: ibin/error: not found
14:42:29 <HackEgo> ​/hackenv/bin/!: 4: exec: ibin//hackenv/bin/!:: not found
14:42:35 <vanila> `! /hackenv/bin/!: 4: exec: ibin//hackenv/bin/!:: not found
14:42:36 <HackEgo> ​/hackenv/bin/!: 4: exec: ibin//hackenv/bin/!:: not found
14:42:40 <vanila> there we go
14:42:50 <vanila> if missing `! is ok
14:43:58 <ais523> is this a hackego quine?
14:44:00 <ais523> ^quine
14:44:07 <ais523> oh, fungot isn't here
14:44:08 <ais523> `quine
14:44:41 <HackEgo> ​/hackenv/bin/quine: 2: cd: can't cd to /var/irclogs/_esoteric \ ls: cannot access ????-??-??.txt: No such file or directory
14:45:19 <ais523> oh right
14:45:32 <ais523> `quine worked by grepping the logs for the most recent `quine command
14:46:05 <HackEgo> ​/hackenv/bin/quine: 2: cd: can't cd to /var/irclogs/_esoteric \ ls: cannot access ????-??-??.txt: No such file or directory
14:47:06 <b_jonas> ah, befunge calls it "bridge", not "trampoline"
14:47:26 <ais523> `! befunge "0<>:#,_@#0,-2*66
14:47:27 <vanila> ????-??-??.txt :O
14:47:27 <HackEgo> ​"
14:47:29 <b_jonas> I guess it was developped by hardware guys who know how wires work
14:47:38 <ais523> `! befunge "0<>:#,_@#1,-2*66
14:47:39 <HackEgo> ​"0<>:#,_@#1,-2*66
14:47:43 <ais523> there we go :-)
14:47:58 <vanila> awesome !!!
14:47:59 <b_jonas> in befunge, could you use the g command to read the program?
14:47:59 <ais523> I had to add a bunch of trailing spaces because this Befunge interp puts EOF on the playfield for some reason
14:48:07 <ais523> b_jonas: yes, you could
14:48:10 <ais523> I think this way's more elegant though
14:48:14 <vanila> tha'ts really short
14:48:20 <vanila> `x
14:48:21 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: x: not found
14:48:45 <b_jonas> ok
14:49:02 <ais523> b_jonas: the shortest befunge quine on anagolf works like you suggest
14:49:13 <ais523> :0g:,%1+ and a NUL character, by flagitious
14:49:56 <b_jonas> ok wait, how does your quine work? doesn't befunge start at the top left corner going right? if so, the double quote puts it to string mode but how does it exit that?
14:49:59 <ais523> by the look of it, that relies on the program exiting upon mod-0, which probably counts as cheating
14:50:05 <ais523> b_jonas: the program wraps around
14:50:10 <b_jonas> ah
14:50:13 <ais523> that quote is both the start and end of the string
14:50:18 <ais523> this is what I think is so elegant
14:50:19 <vanila> its the best type of cheating :D
14:50:46 <ais523> `! befunge "<>:#,_@#1,-2*66
14:50:47 <HackEgo> ​"<>:#,_@#1,-2*66 66*2-,1#@_,#:><
14:50:52 <ais523> oh right, that's why I needed the 0
14:50:59 <ais523> `! befunge "0<>:#,_@#1,-2*66
14:51:03 <HackEgo> ​"0<>:#,_@#1,-2*66
14:51:46 <ais523> `! befunge98 "0<>:#,_@#1,-2*66
14:51:54 <HackEgo> ​"0<>:#,_@#1,-2*66
14:51:59 <ais523> still works :-)
14:52:05 <ais523> `! befunge98 '"r:#,_@#1,-2*66
14:52:06 <HackEgo> ​" r:#,_@#1,-2*66 '"
14:52:23 <b_jonas> `! befunge ",,,@hello
14:52:24 <HackEgo> No output.
14:52:30 <b_jonas> `befunge ",,,@hello
14:52:31 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: befunge: not found
14:52:32 <ais523> `! befunge98 '"r:#,_@#
14:52:34 <HackEgo> r:#,_@# '"
14:52:37 <vanila> quine :-
14:52:37 <vanila> listing(quine).
14:52:41 <vanila> im disappointed with hte prolog quine
14:52:53 <vanila> it hink this shoudn't count
14:52:55 <ais523> that's a cheat-quine
14:52:59 <ais523> I reckon we can do better
14:53:09 <ais523> let me think about this
14:53:13 <ais523> do we have prolog in HackEgo?
14:53:23 <ais523> `! prolog :- write("test").
14:53:24 <HackEgo> ​/hackenv/bin/!: 4: exec: ibin/prolog: not found
14:53:27 <ais523> nope
14:53:29 <ais523> let me try this local then
14:53:35 <b_jonas> I'm still trying to understand this befunge stuff
14:53:41 <b_jonas> `befunge ",,,
14:53:42 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: befunge: not found
14:53:44 <vanila> http://swish.swi-prolog.org/ this is a prolog
14:53:46 <b_jonas> `! befunge ",,,
14:53:46 <HackEgo> ​ Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?)
14:53:51 <b_jonas> `! befunge ",,,
14:53:55 <HackEgo> ​ Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?) \ Unsupported instruction '' (0xffffffff) (maybe not Befunge-93?)
14:54:00 <b_jonas> `! befunge ",,,
14:54:01 <HackEgo> No output.
14:54:10 <ais523> oh wow, the stack isn't even starting full of zeroes?
14:54:12 <ais523> that interp sucks
14:54:50 <b_jonas> ais523: quick, code a better one in two lines of perl or C or something and teach it to HackEgo
14:55:33 <b_jonas> `! befunge "<@,,,
14:55:34 <HackEgo> ​<@,
14:56:12 <b_jonas> `! befunge "<@>,,,,@#
14:56:12 <HackEgo> ​<@>,,,,@
14:56:18 <b_jonas> `! befunge "<@>,,,,,@#
14:56:19 <HackEgo> ​<@>,,,,,@#
14:58:06 <myname> wat
14:58:34 <myname> the quore is missing
14:59:14 <b_jonas> oh
14:59:20 <b_jonas> right, you have to add that
14:59:54 <b_jonas> that's why ais has that 66*2- thing in his
15:00:03 <vanila> puts <<e*2,'e'
15:00:04 <vanila> puts <<e*2,'e'
15:00:04 <vanila> e
15:00:07 <vanila> how does this work?\
15:00:17 -!- skj3gg has joined.
15:00:23 <ais523> vanila: << is a heredoc
15:00:30 <vanila> Ah!
15:00:47 <ais523> oh good, I just trying to figure out how to explain what a heredoc was
15:00:53 <ais523> if you know already that makes things easier
15:01:15 <vanila> "There are a number of excellent quines in the Tcl wiki[2], the most useful for real-world programming probably the one that uses [info] to read the source of the currently running script"
15:01:25 <vanila> what real-world programming??
15:02:11 <vanila> join { {} \{ \} } { join { {} \{ \} } } this is cool
15:02:19 <vanila> very similar to the lis p one
15:04:26 <vanila> ais523, your befubnge quine reminds me of a mobius strip
15:04:54 <ais523> hmm, that's a good thing to be reminded of, really
15:05:02 <ais523> it is sort-of similar
15:07:17 <b_jonas> member(D,"200001010102010303"),I is D-47,nth(I,['''',',','member(D,"200001010102010303"),I is D-47,nth(I,[','],W),write(W),fail.'],W),write(W),fail.
15:07:23 <b_jonas> ^ that should work in prolog, modulo typos
15:07:27 <b_jonas> for some values of work
15:07:41 <vanila> neat :D
15:07:48 <vanila> youve ported the quineto J and prlog
15:07:54 <b_jonas> you might need to modify it so it starts and ends how you want (like, add a main predicate or something)
15:08:04 <b_jonas> vanila: actually, I'm quite sure the J quine was before the perl version
15:08:08 <ais523> b_jonas: that's very different from my approach
15:08:13 <ais523> I'm trying to do the data-structure approach
15:08:15 <ais523> rather than the literal approach
15:08:33 <b_jonas> ais523: I see
15:08:56 <b_jonas> vanila: if you wanted to be sure, you'd hvae to check the date in the edit history here: http://www.jsoftware.com/jwiki/Puzzles/Quine
15:09:02 <b_jonas> but I think it's older
15:22:17 <dulla> what is the join crap, vanila
15:27:46 -!- skj3gg has quit (Quit: ZZZzzz…).
15:35:03 -!- skj3gg has joined.
15:36:30 -!- adu has joined.
15:55:09 -!- skj3gg has quit (Quit: ZZZzzz…).
16:00:39 <ais523> quine:-asserta(a((quine:-asserta(a(A,B)),a(C,[D|E]),a(D,E),numbervars(C),write(C),write(.)),[A|B])),a(F,[G|H]),a(G,H),numbervars(F),write(F),write(.).
16:00:42 <ais523> that took me ages
16:00:53 <ais523> b_jonas: ^
16:01:08 -!- adu has quit (Quit: adu).
16:01:10 <ais523> the hard part was to make it work both as a data-structure quine /and/ as a literal quine
16:01:45 <b_jonas> ais523: looking
16:01:52 <ais523> it constructs a data structure equivalent to its own definition, then outputs it and a full stop
16:02:13 -!- SopaXorzTaker has quit (Ping timeout: 255 seconds).
16:02:20 <ais523> actually I think I can golf this slightly
16:02:27 <int-e> sigh, footnotes in the middle of formulas should be forbidden.
16:02:33 <vanila> that is interesting! why does iy use asserta
16:02:52 <ais523> quine:-asserta(a((quine:-asserta(a(A,B)),a(C,D+E),a(D,E),numbervars(C),write(C),write(.)),A+B)),a(F,G+H),a(G,H),numbervars(F),write(F),write(.).
16:03:02 <ais523> the reason for asserta is that I needed to write it all as one predicate
16:03:14 <ais523> basically it's to make a local definition
16:03:16 <vanila> ohh
16:03:28 <ais523> it's basically just "let a(A,B) = … in"
16:03:38 <b_jonas> ais523: what's numbervars?
16:03:40 <ais523> I should probably retract it at the end to clean up
16:03:59 <ais523> and numbervars(),write() is GNU prolog for writing out a predicate with all its free variables named with letters in alphabetical order
16:04:02 <vanila> thats really cool!
16:04:10 <ais523> it ensure that the variable names used on the output are the same as on the input
16:04:18 <b_jonas> I see
16:04:20 <ais523> without it, the quine still works but the variable names might be different
16:06:14 -!- KingOfKarlsruhe has left.
16:09:46 <b_jonas> ais523: I'm still trying to understand this
16:10:00 <vanila> a(F,G+H),a(G,H)
16:10:08 <vanila> i think thats the key bit
16:10:30 <ais523> yeah, that took me ages to figure out
16:12:17 <b_jonas> how does + even come into this?
16:12:27 <ais523> it's basically just cons
16:12:35 <ais523> /all/ Prolog operators are basically just cons
16:12:39 <ais523> until you try to pattern match on them
16:12:44 <b_jonas> sure
16:12:56 <ais523> I could have picked any binary operator, but + has a good precedence for making it readable
16:13:18 <vanila> i use - genrally
16:13:22 <vanila> A-B
16:13:30 <b_jonas> ah right, that's why you ad [D|E] before
16:13:32 <vanila> for diff lists
16:13:48 <ais523> yep, but | has an awful precedence for the purpose
16:15:14 <b_jonas> ah, tricky! you call a twice, and the second time unifies H with G+H
16:15:36 <ais523> yep
16:15:44 <ais523> Prolog is really hard to think about because the variable names change meanings all the time
16:15:48 <b_jonas> let me try to modify this
16:16:08 -!- SopaXorzTaker has joined.
16:17:08 -!- Tritonio has quit (Ping timeout: 252 seconds).
16:28:33 <b_jonas> ais523: that's a crazy quine. I think it's possible to write it without assert, but it would be much uglier and longer.
16:28:53 <ais523> I'd be interested in a non-asserting version
16:28:58 <ais523> the hard part is to get it all as a single predicate
16:29:13 <ais523> ooh, maybe you could do it with copy_term
16:29:15 * ais523 tries
16:29:25 <b_jonas> ais523: yes, you can emulate lambdas with copy_term
16:30:18 -!- sebbu has quit (Ping timeout: 250 seconds).
16:30:44 <b_jonas> basically you create an anonymous function like F=fun(body here,Param0,Param1), and then invoke it like (copy_term(F,fun(F0,argument here,other argument here)),F0),
16:31:08 <b_jonas> but I still don't really understand how you got this particular structure of this quine
16:35:29 <b_jonas> actually, you need a slightly more general representation if you want to allow bound variables in the anonymous functions
16:35:35 <b_jonas> I have some code for that
16:39:16 <b_jonas> ais523: http://dpaste.com/13KEQM6
16:39:32 <b_jonas> ^ that shows how to represent anonymous functions that can be closed over variables
16:39:46 <b_jonas> so if it's closed on variables, those variables must not be copied, but the free variables are copied
16:39:57 <coppro> C++ is a pretty amazing esoteric language
16:40:05 <b_jonas> coppro: sure
16:40:43 <ais523> oh, I see, the reason we can't directly translate the original into copy_term
16:40:49 <ais523> is because the name 'a' is no longer an atom
16:41:08 <b_jonas> what? it's anonymous, there's no name for it
16:41:37 <ais523> yeah, exactly
16:42:22 <b_jonas> re-reading this stuff sure shows why I dislike prolog
16:42:43 <vanila> this isnt normal prolog
16:42:54 <b_jonas> why do you need such a crazy helper function to just be able to use anonymous functinos?
16:43:02 <vanila> you are programming haksell
16:43:11 <vanila> but running it in prolog interpreter
16:43:46 <b_jonas> vanila: it's more like standard ML in a prolog interpreter, but yes
16:44:35 <b_jonas> I don't use lazyness
16:45:09 <b_jonas> well, I use prolog lazyness, but haskell lazyness
16:45:34 <vanila> gthat said,
16:45:42 <vanila> minikanren embedded in scheme works really great
16:45:52 <vanila> because you can easily pass relations around as values and things
16:46:47 <b_jonas> but yeah, given that I wrote iota(N, L) :- unfoldr(lambda(arg(H, H, F), (H < N, F is H + 1)), 0, L). I can see why you think it's like haskell
16:47:06 <b_jonas> it would be easier to write iota directly, without anonymous functions and unfoldr, but this is more fun
16:50:04 <ais523> I think the world could do with a modern update to Prolog
16:50:17 <ais523> that has things like scope, better functional features, and the like
16:50:26 <ais523> Prolog doesn't even ship with map and fold
16:50:31 <b_jonas> ais523: isn't there such a thing called Mozart?
16:50:41 <ais523> hmm, I hope so
16:51:01 <b_jonas> which even has functional syntax so you don't need to assign every intermediate results to named variables when you don't want to
16:51:50 -!- sebbu has joined.
16:52:06 <b_jonas> ais523: I think it's this one: http://mozart.github.io/
16:52:24 <vanila> minikanren you should see minikanre
16:52:24 <vanila> n
16:52:32 -!- sebbu has quit (Changing host).
16:52:32 -!- sebbu has joined.
16:52:33 <b_jonas> vanila: link?
16:53:40 <b_jonas> ais523: but anyway, yes, that's why I wrote that library
16:53:45 <b_jonas> because prolog doesn't even have a map builtin
16:55:57 <vanila> id ont have a good link for it
16:56:12 <vanila> i leaerned it from the book
16:56:49 <b_jonas> if I'm writing arrays of four floats in a binary file and I'm using arrays where the first two floats have certain nan values (represented as 0xffc0c708, 0xffcf9846) as sentry records, does that mean I'm strange?
16:57:11 <b_jonas> I mean, I could store lengths instead of sentries, I don't know why I did it this way
16:57:55 <vanila> i think thats a great way to do it :D
16:58:03 <b_jonas> vanila: oh, is it another of those languages like standard ML where you have to buy the language standard to be able to prorgam?
16:58:16 <b_jonas> because it's not available freely
16:58:18 <vanila> standard ML is free!
16:58:30 <b_jonas> is it now? where do I get the standard for free?
16:58:33 <vanila> https://github.com/SMLFamily/The-Definition-of-Standard-ML
16:58:36 <b_jonas> there are free interpreters for sure
16:58:45 <b_jonas> oh great, since when is that?
16:58:49 <vanila> veryrecent
16:59:04 <b_jonas> wow
16:59:08 <b_jonas> thanks for telling me that
16:59:41 <b_jonas> are they releasing this because there's a more recent standard (possibly in the future, under preparatoin) that they want us to buy?
17:00:44 <ais523> possibly because they're being outcompeted by ocaml
17:01:12 <b_jonas> ais523: ah
17:02:02 <vanila> maybe they realized the historical importance of preserving it
17:02:17 -!- MDream has changed nick to MDude.
17:02:21 <vanila> MIT Press has graciously allowed us to release this work in PDF form and continue to extend it again
17:05:41 -!- koo7 has joined.
17:08:09 -!- bb010g has quit (Quit: Connection closed for inactivity).
17:25:10 -!- AndoDaan has quit (*.net *.split).
17:25:10 -!- augur has quit (*.net *.split).
17:25:10 -!- TodPunk has quit (*.net *.split).
17:25:10 -!- J_Arcane has quit (*.net *.split).
17:25:10 -!- myndzi has quit (*.net *.split).
17:25:11 -!- tromp has quit (*.net *.split).
17:25:11 -!- Gregor has quit (*.net *.split).
17:25:11 -!- Vorpal has quit (*.net *.split).
17:25:12 -!- b_jonas has quit (*.net *.split).
17:25:12 -!- mroman has quit (*.net *.split).
17:25:12 -!- clog has quit (*.net *.split).
17:26:37 -!- GeekDude has joined.
17:31:41 -!- augur has joined.
17:31:41 -!- TodPunk has joined.
17:31:41 -!- J_Arcane has joined.
17:31:41 -!- myndzi has joined.
17:31:41 -!- tromp has joined.
17:31:41 -!- Gregor has joined.
17:31:41 -!- Vorpal has joined.
17:31:41 -!- b_jonas has joined.
17:31:41 -!- mroman has joined.
17:31:41 -!- clog has joined.
17:32:10 -!- ais523 has quit.
17:32:18 -!- callforjudgement has joined.
17:50:20 -!- adu has joined.
18:00:56 -!- adu has quit (Quit: adu).
18:03:22 -!- Warrigal has changed nick to tswett.
18:04:19 <tswett> It seems like there are a lot of things that everything is.
18:04:29 -!- vanila has left ("Leaving").
18:04:33 <tswett> Everything is a topological space. Everything is a Chu space. Everything is a category. Everything is a topos.
18:07:25 -!- SopaXorzTaker has quit (Remote host closed the connection).
18:21:23 -!- shikhin_ has joined.
18:24:50 -!- shikhin has quit (Ping timeout: 265 seconds).
18:26:47 -!- shikhin_ has changed nick to shikhin.
18:27:58 <HackEgo> [wiki] [[Iexp]] M http://esolangs.org/w/index.php?diff=41917&oldid=41648 * GermanyBoy * (+0)
18:38:04 -!- skj3gg has joined.
18:41:21 -!- arjanb has joined.
18:42:54 -!- bb010g has joined.
18:43:01 -!- AnotherTest has joined.
18:55:21 -!- GeekDude has quit (Changing host).
18:55:21 -!- GeekDude has joined.
18:55:43 -!- GeekDude has quit (Changing host).
18:55:43 -!- GeekDude has joined.
19:08:10 -!- skj3gg has quit (Quit: ZZZzzz…).
19:27:25 -!- hjulle has joined.
19:30:48 -!- skj3gg has joined.
19:37:00 -!- Koen_ has joined.
19:37:13 -!- skj3gg has quit (Quit: ZZZzzz…).
19:38:19 -!- PinealGlandOptic has joined.
19:41:50 -!- skj3gg has joined.
19:55:44 -!- Sgeo has joined.
20:01:54 -!- Patashu has joined.
20:03:43 -!- Sprocklem has joined.
20:22:18 -!- Patashu has quit (Ping timeout: 244 seconds).
20:24:23 <oren> tswett: You forgot, everything is an object, everything is a file, everything is a sequence of bytes
20:27:27 <oren> Also, in graphics everyhting is a bunch of triangles
20:27:38 <b_jonas> yeah
20:28:58 <oren> The desire to reduce everything to one thing is similar to the desire to find the simplest turing complete language
20:29:24 <b_jonas> ah yes, everything is also a function, and everything is a set
20:30:15 <oren> and everything is a list (of lists)
20:30:38 <Koen_> (of lists)
20:30:39 <Koen_> hi
20:31:25 <b_jonas> oh yes, everything is a list, as well as a List
20:31:35 <b_jonas> and everything is a value
20:32:27 <koo7> everything is nothing, without her
20:34:22 <Koen_> I would agree
20:42:24 -!- spiette has joined.
20:49:12 -!- skj3gg has quit (Quit: ZZZzzz…).
20:54:32 -!- SignX has joined.
20:57:18 <newsham> http://www.jsfuck.com/
21:07:10 <b_jonas> .i ro sazri se karce cu na kakne lo nu pu za jdice lo ve klama
21:07:20 <b_jonas> wrong channle
21:09:06 <Koen_> you shouldn't have said, no one would have noticed
21:09:50 <Koen_> in fact someone might have been about to answer
21:10:35 <b_jonas> I think I typed the context that explains it in the right channel
21:11:50 <Koen_> is the language part of the context?
21:12:18 <b_jonas> the language can be guessed. the context might be hard.
21:14:53 <callforjudgement> it doesn't look much like Hungarian
21:19:20 <oren> looks like esperanto
21:19:42 <oren> no wait lojban
21:20:07 <oren> yes. it's def. lojban
21:21:31 -!- copumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…).
21:23:20 <b_jonas> oren: yes, it's lojban. you can sometimes recognize lojban from the way it has apostrophe between two vowels not following "q", but that doesn't occur in this text
21:23:31 <b_jonas> so it's not so obvious
21:23:44 <oren> I recognized the . at the beginninh
21:23:45 <b_jonas> still, ".i" is a give-away
21:23:50 <b_jonas> yes, that
21:25:25 <newsham> does it read backwards? why does it "start" with dot?
21:25:42 <oren> th dot is a glottal stop iirc
21:28:01 <oren> so .i would be sort of like a catch in your throat followed by English "ee".
21:29:58 <newsham> bossy language. what if i want to catch my breath later? :)
21:30:09 -!- skj3gg has joined.
21:30:37 <b_jonas> newsham: dot means a pause, it doesn't matter whether it's attached to after a word or before the next, but it's usually written next to the word that requires the pause
21:32:02 <HMC_A> /window 10
21:32:06 <HMC_A> doh
21:38:24 -!- Sprocklem has quit (Ping timeout: 250 seconds).
21:40:22 -!- callforjudgement has quit.
21:46:23 -!- skj3gg has quit (Quit: ZZZzzz…).
21:53:17 -!- Sprocklem has joined.
22:02:22 -!- ProofTechnique has quit (Ping timeout: 245 seconds).
22:04:42 -!- SignX has quit (Quit: Page closed).
22:15:14 -!- villasukka has joined.
22:18:35 -!- skj3gg has joined.
22:29:08 -!- Koen_ has quit (Quit: The struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own. "W-will you... Will you union me?").
22:33:03 -!- skj3gg has quit (Quit: ZZZzzz…).
22:35:25 -!- AnotherTest has quit (Remote host closed the connection).
22:42:12 -!- skj3gg has joined.
22:43:16 -!- oerjan has joined.
22:46:21 <dulla> > let iter a b = a+b +1 in let again = 1:1: zipWith iter again (tail again) in take 8 again
22:46:22 <lambdabot> [1,1,3,5,9,15,25,41]
22:46:47 <dulla> > let iter a b = a+b +1 in let again = 1:1: zipWith iter again (tail again) in unwords . map show . take 8 $ again
22:46:49 <lambdabot> "1 1 3 5 9 15 25 41"
22:48:06 <oerjan> @messages-
22:48:06 <lambdabot> ais523 said 8h 31m 8s ago: I picked 25 because that's when patents expire
22:48:10 <oerjan> fiendish
22:49:37 <dulla> ?
22:49:58 <oerjan> patents are evil hth
22:55:27 <olsner> `quote patents
22:55:34 <olsner> `? patents
22:55:35 <HackEgo> 457) <itidus20> software patents strike again <ais523_> that's got to be at least three times, now <ais523_> are they out yet? \ 1059) <kmc> patents do seem to encourage innovation, but much of it is innovation on how to make things slightly worse to avoid patents
22:55:46 <HackEgo> patents? ¯\(°​_o)/¯
22:59:38 <int-e> patents are devices that allow lawyers to profit from other people's inventions.
23:00:21 <dulla> I know a patent lawyer that knows that feel
23:00:47 <dulla> I tihnk a really long paper was written about the entirety of the patent system
23:00:55 <dulla> I should ask them for it
23:01:10 <dulla> Though it'd send them right out of a job, they are retiring age anyways
23:01:25 <tswett> oren: ah, but in mathematics, almost nothing is a sequence of bytes!
23:02:05 <tswett> Unless you're the kind of mathematician who believes that the only objects which "really exist" are computer programs.
23:02:14 <tswett> And things representable as computer programs.
23:02:31 <oren> the only objects that really exist are, um, actual objects
23:02:49 <oren> like laptops, or coffee beans
23:02:50 <dulla> We need more stallman in this channel
23:02:51 <MDude> Um ins't an object.
23:03:01 <MDude> *isnt'
23:03:05 <tswett> The "antimathematician", who believes that no abstract mathematical objects exist at all.
23:03:16 <dulla> Too bad
23:03:17 <dulla> They do
23:03:26 <dulla> What isn't a category
23:03:36 <tswett> Addition is commutative? Well, it depends on which sorts of objects you're moving around.
23:04:16 <tswett> What if they're, say, water and sulfuric acid? Any chemistry student knows that water plus sulfuric acid is not the same thing as sulfuric acid plus water.
23:05:12 <MDude> But adding acid to watta is how you oughtta.
23:05:12 <oren> in one case, an accident waiting to happen (the acid will sploosh) in the other way it is safe
23:05:36 <oren> I know that from grade 12 chem
23:06:18 <MDude> I can't beleive Nethack supposedly thinks of everything, but makes water the only clear potion.
23:06:51 <int-e> magick
23:06:56 <oren> IRL most liquids are clear
23:07:01 <tswett> Actually, Nethack characters perceive the world entirely through scent. Water is the only unscented potion.
23:07:34 * oerjan hands oren some tea water with hardly any polonium in it
23:07:47 <MDude> Johnny was a Chemist's Son would make a great special death screen, though.
23:07:49 <tswett> How can they make out detailed images, you ask?
23:07:58 <olsner> I remember the reason for the rule, but then I learnt the rule both backwards and forwards, so I don't know what you're supposed to do to avoid the acid splashing accident
23:08:27 <oren> add acid to water, and use a stirring stick to guide the stream
23:08:36 <MDude> Acid to watta, just like you outta.
23:08:37 <olsner> luckily I haven't had a reason to mix acid and water
23:08:56 <MDude> Not water to acid, that's stupid and placid.
23:09:13 <tswett> Simple. They have special organs which smell photons. The photons are focused by refractive elements.
23:09:26 <tswett> Of course, "placid" means "peaceful". (Right?)
23:09:27 <olsner> Water In Acid spells "wise" in swedish, so it sounds like that would be the rule :)
23:11:41 <oren> technically, making mixed drinks usually involves mixing acids with water
23:11:52 <oren> just not strong ones
23:11:58 <oerjan> olsner: syre og vann går an, men vann og syre er uhyre hth
23:12:00 <pikhq> Though *typically* you don't make mixed drinks with particularly dangerous acids.
23:12:09 <MDude> I meant lazy.
23:12:28 <oerjan> wait
23:12:32 <olsner> oerjan: mange takk
23:12:33 <oerjan> s/og/i/g
23:12:44 <pikhq> I guess unless you consider Coke. It's dilute, but Coke has phosphoric acid in it.
23:12:49 <pikhq> Which can be crazy dangerous.
23:13:08 <oren> Coca cola is a common part of mixed drink
23:13:33 <oren> so you should add coca cola to rum, not the other way round
23:13:50 -!- spiette has quit (Quit: :qa!).
23:14:11 <tswett> But the rule applies specifically to sulfuric acid, doesn't it?
23:14:26 <pikhq> It's true of most possibly-dangerous acids.
23:14:35 <pikhq> I think just more so of sulfuric.
23:14:46 -!- copumpkin has joined.
23:14:47 <oren> when i learned it we were using hydrochloric acid
23:15:37 <tswett> Now, suppose you dilute sulfuric acid to the point where it just has a mildly sour taste.
23:15:47 <tswett> How dangerous would it be to drink?
23:16:35 <tswett> Arright, I'm going to see if the definition of a topos allows you to define a topos in a topos.
23:17:00 <pikhq> I can't imagine it would be very good to drink. Sulfur is not particularly good in biology.
23:17:10 <oerjan> r.i.p. tswettception
23:18:22 <oren> I imagine hydrochloric acid would be safer
23:18:47 <oren> where does the chlorine in salt you eat go?
23:19:17 <tswett> Does it go into urine?
23:19:53 <tswett> I've read tiny bits about the medical significance of positive ions like sodium and potassium, but I don't know anything about the significance of chloride.
23:20:04 <tswett> Except that it's in stomach acid.
23:20:25 <pikhq> Chloride ions are apparently used in the kidneys.
23:20:51 <pikhq> And a few other random weird places.
23:21:16 <tswett> Yeah, but how do they exit the body?
23:21:33 <pikhq> Oh, huh. For instance it's used to balance the acidity of the blood.
23:21:48 <pikhq> Probably urine.
23:22:28 <pikhq> Actually definitely.
23:22:45 <tswett> Lessee. A topos is a category with all equalizers, all finite products, and all power objects?
23:23:23 <pikhq> So there you go. It's used in the body and excess is excreted in urine.
23:23:54 <int-e> tswett: apparently, sodium sulfate is not toxic, so the main danger of sulfuric acid should be its corrosiveness
23:24:04 <pikhq> Ah. Well then, there you go.
23:24:04 <oren> oh, duh silly me. stomach acid -is- HCl, so of course HCl would be safe to eat as long as it's not strong enough to burn
23:24:11 <zzo38> I am also believing patent is bad things. Maybe it may have been a bit useful much in the past, but these days it is very bad.
23:25:26 -!- Lymia has quit (Ping timeout: 250 seconds).
23:25:59 <tswett> Now, how would you define a "topos in a topos"...
23:26:57 <tswett> There'd have to be an object Ob which is the object of objects.
23:27:31 <tswett> Then what you want is a family Ar of objects indexed by Ob * Ob.
23:27:40 <tswett> Of course, Ob * Ob need not be a set.
23:28:33 <oerjan> i vaguely recall that sweat also contains salt
23:30:19 <oerjan> oh hm seems to be sodium but not chlorine
23:30:51 <olsner> hm, so sweating a lot will leave you with excess chlorine?
23:33:37 -!- contrapumpkin has joined.
23:36:42 -!- copumpkin has quit (Ping timeout: 250 seconds).
23:39:32 <zzo38> Is Unlicensed files OK on esolang wiki? Is WTFPL licensed files OK on esolang wiki? Unlicense is public domain too like CC0 is; I believe WTFPL is also effectively public domain, but I don't know what wiki administration would have you believe about such thing.
23:40:38 -!- contrapumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…).
23:41:07 <zzo38> (The WTFPL license text itself though requires only that modified versions of the license aren't called the same as the original.)
23:42:12 -!- skj3gg has quit (Quit: ZZZzzz…).
23:43:15 -!- skj3gg has joined.
23:43:34 <tswett> You certainly can't put copyrighted stuff there without a license.
23:43:52 -!- teuchter has quit (Read error: Connection reset by peer).
23:43:56 <oerjan> zzo38: i'm guessing the problem might be that simple licenses like WTFPL won't successfully release as many rights as CC0 in all jurisdictions?
23:45:27 <oerjan> the secondary problem is that even if it does, it would take significant work from lawyers to clarify that it does
23:45:34 <zzo38> I believe it does allow you to relicense it under CC0 and treat it as if it is always CC0.
23:46:07 <oerjan> well if it says so explicitly it should be ok?
23:46:13 <oerjan> ->
23:46:48 <tswett> That would be an interesting copyright license: "You are permitted to release this work under any license."
23:46:48 <zzo38> Well, it just says that you "DO WHAT THE FUCK YOU WANT TO"; they say that implies anything can be done, so that would include relicensing under CC0 like that
23:47:07 <zzo38> Or making it just public domain if that is legal in your jurisdiction
23:47:09 <tswett> It doesn't actually let you do much directly, but you could just give yourself a license to do whatever.
23:47:24 <tswett> Unfortunately, making things public domain is a felony in my jurisdiction.
23:47:27 <tswett> (NB: Just kidding.)
23:47:53 <zzo38> The only restriction is that modified version of the license itself cannot be called WTFPL.
23:48:40 <olsner> is there a discordian license?
23:48:56 <zzo38> Nevertheless it seems unlikely that any program licensed by WTFPL is one you would likely need to post on esolang wiki, but it is something that might happen.
23:49:17 <zzo38> olsner: I don't know. I think it is just public domain isn't it?
23:49:39 <MDude> You may use software under this license only if you disregard the terms of this license.
23:51:07 <olsner> You may release this work under any license except this license or any other license the work has previously been released under.
23:51:30 -!- Tritonio has joined.
23:52:14 <olsner> needs more work, it should require that the new license includes that clause or something sufficiently like it
23:52:44 <MDude> Step 1: Sells software usnder a closed source license with a "this licesne may be changed at time without notice" clause.
23:52:58 <MDude> Step 2: Wait for it to be sued widely among software developers.
23:53:09 <tswett> You may release this work under any license L as long as you can give a proof that L does not allow anyone to release the work under this license.
23:53:31 <MDude> Step 3: Without notice, change your license to make it so anyone using it needs to relase any software developed on the same comptuer to the public domain.
23:54:12 <olsner> tswett: only "this license"? not L too?
23:54:47 <tswett> "This license", yes.
23:55:13 <MDude> This license isn't indicate dto be L, though.
23:55:33 <tswett> "This license" is the license I just stated, not L.
23:55:49 <MDude> Yeah.
23:56:09 -!- skj3gg has quit (Quit: ZZZzzz…).
←2015-02-15 2015-02-16 2015-02-17→ ↑2015 ↑all