00:04:16 -!- Akaibu has quit.
00:06:45 -!- boily has quit (Quit: MELTING CHICKEN).
00:13:12 -!- erkin has quit (Quit: Ouch! Got SIGABRT, dying...).
00:18:11 -!- oerjan has joined.
00:25:46 <oerjan> my touchpad driver has an annoying feature where sometimes if i scroll down a bit (with two fingers) and release, it immediately starts scrolling fast in the opposite direction... is this common?
00:28:00 <oerjan> hm i cannot seem to reproduce it on purpose
00:28:04 <shachaf> Are you maybe accidentally touching it in another place at the same time?
00:28:16 <shachaf> It sounds familiar but I don't think I've had that exact issue.
00:28:56 <oerjan> could be? i've tried to disable all manner of extra gestures (although the driver keeps removing options, now it no longer allows me to do nothing for 3 fingers)
00:29:30 <shachaf> have you tried installing a different operating system hth
00:30:23 <oerjan> also this is in IE, so technically that could have the blame too...
00:30:50 <shachaf> Is the channel topic supposed to be quoting that Adams thing?
00:31:00 <shachaf> If so, it's doing it very badly.
00:31:23 * oerjan doesn't use any other programs with scrolling, so wouldn't know
00:31:55 <oerjan> it is. what would be better?
00:32:45 -!- oerjan has set topic: The channel almost, but not quite, entirely without esolang discussions | http://esolangs.org/ | logs: http://codu.org/logs/_esoteric/ http://tunes.org/~nef/logs/esoteric/?C=M;O=D | https://dl.dropboxusercontent.com/u/2023808/wisdom.pdf | For extensive phở testing, use #esoteric-blah.
00:32:55 <oerjan> i guess i should have actually looked it up
00:35:45 <ais523> incidentally, there's a PPCG question that's a miniature esolang design contest
00:35:53 <ais523> I've designed an esolang for it but am having problems proving it TC
00:36:06 <ais523> which is not surprising, as the language is something of a cross between Incident and Malbolge
00:37:08 <oerjan> . o O ( just use Malbolge Unshackled hth)
00:38:00 <oerjan> did y'all prove that other thing I/O-complete yet?
00:38:24 <oerjan> someone said it had spread to a discord chat
00:40:44 <oerjan> ais523: if it combines incident's ability to use whichever tokens with malbolge's insistence of having specific character subsets in specific spots, it could get awkward
00:40:56 <ais523> what other thing? []+=`?
00:41:22 <ais523> well, the language is much more elegant than Incident /or/ Malbolge
00:42:02 <ais523> also less syntactically complex than either, which is probably good for my sanity
00:45:54 <HackEgo> Invalid option "-e test" \ Usage: java org.mozilla.javascript.tools.shell.Main [options...] [files] \ Valid options are: \ -?, -help Displays help messages. \ -w Enable warnings. \ -version 100|110|120|130|140|150|160|170 \ Set a specific language version. \ -opt [-1|0-9] Set opti
00:46:07 <HackEgo> js: uncaught JavaScript runtime exception: ReferenceError: "test" is not defined.
00:46:24 <oerjan> `` rhino -e print "Hi"
00:46:26 <HackEgo> js: Couldn't read source file "Hi: Hi (No such file or directory)".
00:46:37 <oerjan> `` rhino -e 'print "Hi"'
00:46:39 <HackEgo> js: "<command>", line 1: missing ; before statement \ js: print "Hi" \ js: .........^
00:46:55 <oerjan> `` rhino -e 'print "Hi";'
00:46:56 <HackEgo> js: "<command>", line 1: missing ; before statement \ js: print "Hi"; \ js: .........^
00:47:24 <fizzie> `` rhino -e 'print("Hi");' # it's just a function call
00:47:47 <oerjan> . o O ( did i mention i don't actually know javascript )
00:48:08 <oerjan> `mkx rhino-e//rhino -e "$1"
00:48:38 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: rhino-e: not found
00:51:28 <oerjan> `rhino-e print(+[]==+[]);
00:51:44 <oerjan> `rhino-e print(+[]==[]);
00:52:21 <oerjan> `rhino-e print(+[]==[]+[]);
00:52:35 * oerjan isn't doing this very well
00:52:43 <ais523> `rhino-e print([]==[]_
00:52:44 <ais523> `rhino-e print([]==[])
00:52:45 <HackEgo> js: "<command>", line 1: missing ) after argument list \ js: print([]==[]_ \ js: ............^
00:53:48 <oerjan> `rhino-e print([][+[]]);
00:54:53 <oerjan> `rhino-e print([][+[]][+[]]);
00:54:55 <HackEgo> js: uncaught JavaScript runtime exception: TypeError: Cannot read property "0.0" from undefined
00:55:17 <fizzie> `js print("we had this");
00:55:20 -!- FreeFull has quit (Ping timeout: 260 seconds).
00:55:27 <HackEgo> http://hackego.esolangs.org/fshg/index.cgi/file/tip/bin/js
00:55:52 <fizzie> I was going to move your rhino-e into bin/js for simplicity, but there was one already.
00:56:01 <fizzie> It's a lot more elaborate.
00:56:25 <fizzie> Can't get an URL to that. :/
00:56:54 <fizzie> I'm guessing it might look quite similar except without the "-e".
00:57:24 <HackEgo> /usr/bin/rhino: POSIX shell script, ASCII text executable
00:57:36 <HackEgo> 1/2:#!/bin/sh \ \ JAVA_CMD="/usr/bin/java" \ JAVA_OPTS="" \ JAVA_CLASSPATH="/usr/share/java/js.jar:/usr/share/java/jline.jar" \ JAVA_MAIN="org.mozilla.javascript.tools.shell.Main" \ \ ## \ ## Remove bootclasspath overriding for OpenJDK since \ ## it now use a mangled version of Rhino (in sun.org.mozilla.rhino package) \ ## \ ## Referen
00:57:55 <oerjan> `` diff /usr/bin/rhino bin/js
00:57:56 <HackEgo> 8,11c8,10 \ < ## \ < ## Remove bootclasspath overriding for OpenJDK since \ < ## it now use a mangled version of Rhino (in sun.org.mozilla.rhino package) \ < ## \ --- \ > ## Fix for #512498 \ > ## Change Bootclasspath when using OpenJDK because OpenJDK6 \ > ## bundle his own release of Rhino. \ 16c15,19 \ < ## \ --- \ > isOpenJDK=`$JAVA_CMD -versi
00:58:25 <fizzie> Probably a different version.
00:58:50 <fizzie> sled bin/js//s,\$@,$*,
00:58:56 <fizzie> `sled bin/js//s,\$@,$*,
00:58:58 <HackEgo> bin/js//#!/bin/sh \ \ JAVA_CMD="/usr/bin/java" \ JAVA_OPTS="" \ JAVA_CLASSPATH="/usr/share/java/js.jar:/usr/share/java/jline.jar" \ JAVA_MAIN="org.mozilla.javascript.tools.shell.Main" \ \ ## Fix for #512498 \ ## Change Bootclasspath when using OpenJDK because OpenJDK6 \ ## bundle his own release of Rhino. \ ## References: \ ## <https://bugs.launc
00:59:39 <fizzie> I don't think the "$@" was really a good idea there, because there was already that implicit -e. True, you could provide extra arguments, but they would have had to go *after* the source.
01:02:33 <oerjan> `js print([[][+[]]+[]][+[]][+[]]);
01:03:22 -!- hppavilion[1] has joined.
01:05:37 <shachaf> fizzie: No one's using `edit #scow
01:07:54 <fizzie> I don't think people have been editing much in general.
01:16:01 <Phantom__Hoover> fizzie, how does x86 protected mode segmentation work again
01:16:29 <Phantom__Hoover> like does it actually involve segment registers or is it a page table type thing
01:17:16 <fizzie> It does sort of involve segment registers, in that you put "descriptors" in them, and the descriptors are basically some flag bits + an index into one of the descriptor tables.
01:17:43 <fizzie> And the descriptor table entry then contains the segment base address, limit (size) and more boring bits.
01:18:57 -!- krok_ has quit (Remote host closed the connection).
01:19:24 <fizzie> Well, I mean, everyone pretty much just configures it to be as close to a flat memory model as possible, and just does "architectural" things with segments.
01:19:46 <fizzie> So C pointers are just the offset part, and the segments are implied from context.
01:22:36 <fizzie> Sorry, terminology fail on my behalf.
01:22:43 <fizzie> What you load in the segment register is a "selector".
01:23:01 <fizzie> A "descriptor" is the descriptor table entry, which is what the selector is referring to.
01:23:19 <int-e> in 64 bit mode, the segment registers are actually forced to cover the whole 64 bit address space, with the exception of gs, which has a base stored in an MSR.
01:24:25 <fizzie> And there was something a little complicated with the vestigial segmentation in 64-bit mode.
01:24:46 <int-e> (hmm, I wonder what the intended use for the second one is... thread local storage, and user accessible part of some kernel level thread info?
01:25:22 <fizzie> Something like while the fs/gs base was in an MSR so that you could load a full 64-bit address there, you could also load them via descriptors, or some-such.
01:25:48 <Phantom__Hoover> fizzie, well right, i'm aware that in practice it was just flat
01:26:06 <int-e> (and I have no real need to find out either)
01:26:15 <Phantom__Hoover> but i'm curious how, conceptually, you're meant to represent non-flat pointers in the c memory model
01:27:05 <fizzie> Phantom__Hoover: Well, I mean, you could implement it so that pointers (segment selector, offset) pairs, and every memory allocation adds a new segment descriptor in the table.
01:27:24 <pikhq> If you intend to have *standard* C semantics, you'd have to have pointers be (segment selector, offset) pairs.
01:27:27 <fizzie> (You'd run out of descriptors pretty fast.)
01:27:48 <pikhq> And if you wish to have objects span segments (e.g. real mode segments) you need to have complicated pointer arithmetic.
01:28:22 <fizzie> Phantom__Hoover: Well, because then deallocation would be just removing the descriptor.
01:28:36 <fizzie> So okay, you wouldn't exactly "need" that.
01:28:51 <fizzie> But it's the obvious kind of mapping for leveraging all the segmentation synergies.
01:31:11 <fizzie> Also the one where you could conceivably get into trouble with invalid pointers before actually dereferencing them, since loading an invalid selector to a segment register would cause a #GP.
01:31:40 <fizzie> Though I can't think of a concrete example where you'd be doing that without intending to access some memory there.
01:32:15 <pikhq> The somewhat more likely use case would be using it a bit like (crap) pages.
01:32:42 <pikhq> Particularly for the 286's 16-bit protected mode.
01:34:17 <fizzie> pikhq: For context, this was re the C rationale's explanation for why any use of an invalid pointer is undefined, not only dereferencing: http://sprunge.us/SfKi
01:35:20 <pikhq> I suspect such an implementation would be *most* likely on a VM architecture.
01:35:34 <shachaf> There was some non-segmented architecture that that was problematic for, wasn't there?
01:35:50 <pikhq> ... Say, one crafted to make C memory fuckups hard to do anything with other than crash.
01:35:59 <shachaf> when are we all switching to the mill twh
01:37:00 -!- ais523 has quit.
01:38:29 <shachaf> pikhq: you should invest your spare CHF in mill computing inc. hth
01:39:18 * pikhq screws up, invests it in a computerized flour mill
01:43:00 -!- Jafet has quit (Ping timeout: 268 seconds).
01:43:05 <oerjan> darn, there computing progress ground to a halt
01:44:33 <shachaf> computing progress goes boinc
01:49:38 <fizzie> shachaf: People always mention that "some computers" [weasel words][citation needed] will cause a fault of some sort if you load an invalid pointer to an "address register", but they never seem to actually cite sources.
01:49:55 <HackEgo> [wiki] [[Talk:///]] https://esolangs.org/w/index.php?diff=51097&oldid=45032 * Challenger5 * (+437)
01:55:02 <fizzie> "I remember this coming up when we were considering porting Multics to a (then) new Honeywell process (I think it was the DPS/88). -- The new hardware trapped when loading addresses into pointer registers, --" (random forum posting)
01:56:07 <fizzie> Ah, here's a little better quote, with an example as well: https://groups.google.com/forum/#!topic/comp.std.c/VoPl6SiejEk
01:56:09 -!- Jafet has joined.
01:56:15 <fizzie> (Maybe should've gone to comp.std.c in the first place.)
02:10:46 <HackEgo> [wiki] [[Talk:///]] https://esolangs.org/w/index.php?diff=51098&oldid=51097 * Oerjan * (+117) /* Even Faster Counter */ *BONK*
02:13:34 <zzo38> I thought the "Future Systems" computer would be error if you load an invalid address?
02:24:12 -!- Jafet has quit (Ping timeout: 240 seconds).
02:38:28 -!- Jafet has joined.
02:38:33 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
02:50:41 <HackEgo> [U+0078 LATIN SMALL LETTER X] [U+0020 SPACE] [U+0061 LATIN SMALL LETTER A] [U+006E LATIN SMALL LETTER N] [U+0064 LATIN SMALL LETTER D] [U+0020 SPACE] [U+0078 LATIN SMALL LETTER X]
03:23:00 <HackEgo> [U+006C LATIN SMALL LETTER L] [U+006F LATIN SMALL LETTER O] [U+006C LATIN SMALL LETTER L]
03:39:50 -!- Jafet has quit (Ping timeout: 260 seconds).
03:44:48 -!- Jafet has joined.
04:46:13 -!- Jafet has quit (Ping timeout: 260 seconds).
05:00:09 -!- Jafet has joined.
05:08:47 -!- oerjan has quit (Quit: Nite).
05:22:54 -!- xfix has joined.
05:25:40 -!- zgrepc_ has joined.
05:26:45 -!- xfix_ has quit (Quit: No Ping reply in 180 seconds.).
05:28:27 -!- nitrix_ has joined.
05:29:58 -!- hppavilion[1] has quit (Ping timeout: 240 seconds).
05:30:05 -!- APic has quit (Ping timeout: 255 seconds).
05:33:29 -!- lynn has quit (Ping timeout: 252 seconds).
05:33:29 -!- zgrepc has quit (Ping timeout: 252 seconds).
05:33:29 -!- nitrix has quit (Ping timeout: 252 seconds).
05:35:12 -!- zgrepc_ has changed nick to zgrepc.
06:04:06 -!- MDude has joined.
06:34:28 -!- Jafet has quit (Ping timeout: 240 seconds).
06:39:39 -!- Jafet has joined.
06:48:13 -!- hppavilion[1] has joined.
07:20:37 -!- lynn has joined.
09:04:06 -!- Jafet has quit (Quit: Jafet).
09:22:59 -!- augur has quit (Remote host closed the connection).
09:47:19 -!- AnotherTest has joined.
09:54:57 -!- erkin has joined.
09:56:15 -!- Jafet has joined.
09:57:22 -!- vasya_ has joined.
10:08:47 -!- augur has joined.
11:03:29 -!- APic has joined.
11:10:53 -!- Zarutian has joined.
11:16:29 -!- erkin has quit (Quit: Ouch! Got SIGABRT, dying...).
11:19:54 -!- Lord_of_Life has quit (Excess Flood).
11:21:59 -!- Lord_of_Life has joined.
11:22:01 -!- vasya_ has left.
11:43:24 -!- DHeadshot has joined.
11:55:26 -!- LKoen has joined.
12:01:28 -!- hppavilion[1] has quit (Ping timeout: 240 seconds).
12:04:12 -!- 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.”).
12:35:41 -!- augur_ has joined.
12:38:43 -!- kiko has joined.
12:39:23 -!- augur has quit (Ping timeout: 255 seconds).
12:54:11 -!- kiko has left ("ByrdIRC").
13:10:23 -!- FreeFull has joined.
13:19:04 -!- augur_ has quit (Remote host closed the connection).
13:38:54 -!- DHeadshot has quit (Ping timeout: 260 seconds).
14:52:44 -!- ^v has quit (Ping timeout: 240 seconds).
14:58:21 -!- ^v has joined.
14:59:10 -!- ^v has quit (Excess Flood).
14:59:18 -!- ^v has joined.
15:00:34 -!- Jafet has quit (Ping timeout: 260 seconds).
15:02:27 -!- DHeadshot has joined.
15:13:07 -!- Jafet has joined.
15:40:32 -!- atrapado_ has joined.
16:02:49 -!- LKoen has joined.
16:44:09 -!- oerjan has joined.
16:44:59 <oerjan> well that was a fast log to read
16:46:52 -!- wob_jonas has joined.
16:47:15 <wob_jonas> wow, you're so fast today, HackEgo
16:47:53 <oerjan> wtf do you have that temperature at this season
16:52:51 <int-e> the quick-footed shadowboxing oerjan jumps over the lazy log
16:54:07 <oerjan> > nub $ sort "the quick-footed shadowboxing oerjan jumps over the lazy log"
16:54:08 <int-e> . o O ( almost surfing at the speed of light! )
16:54:54 <oerjan> hm thought you'd missed the r but there's another one.
16:55:51 <int-e> okay, another one, if you look at what's left of the original
16:56:47 <oerjan> yeah, right, that's TOTALLY what i did, um.
16:58:52 <int-e> shachaf: have you looked at "girls love robots"?
17:00:27 <oerjan> . o O ( "my boyfriend is so metal" )
17:01:27 <int-e> girls love robots and pizza and hate nerds; however they don't mind being near nerds if they have pizza.
17:01:47 <int-e> I'm not sure what kind of message this game is supposed to convey, but the puzzles are kind of fun.
17:02:16 <int-e> (though very repetetive, but there are a few cute twists)
17:04:01 <HackEgo> repetive:A repetive action is one that tries to repeat something, but fails miserably.
17:06:31 <shachaf> int-e: when you said you did some nonobvious puzzles, did you mean that the solutions were nonobvious or that the puzzles themselves were nonobvious twh
17:12:54 <int-e> shachaf: the former. one case where I had trouble finding the right rule because the training example I encountered at first were too simple.
17:13:21 <int-e> and maybe two cases where the environment played into the puzzle in a surprising way
17:15:45 -!- Phantom_Hoover has joined.
17:36:27 <DHeadshot> The spec of the language I'm writing contains the following text: 'Please note that if `A` is a Character variable containing `"7"` and `B` is a Character variable containing `"0"` and `C` is a String variable containing `"0"`, that `A - B` yields a Character containing BEL (the Bell Character), but that `A - C` yields a String `"55"` (55 being the ASCII value of 7).'
17:38:26 <DHeadshot> It makes sense when you think really hard about it, but not much to the average user...
17:39:00 <DHeadshot> Note that if both "7" and "0" are strings, the result is "7" (a string).
17:41:44 <DHeadshot> At least it's not a BrainFuck clone...
17:44:14 <oerjan> "At least it's not a BrainFuck clone" may be a little weird, but at At least it's not a BrainFuck clone.
17:52:35 <DHeadshot> Incidentally, this function I've been working on for about a week is now 4000 lines long and counting... I probably should have broken it up more.
17:54:53 <DHeadshot> And it's not even finished, though I may be half-way through now...
18:08:46 <zzo38> You mention "The Witness" game but do you know "The Wit.nes" game?
18:22:30 <HackEgo> 614) * oerjan concludes that unsafeCoerce has no effect on strictness
18:23:16 <int-e> why would it, beyond possibly confusing the strictness analysis...
18:24:19 <oerjan> if you converted a lazy field to a strict one, perhaps. i don't remember what i was testing.
18:24:59 <oerjan> hm how does unsafeCoerce work with the new levity stuff...
18:25:55 <int-e> @quote kind-preserving
18:25:56 <lambdabot> int-e says: What, unsafeCoerce# is kind-preserving? how boring :/
18:26:07 <int-e> . o O ( is that still true? )
18:34:01 <HackEgo> Which of You Burns Brightest?
18:34:58 <oerjan> :t GHC.Prim.unsafeCoerce#
18:35:11 <oerjan> i got something else in ghci
18:35:23 <oerjan> forall (q :: GHC.Types.RuntimeRep) (r :: GHC.Types.RuntimeRep) (a :: TYPE
18:35:45 <oerjan> which looks like it _doesn't_ require the same kind
18:37:25 <oerjan> int-e: so, apparently no.
18:39:33 <oerjan> Prelude GHC.Prim> unsafeCoerce# (1# :: Int#) :: Int
18:39:33 <oerjan> Segmentation fault/access violation in generated code
18:40:36 <lambdabot> ghc says: Dangerous-looking argument. Probable cause: bad unsafeCoerce#
18:40:44 <shachaf> Oh, I meant the one above.
19:04:31 <zzo38> GHC has a -XUnicodeSyntax extension, but I think should also have -XAntiUnicodeSyntax extension which allow you to import modules that have names containing non-ASCII characters without needing any non-ASCII characters in your own file.
19:05:02 <zzo38> (You can combine these extensions, although there wouldn't be much point in doing so.)
19:05:31 <oerjan> the Haskell standard is Unicode-based, deal with it.
19:09:34 <zzo38> JavaScript allow you to avoid needing non-ASCII character in your file even if importing something that does use non-ASCII character in their identifiers, by using \u in the names. The same syntax would not be suitable for Haskell so a new kind should be needed
19:10:06 <oerjan> you can probably do it with template haskell
19:14:34 -!- LKoen has quit (Remote host closed the connection).
19:15:33 <zzo38> Yes, I suppose so. That would be a way to do it without a new extension
19:27:23 -!- oerjan has quit (Quit: Later).
19:27:38 -!- erkin has joined.
20:03:04 -!- augur has joined.
20:15:13 -!- augur has quit (Remote host closed the connection).
20:52:34 -!- augur has joined.
21:11:21 -!- sebbu2 has joined.
21:14:24 -!- sebbu has quit (Ping timeout: 240 seconds).
21:20:50 -!- LKoen has joined.
21:31:19 -!- Phantom_Hoover has quit (Remote host closed the connection).
21:35:03 -!- Phantom_Hoover has joined.
21:42:21 -!- atrapado_ has quit (Quit: Leaving).
21:45:14 -!- DHeadshot has quit (Ping timeout: 255 seconds).
22:20:06 -!- yorick_ has changed nick to yorick.
22:29:57 <zzo38> Another thing is that although JavaScript has this "anti-Unicode" syntax it is not needed so much as Haskell would be, due to how JavaScript is working.
22:36:37 <wob_jonas> because of that proof that shows you can write any javascript with like just six different characters or something
22:37:17 -!- AnotherTest has quit (Quit: ZNC - http://znc.in).
22:40:38 <zzo38> Yes, although it isn't really what I quite meant anyways; I meant having to do with how objects in JavaScript, you will have all of the functions imported from another module probably as properties on some object, so you can use the [ ] syntax to access instead of . syntax so it can be a string literal or a string constant name (declared by "const" at the top of your program for example)
22:42:08 <wob_jonas> zzo38: yes, that's basically what that ()[] javascript thingy does
22:49:34 <Jafet> five, according to ais523 http://codegolf.stackexchange.com/a/111002
22:50:56 <Jafet> it's a TC subset though
22:56:09 -!- DHeadshot has joined.
23:00:57 <wob_jonas> Jafet: probably six for what zzo38 wants, but that's very interesting, I haven't seen it yet
23:01:33 -!- erkin has quit (Quit: Ouch! Got SIGABRT, dying...).
23:10:05 -!- sebbu2 has changed nick to sebbu.
23:14:03 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
23:19:47 -!- hppavilion[1] has joined.
23:20:11 -!- DHeadshot has quit (Ping timeout: 264 seconds).
23:20:41 -!- Lord_of_Life has quit (Excess Flood).
23:21:29 -!- Lord_of_Life has joined.
23:22:57 -!- tromp__ has joined.
23:22:57 -!- tromp has quit (Read error: Connection reset by peer).
23:29:43 -!- hppavilion[1] has quit (Ping timeout: 268 seconds).
23:33:39 -!- LKoen has quit (Remote host closed the connection).
23:35:56 -!- LKoen has joined.
23:41:05 -!- Zarutian has quit (Quit: Zarutian).
23:59:51 -!- krok_ has joined.