←2014-09-02 2014-09-03 2014-09-04→ ↑2014 ↑all
00:05:49 -!- mihow has joined.
00:12:14 -!- not^v has joined.
00:14:42 <zzo38> `danddreclist 56
00:14:43 <HackEgo> danddreclist 56: shachaf nooodl boily \ http://zzo38computer.org/dnd/recording/level20.tex
00:39:41 -!- tromp__ has joined.
00:41:27 -!- tromp has quit (Ping timeout: 245 seconds).
01:11:02 -!- Lorenzo64 has quit (Ping timeout: 245 seconds).
01:26:15 -!- Lorenzo64 has joined.
01:46:17 -!- AndoDaan has joined.
02:41:25 -!- not^v has changed nick to ^8.
02:53:11 <HackEgo> [wiki] [[Wordfuck]] http://esolangs.org/w/index.php?diff=40386&oldid=40327 * Imaginer1 * (-2)
02:55:36 <HackEgo> [wiki] [[User:Imaginer1]] http://esolangs.org/w/index.php?diff=40387&oldid=40384 * Imaginer1 * (+115)
03:16:26 -!- conehead has quit (Quit: Computer has gone to sleep).
03:49:17 <oerjan> :k Nat
03:49:19 <lambdabot> Not in scope: type constructor or class ‘Nat’
03:53:20 <oerjan> @instances Monoid
03:53:22 <lambdabot> (), (a -> b), (a, b), (a, b, c), All, Any, Dual a, Endo a, First a, Last a, Maybe a, Ordering, Product a, Sum a, [a]
03:53:48 <oerjan> hm nothing suitably lazy
03:54:23 <shachaf> what do you think of instance (Monoid m, Applicative f) => Monoid (f m) where mempty = pure mempty; mappend = liftA2 mappend
03:54:34 <shachaf> other than the obvious incompatibility with a bunch of monoid instances
03:55:06 <zzo38> I say no due to possible incompatibility (even though, it is in fact a correct monoid)
03:55:13 <zzo38> Make a newtype wrapper, I suppose
03:55:18 <shachaf> if you pick m = () and f = [] you get Nat but with multiplication instead of addition
03:55:42 <shachaf> if you pick m = () and f = ZipList you get Nat but with min and +infty as your monoid
03:55:51 <shachaf> imo those are p. good monoids
03:55:53 <oerjan> note that i need the special property of Nat that (1 + undefined) + 1 >= 2
03:56:28 -!- AndoDaan has quit.
03:56:59 <oerjan> i was trying to see if i could find in reasonably "standard" modules a counterexample to typeclassopedia's claim that foldMap f = foldMap f . toList
03:57:04 <zzo38> Yes, those are ways to make up monoids
03:57:22 <oerjan> it's easy to construct one, but i don't see how to do it without defining a new instance
03:57:32 <zzo38> And I think someone has made a "monoid transformers" library which does exactly that; transforms a monoid with an applicative to make a new monoid.
03:58:09 <shachaf> by the way i mean Conat not Nat of course
03:58:14 <shachaf> even though they're the same
03:58:14 <int-e> (1 + undefined) + 1 >= 2 is hard to achieve in practice. I guess you can use the unambiguous choice operator to get therer.
03:59:03 <oerjan> hm oh maybe it isn't true for the Nat i'm thinking od
03:59:04 <int-e> oh wait. you're using S x + y = S (y + x)
03:59:05 <oerjan> *of
03:59:23 <oerjan> yes, but i realized that's not quite enough
04:00:01 <oerjan> oh wait you reversed them
04:00:03 <oerjan> that would work
04:00:10 <int-e> but do you get a monoid then?
04:00:11 <oerjan> but feels like cheating
04:00:20 <shachaf> I,I S-expressions
04:01:17 <oerjan> hm maybe foldMap f = foldMap f . toList _is_ true for well-ordered foldables
04:01:29 <int-e> (1 + _|_) + 1 = S S undefined, but 1 + (_|_ + 1) = 1 + _|_ = S _|_
04:01:40 <shachaf> oerjan: well-ordered?
04:01:53 <int-e> s/undefined/_|_/, I missed one instance
04:01:56 <oerjan> shachaf: it's easy to break with Last and a reverse list foldable
04:02:03 <shachaf> Sure.
04:02:12 <shachaf> If you only have finite Foldables then it's true.
04:02:14 <oerjan> but i'm having trouble doing it with Data.Tree
04:02:31 <shachaf> Oh, you mean a tree which is undefined in the middle?
04:02:43 <oerjan> although if int-e's S x + y = S (y + x) really _does_ work
04:03:34 <int-e> it's not a monoid, so all bets are off.
04:03:51 <oerjan> ah
04:04:32 <oerjan> i was thinking let n = Node 1 $ repeat (Node 0 []) in Node 1 $ repeat n as the counterexample tree
04:04:48 <oerjan> toList will only contain the first two 1's
04:05:16 <oerjan> but if you could write a sufficiently lazy Nat to pick up the rest...
04:05:43 <oerjan> except the point was to use only pre-existing Foldables and Monoids
04:06:13 <shachaf> Except not Last?
04:08:14 <int-e> oerjan: how about this one Monoid a => Monoid (Maybe a) ... Just x <> Just y = Just (x <> y); Just x + Nothing = Just x; Nothing + _ = Nothing.
04:08:51 <oerjan> shachaf: Last is fine, but Data.Tree doesn't give last elements. oh wait...
04:09:02 <oerjan> of course you can
04:09:16 <shachaf> Make a tree with undefineds in the middle subtrees.
04:09:38 <oerjan> @let tree = Node 0 [Node 0 $ repeat 0, Node 1 []]
04:09:41 <lambdabot> Defined.
04:10:00 <oerjan> :t Last
04:10:01 <lambdabot> Maybe a -> Last a
04:10:12 <oerjan> > foldMap (Last . Just) tree
04:10:14 <lambdabot> No instance for (GHC.Show.Show a0)
04:10:14 <lambdabot> arising from a use of ‘M894916986005060275817702.show_M8949169860050602758...
04:10:14 <lambdabot> The type variable ‘a0’ is ambiguous
04:10:14 <lambdabot> Note: there are several potential instances:
04:10:14 <lambdabot> instance [safe] GHC.Show.Show
04:10:18 <oerjan> wat
04:10:26 <int-e> oerjan: oh it's just another non-monoid. hah.
04:10:26 <oerjan> :t tree
04:10:28 <lambdabot> (Num (Tree a), Num a) => Tree a
04:10:34 <oerjan> oops :P
04:10:37 <oerjan> @undef
04:10:37 <lambdabot> Undefined.
04:10:57 <oerjan> int-e: what's wrong with Last?
04:11:18 <int-e> oerjan: nothing is wrong with Last, but the thing I gave is utterly wrong.
04:11:27 <oerjan> @let tree = Node 0 [Node 0 $ repeat (Node 0 []), Node 1 []]
04:11:29 <lambdabot> Defined.
04:11:34 <oerjan> > foldMap (Last . Just) tree
04:11:35 <shachaf> > foldMap (\x -> Last (Just x)) $ Node 0 [Node 1 undefined, Node 2 []]
04:11:37 <lambdabot> Last {getLast = Just 1}
04:11:37 <lambdabot> Last {getLast = Just 2}
04:11:50 <oerjan> > foldMap (Last . Just) $ toList tree
04:11:50 <shachaf> > foldMap (\x -> Last (Just x)) . F.toList $ Node 0 [Node 1 undefined, Node 2 []]
04:11:51 <lambdabot> Not in scope: ‘toList’
04:11:51 <lambdabot> Perhaps you meant one of these:
04:11:53 <lambdabot> ‘F.toList’ (imported from Data.Foldable),
04:11:54 <lambdabot> can't find file: L.hs
04:11:56 <lambdabot> ‘IS.toList’ (imported from Data.IntSet),
04:11:58 <oerjan> > foldMap (Last . Just) $ F.toList tree
04:11:58 <lambdabot> ‘S.toList’ (imported from Data.Set)
04:12:03 <lambdabot> mueval-core: Time limit exceeded
04:12:06 <oerjan> > foldMap (Last . Just) $ F.toList tree
04:12:13 <lambdabot> mueval-core: Time limit exceeded
04:12:13 <lambdabot> mueval: ExitFailure 1
04:12:21 <oerjan> i think that's an example
04:15:52 <int-e> oh, right, you need a monoid where _|_ <> Foo = Foo.
04:16:03 <int-e> for some Foo
04:16:38 <oerjan> yeah
04:16:49 <int-e> and then you just have to replace the _|_ by something that is infinite as a list.
04:18:33 <oerjan> precisely
04:31:20 * Sgeo is fairly sure that his exchange is incorrect
04:31:36 <Sgeo> Sadly, that's based more on testing than understanding, so may take a bit to fix
04:44:33 -!- ^8 has quit (Quit: http://i.imgur.com/Akc6r.gif).
05:06:39 -!- tromp has joined.
05:09:12 -!- tromp__ has quit (Ping timeout: 246 seconds).
05:33:53 -!- newsham has quit (Quit: Lost terminal).
05:34:23 -!- newsham has joined.
05:56:05 <mroman_> moin
05:56:42 <mroman_> zzo38: wth are SQL based polls?
05:56:50 <oerjan> morn
05:56:53 <Sgeo> The unoptic mechanism is what my exchange is supposed to be?
05:57:08 <mroman_> Do the participant have to write INSERT INTO stateements?
05:57:10 <Sgeo> How come I see code for unchoice?
05:57:17 <Sgeo> I thought you could only turn around isos
05:57:21 <mroman_> *participants *statements
05:58:14 <oerjan> i recall edwardk saying that _not_ using profunctor lenses cost you the ability to undo prisms, so presumably you can do it with them
05:59:08 -!- MDude has changed nick to MDream.
05:59:17 <Sgeo> What is undoing a prism? Turning it into a getter with the same function used to turn around an iso? Or something else?
05:59:27 <elliott> Sgeo: remit
05:59:33 <elliott> or re
05:59:35 <elliott> whatever it's called in lens now
05:59:46 <elliott> (except it retains the other side so you can flip back)
06:00:45 <Sgeo> I could follow this thing's convention and use un for both: http://lpaste.net/103359
06:00:51 <Sgeo> iiuc
06:01:17 <elliott> that is the point of from, yes.
06:01:47 <elliott> you can turn any optic around.
06:01:53 <elliott> in the case of Iso, what you get is another Iso.
06:02:47 <elliott> in the case of Prism (a partial isomorphism), you get effectively a getter; getting does "the other way" of the partial isomorphism, same as turning around an Iso for a constructor.
06:03:03 <elliott> of course you actually get an unprism that you can turn back around again to get a full prism; no information is ever lost
06:03:45 <oerjan> Sgeo: http://www.reddit.com/r/haskell/comments/23uzpg/lens_is_unidiomatic_haskell/ch13df1
06:05:01 <oerjan> 5th last paragraph
06:05:05 <Sgeo> So, I'm not getting _that_ much value for using a system I understand slightly less
06:05:48 <elliott> profunctor lenses are way more elegant and simple and if you are doing things in a system where you are not under the constraints lens itself has you should probably use them
06:07:38 <Sgeo> Except traversals but I think I can use my lazy list idea for them... I can imagine how to turn a traversal function into something that works in that system...
06:08:05 <Sgeo> Assuming immutable data though... I think my idea would break if traversing twice over the same structure occured in non-identical orders
06:31:14 <Sgeo> My exchange code... looks correct, comparing it to the profunctor lenses paste
06:34:18 <mroman_> hu
06:34:24 <mroman_> where does cabal install cabal install cabal?
06:37:45 <mroman_> wtf
06:37:57 <mroman_> I thought it used to install into ~/.cabal/bin
06:39:56 <mroman_> ah. cabal != cabal-install
06:45:30 <Jafet> So where does the cabal-install's cabal install cabal-install cabal install cabal-install, cabal?
06:52:56 <fizzie> How much cabal would a cabal-install install, if a cabal-install could install cabal?
06:58:49 -!- evalj has joined.
07:01:56 <int-e> Why doesn't cabal-install distinguish between cabal and Cabal?
07:03:45 <Sgeo> I think I discovered a confusing case of generics in Racket
07:09:46 <Sgeo> Pasterack's being slow... but basically, defining the implementation of a generic also shadows the generic's name, so if you attempt to use the same generic function on a different struct, you end up using the one you're defining, instead of the one you want
07:10:07 <Sgeo> https://github.com/Sgeo/racket-optics/blob/master/profunctors.rkt#L58
07:10:20 <Sgeo> That line calls _exchange_'s dimap, not driver's dimap
07:11:23 <Sgeo> I forgot how to permalink to a specific version easily
07:11:59 -!- newsham has quit (Quit: restart).
07:12:29 <Sgeo> Boom permalink the slow way https://github.com/Sgeo/racket-optics/blob/6eacd94d0fede97d693385e69fecfc20340ca485/profunctors.rkt#L58
07:12:31 -!- newsham has joined.
07:14:37 <Deewiant> https://github.com/CrazyM4n/brainfunge yet another paragon of innovations
07:25:59 -!- evalj has quit (Remote host closed the connection).
07:33:31 -!- MDude has joined.
07:37:20 -!- MDream has quit (Ping timeout: 260 seconds).
07:43:29 -!- AnotherTest has joined.
07:48:12 <Sgeo> http://pastie.org/9523463#
07:48:16 <Sgeo> That second string gets printed
07:50:10 -!- augur has quit (Quit: Leaving...).
07:51:25 <J_Arcane> I need to get me a VPS one of these days.
08:03:41 <Sgeo> I don't understand when UnChoice and UnStrong would be used... nothing's calling unleft unright unfirst unsecond. un-ing a lens or prism shoudldn't cause those functions to magically be called when they weren't before
08:28:26 <fizzie> Deewiant: Where is the "brain" part?
08:29:03 <elliott> Sgeo: they are used in instances for un.
08:29:15 <elliott> I don't know the haskell code you pasted. it looks incomplete.
08:29:24 <elliott> probably someone did not fully explore the theory
08:29:55 <fizzie> Deewiant: I also like how ^ is both "set direction up" and exponentiation.
08:31:11 <fizzie> (There's a "BrainFunge2" in the wiki, but not 1.)
08:45:02 -!- Patashu has joined.
08:51:35 -!- drdanmaku has quit (Quit: Connection closed for inactivity).
09:06:27 -!- mihow has quit (Read error: Connection reset by peer).
09:08:23 -!- mihow has joined.
09:16:52 -!- oerjan has quit (Quit: leaving).
09:24:55 -!- AxelBob has joined.
09:26:32 -!- AxelBob has quit (Client Quit).
09:26:50 -!- AxelBob has joined.
09:32:20 -!- augur has joined.
09:36:14 -!- yaowenrui has joined.
09:53:53 <fizzie> Curious compilation issue: gcc complaining about undefined references to 'dlopen' and 'dlerror' in one of the included shared libraries, even when linking with -ldl.
09:54:58 <Jafet> Permute the command line arguments
10:02:03 <fizzie> That was tried. (Should've mentioned.)
10:02:23 <fizzie> Well, not all permutations, it was a 9-line command from a build system.
10:02:31 <fizzie> But with -ldl as last, at least.
10:11:57 -!- boily has joined.
10:15:35 -!- Frooxius has quit (Ping timeout: 255 seconds).
10:16:46 -!- mikkelrobin has joined.
10:18:12 -!- mikkelrobin has left.
10:30:53 -!- AxelBob has quit (Ping timeout: 255 seconds).
10:42:45 -!- yaowenrui has quit (Remote host closed the connection).
10:52:18 -!- yorick_ has changed nick to yorick.
11:02:56 -!- boily has quit (Quit: BANSHEE CHICKEN (screeeeeeeeeetch!)).
11:11:09 -!- Phantom_Hoover has joined.
11:24:52 -!- Frooxius has joined.
12:03:02 -!- Sgeo has quit (Read error: Connection reset by peer).
12:40:27 -!- impomatic_ has left.
12:41:02 -!- impomatic_ has quit (Quit: impomatic_).
13:05:20 -!- Patashu has quit (Ping timeout: 276 seconds).
13:34:27 -!- Sprocklem has quit (Ping timeout: 268 seconds).
14:06:53 <HackEgo> [wiki] [[List of ideas]] http://esolangs.org/w/index.php?diff=40388&oldid=40358 * 66.249.85.53 * (+125) /* Based on dimensions */ Time-based Language
14:08:41 <fizzie> I interpreted those as plurals.
14:31:22 <mroman_> * A programming language that takes compiler errors as input .
14:32:14 <mroman_> Hm.
14:32:27 <mroman_> A programming language consisting of commands given as integers
14:32:36 <mroman_> where only integers are legal whose collatz sequence reaches 1
14:33:33 <mroman_> or A programming language where the program is to be treated as a single integer whose collatz sequence has to reach 1
14:33:38 <mroman_> hm
14:34:06 <fizzie> The page is longer than I remembered.
14:36:42 <pikhq> I should get off my ass and bother getting things so I can SSH over IPv4 innto my desktop.
14:46:52 <Taneb> mroman_, a while back I tried to write a language that was TC if and only if the collatz conjecture was false
14:49:55 <Jafet> There is a trivial way to do that
14:51:16 -!- conehead has joined.
14:54:53 <Jafet> It might be more interesting to create a language that is TC iff the collatz conjecture is true
14:54:56 -!- FreeFull has quit (Read error: Connection reset by peer).
14:55:38 -!- FreeFull has joined.
14:56:37 <tromp_> that's easy; do a collatz sequence from i before the i'th instruction
15:03:23 <Bike> if you only need some finite number of instructions for a UTM it could be TC regardless, couldn't it
15:04:05 <Jafet> A less trivial language: given a mapping f: Z^+ -> instruction, the program n runs the instructions f n, f (collatz n), ...
15:04:16 <Bike> yeah that's what i was thinking
15:04:22 <Bike> though it sounds like a pain
15:05:09 <Jafet> (or the mapping can be part of the program, if it has finite support)
15:05:56 <Jafet> (but if all infinite collatz chains are aperiodic, finite mappings are not TC)
15:07:49 -!- nycs has changed nick to `^_^v.
15:23:10 <mroman_> A language that is only turing complete if it is not turing complete
15:23:43 <mroman_> I don't know enough paradoxical logic to know if that's even remotely possible
15:24:03 <mroman_> it probably even means that that language can't actually exist
15:25:18 <Jafet> No problem. The wiki is full of languages that don't actually exist
15:47:44 <quintopia> ugh
15:50:28 <Taneb> mroman_, I think it means that the language is not turing complete
16:01:16 <HackEgo> [wiki] [[Talk:Iota]] http://esolangs.org/w/index.php?diff=40389&oldid=8009 * Imaginer1 * (+182)
16:04:54 -!- lifthras1ir has joined.
16:07:28 -!- monotone_ has joined.
16:08:37 -!- myndzi has quit (Ping timeout: 260 seconds).
16:08:38 -!- lifthrasiir has quit (Ping timeout: 260 seconds).
16:08:38 -!- clog has quit (Ping timeout: 260 seconds).
16:08:51 -!- scounder has quit (Ping timeout: 260 seconds).
16:08:51 -!- skarn has quit (Ping timeout: 260 seconds).
16:08:51 -!- monotone has quit (Ping timeout: 260 seconds).
16:09:39 -!- scounder has joined.
16:11:23 -!- skarn has joined.
16:11:33 -!- skarn has changed nick to Guest10538.
16:11:38 -!- myndzi has joined.
16:14:12 -!- drdanmaku has joined.
16:14:30 -!- conehead has quit (Quit: Computer has gone to sleep).
16:14:37 -!- Phantom__Hoover has joined.
16:18:12 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
16:19:34 -!- conehead has joined.
16:26:58 -!- ^v has changed nick to CaretVeePomm.
16:27:47 -!- CaretVeePomm has changed nick to ^v.
16:51:30 <mroman_> woring with two keybords of duffrnte size is e fraking heall
16:53:39 <mroman_> why isnte there STndRD FAR SPCNG BOTWOON JOPBORDS/
16:54:18 <Jafet> Try resizing your hands.
16:54:29 <mroman_> I'm trying
16:54:29 <int-e> between what?!
16:54:37 -!- clog has joined.
16:54:47 <mroman_> *between keyboard keys
16:55:13 <mroman_> My keyboard at work has different spacings
16:55:32 <int-e> and how do you turn 'E' into 'O', hmm. Must be Dvorak?
16:55:32 <mroman_> it takes at least 5 minutes to get accustomed to my private keyboard's spacing
16:55:38 <mroman_> I'm Dvorak.
16:58:07 <mroman_> different spacing really messes up blind and fast typing
16:59:22 <Jafet> (http://25.media.tumblr.com/tumblr_m5g0opjSYf1r94e9jo1_500.gif)
16:59:48 <mroman_> That's interestingly creepy
17:12:33 -!- masoudd has joined.
17:31:05 -!- augur has quit (Remote host closed the connection).
17:31:32 -!- augur has joined.
17:32:16 <fizzie> Is that from Ghost in the Shell?
17:33:30 <KingOfKarlsruhe> yes
17:33:34 -!- lollo64it has joined.
17:36:33 -!- augur has quit (Ping timeout: 272 seconds).
17:48:56 <mroman_> anti-selfie bill
17:48:58 <mroman_> wth is this
17:51:30 <int-e> USA?
17:52:12 <J_Arcane> http://www.abs-cbnnews.com/nation/09/03/14/anti-selfie-bill-still-limbo
17:52:35 <J_Arcane> Phillipines, actually.
17:53:24 <J_Arcane> http://cebudailynews.inquirer.net/40900/bill-vs-techy-intruders-mistaken-as-anti-selfie-bill
17:57:31 <int-e> http://www.abs-cbnnews.com/nation/09/03/14/anti-selfie-bill-still-limbo calls it the anti-selfie bill and cites the offenses, which seem to be targeted at paparazzis really.
17:57:49 <int-e> how one can do that in the same article is beyond me.
17:58:35 <J_Arcane> politics: the same shit, just different toilets. ;)
18:09:38 <Jafet> It's odd that out of all the scenes, the typing is the one that I quote most often
18:12:40 <Bike> well it's that or "i can't go swimming, i would sink"
18:18:04 -!- ais523 has joined.
18:28:45 -!- augur has joined.
18:31:03 <zzo38> mroman_: Sorry I cannot answer your question; I was sleeping. Now I can try to answer it.
18:32:04 <zzo38> No a participant will not necessarily have to write INSERT INTO statements, but rather all data nevertheless is in the SQLite formats so all statistics and so on are accessed using SQL.
18:34:13 <mroman_> SQL is too oldschool
18:34:20 <mroman_> Hipsters like me use acid-state
18:36:26 <zzo38> Which means what?
18:44:58 <Melvar> < J_Arcane> http://cebudailynews.inquirer.net/40900/bill-vs-techy-intruders-mistaken-as-anti-selfie-bill – I am amused at the quote at the bottom because of the typical code-switching.
18:44:58 -!- Sprocklem has joined.
18:53:28 <J_Arcane> zzo38: http://acid-state.seize.it/
18:57:58 <mroman_> It's some hip database haskellish thingy
18:58:49 <J_Arcane> I've a book in my bookmarks about making a Scheme in Haskell, but I'm not sure if or when I'll get round to that.
19:00:07 -!- tromp__ has joined.
19:00:25 <int-e> J_Arcane: Sorry, I can't resist: How did you fit an entire book into a bookmark?
19:00:39 <J_Arcane> int-e: the magic of science.
19:01:44 <Jafet> Well, you see, a book about implementing scheme is a very small book.
19:01:46 <J_Arcane> (or just very narrow type: http://smbc.myshopify.com/collections/frontpage/products/bookmark-double-pack )
19:02:42 -!- tromp has quit (Ping timeout: 272 seconds).
19:03:09 <J_Arcane> More seriously, though, it's a Wikibook: https://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours
19:05:03 <Jafet> You can probably also use http://longnow.org/membership/10k as a bookmark, but be careful not to scratch it.
19:05:42 -!- Phantom__Hoover has quit (Ping timeout: 255 seconds).
19:08:39 -!- Phantom_Hoover has joined.
19:25:31 -!- impomatic_ has changed nick to impomatic.
19:31:09 <zzo38> Well if you are using Haskell, then I suppose using Acid-State is going to work.
19:33:58 -!- Bicyclidine has joined.
19:35:49 -!- impomatic has quit (Ping timeout: 268 seconds).
19:38:39 <zzo38> But I use SQL
19:41:18 -!- wagner has joined.
19:56:48 -!- Bicyclidine has quit (Ping timeout: 252 seconds).
19:57:22 -!- Sprocklem has quit (Ping timeout: 240 seconds).
20:01:33 -!- MDude has quit (Ping timeout: 240 seconds).
20:05:19 -!- Bicyclidine has joined.
20:07:37 -!- Phantom__Hoover has joined.
20:07:38 -!- Phantom__Hoover has quit (Client Quit).
20:07:49 -!- Phantom__Hoover has joined.
20:11:35 -!- Phantom_Hoover has quit (Ping timeout: 268 seconds).
20:16:29 -!- wagner has quit (Quit: Page closed).
20:20:33 -!- MoALTz has joined.
20:40:31 <HackEgo> [wiki] [[Brainfuck implementations]] http://esolangs.org/w/index.php?diff=40390&oldid=40359 * 87.79.59.163 * (-1)
20:47:22 -!- AnotherTest has quit (Ping timeout: 245 seconds).
21:03:07 -!- Bicyclidine has quit (Ping timeout: 245 seconds).
21:03:46 -!- Patashu has joined.
21:07:58 -!- Phantom_Hoover has joined.
21:09:48 -!- Phantom___Hoover has joined.
21:10:30 -!- Phantom__Hoover has quit (Ping timeout: 252 seconds).
21:12:33 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
21:19:10 -!- miko__ has joined.
21:20:03 <miko__> Hi. I remember there was a "hyper turing complete" esolang.
21:20:15 -!- Bicyclidine has joined.
21:20:24 <ais523> miko__: "uncomputable"'s the normal term
21:20:26 <ais523> there are several of those
21:21:40 <miko__> It was a brain fuck derivate that solved the halting problem. There was a operator (or operator pair) that enclosured a brainfuck programm. If it halted it wrote a 1 to the tape or 0 if not.
21:22:07 <miko__> I don't remember the details, but something like that. Does anybody no the name?
21:22:31 <Bicyclidine> i think the wiki has a category for languages that are impossible to implement. i'd look for something named something-fuck in that category.
21:22:38 <shachaf> http://esolangs.org/wiki/Brainhype ?
21:23:03 <Bicyclidine> damn, almost got it, but not quite
21:23:36 <Bicyclidine> 'super turing complete' seems dumb. wouldn't it more properly have post degree 0' or something like that
21:23:50 <ais523> I like onoz better
21:24:24 <Bicyclidine> or 0'' i guess
21:24:36 <shachaf> oh, onoz looks like fun
21:24:43 <miko__> Oh, it was brainhype.
21:24:44 <miko__> thanks
21:25:48 <Bicyclidine> is onoz recursive?
21:26:19 <Bicyclidine> like, if you run into a loop while in a loop is it just a brainfuck loop or an onoz loop.
21:26:22 -!- Patashu has quit (Ping timeout: 240 seconds).
21:26:51 <ais523> I'm not sure, from the spec
21:26:59 <ais523> also I'm not sure if it matters for the behaviour
21:27:08 <ais523> maybe oerjan would know, but he isn't here
21:27:35 <ais523> @ask oerjan in onoz, do nested [] have BF or onoz semantics? and does it matter for the purpose behind the language?
21:27:35 <lambdabot> Consider it noted.
21:28:45 <Bicyclidine> well, i mean, the program [+[>+]] behaves differently, doesn't it? +[>+] as a brainfuck program doesn't halt but as an onoz program it does.
21:30:34 <ais523> Bicyclidine: obviously the semantics are different
21:30:43 <ais523> but the language may fulfil its purpose either way
21:32:11 <Bicyclidine> what's the purpose, exactly?
21:32:15 <Bicyclidine> i mean you're probably right but
21:32:34 <ais523> Bicyclidine: a language which is a) computable; b) cannot be proven to not halt
21:33:08 <Bicyclidine> ...ah, hm.
21:42:51 -!- miko__ has quit (Ping timeout: 268 seconds).
21:55:13 -!- esowiki has joined.
21:55:17 -!- esowiki has joined.
21:55:17 -!- esowiki has joined.
21:55:53 -!- esowiki has joined.
21:55:57 -!- esowiki has joined.
21:55:57 -!- esowiki has joined.
21:56:33 -!- esowiki has joined.
21:56:37 -!- esowiki has joined.
21:56:38 -!- esowiki has joined.
21:57:18 -!- esowiki has joined.
21:57:22 -!- esowiki has joined.
21:57:23 -!- esowiki has joined.
21:58:03 -!- esowiki has joined.
21:58:07 -!- esowiki has joined.
21:58:08 -!- esowiki has joined.
21:58:48 -!- esowiki has joined.
21:58:52 -!- esowiki has joined.
21:58:53 -!- esowiki has joined.
21:59:28 -!- esowiki has joined.
21:59:32 -!- esowiki has joined.
21:59:33 -!- esowiki has joined.
22:00:08 -!- esowiki has joined.
22:00:12 -!- esowiki has joined.
22:00:13 -!- esowiki has joined.
22:00:48 -!- esowiki has joined.
22:00:52 -!- esowiki has joined.
22:00:53 -!- esowiki has joined.
22:00:59 -!- glogbot has joined.
22:01:52 -!- FireFly has joined.
22:03:02 -!- Gregor has joined.
22:03:40 -!- Bicyclidine has joined.
22:15:55 <zzo38> Another kind of halting oracles, for sequent calculus based systems, can be an axiom schema |- ORACLE x for all nontheorems |- x
22:16:33 <zzo38> (If you try to add other things it will likely cause paradoxes and/or inconsistencies, though)
22:20:12 -!- boily has joined.
22:29:02 <J_Arcane> This reminds me that I read a thing on SciAm today about using closed-time-loops in computing.
22:29:22 <zzo38> Yes, OK and how is that working?
22:30:05 -!- conehead has quit (Quit: Computer has gone to sleep).
22:30:17 <J_Arcane> Theoretically (and possibly confirmed in simulation), due to the nature of a CTC, you could create a quantum computer that could send its own processes backward in time and simply keep retrying them for free until the iteration reached the required calculation.
22:30:35 <J_Arcane> Imagine a zero-runtime for loop.
22:31:40 <J_Arcane> http://www.scientificamerican.com/article/time-travel-simulation-resolves-grandfather-paradox/
22:42:31 <coppro> J_Arcane: I've been to a talk on that. It turns out that (depending on the model of CTCs you use) you usually can't get anything useful out of it
22:42:52 <coppro> because it's quantum, you can't just read the value stored in the CTC without disturbing it
22:43:13 <coppro> so you need to get a stable "compute + read" loop, which it turns out is almost always equivalent to just not having a CTC to begin with
22:44:09 -!- ais523 has quit (Ping timeout: 260 seconds).
22:45:31 -!- CrazyM4n_ has joined.
22:45:54 <CrazyM4n_> hey, could someone lend me a hand making a language that I wrote turing complete?
22:46:12 <zzo38> It says that "Hawking and many other physicists find CTCs abhorrent, because any macroscopic object traveling through one would inevitably create paradoxes where cause and effect break down" but I think cause and effect aren't necessary and rather something more related to a constraint system.
22:46:34 <zzo38> Cause and effect is then emergent instead of fundamental.
22:46:42 <zzo38> (That's just a guess, of course.)
22:47:46 -!- ais523 has joined.
22:47:55 <coppro> CrazyM4n_: Making it turing-complete? Is it on esolangs?
22:48:13 <zzo38> After all, some mathematical formulas have multiple solutions (or none at all), isn't it?
22:48:18 <coppro> yes
22:48:38 <CrazyM4n_> well, no
22:48:49 <CrazyM4n_> it's on github, i've never edited a wiki or anything
22:48:53 <CrazyM4n_> not sure of the standards
22:48:54 <coppro> I don't think CTCs are that abhorrent, after all, quantum physics is a situation where we see multiple possible solutions to a system and the universe picks one at random
22:49:08 <coppro> CrazyM4n_: Is there a plain-language description of it?
22:49:25 <CrazyM4n_> yea
22:49:31 <CrazyM4n_> hold on, let me get the link
22:49:39 <CrazyM4n_> https://github.com/CrazyM4n/brainfunge/blob/master/README.txt
22:49:52 <CrazyM4n_> it's stack based, woohoo for originality
22:50:21 <coppro> What does ! do on an empty stack?
22:50:39 <coppro> anyway, just looking at it, I'm 99% sure it's TC
22:50:39 <zzo38> Yes, there is pick one at random, and even calculation of the probabilities of such thing, but at least I think it must fundamentally be made of mathematics. But then you have to consider gravity too, which is also considered difficult to solve perfectly.
22:50:53 <coppro> you can solve the wire-crossing problem with 0! or something similar
22:50:57 <coppro> err, 0`
22:51:15 <CrazyM4n_> well, the wires can cross already
22:51:21 <CrazyM4n_> because of the spaces
22:51:27 <coppro> oh wait, hmm
22:51:39 <coppro> you don't have a way to reach down the stack
22:51:55 <coppro> so that probably makes it fail to be TC, since you can only address two stack bits at a time
22:52:00 <CrazyM4n_> i was thinking of adding a second stack/turn it into a tape, kind of like BF
22:52:19 <coppro> If you added stack rotation that should be enough
22:52:19 <CrazyM4n_> and use [ and ] to navigate the tape
22:52:27 <zzo38> CrazyM4n_: It defines the ^ symbol twice
22:52:34 <CrazyM4n_> oh yeah, meant to remove that
22:52:40 <CrazyM4n_> ^ goes up, not exponentiation
22:52:56 <coppro> like, pop two values x and y, and put y on the stack x cells deep
22:53:05 <coppro> I believe that that's enough to get TC
22:53:10 <CrazyM4n_> the thing is, is that the stack is infinite
22:53:16 <CrazyM4n_> oh
22:53:19 <CrazyM4n_> that might work
22:53:26 <coppro> The stack is not infinite
22:53:29 <coppro> it is of unbounded size
22:53:40 <coppro> ais523 maybe knows the requirements for TC in a stack-based language better than I
22:53:52 -!- MDream has joined.
22:54:11 <CrazyM4n_> "zeroStack :: Stack; zeroStack = repeat 0" the stack starts as an infinitely sized array of 0
22:54:12 <coppro> actually wait, nevermind, it definitely is enough
22:54:35 <coppro> because you can use even locations to represent "forward" cells on the TM tape, an odd locations for "backward" cells
22:54:44 <coppro> oh no wait, that fails, hmm
22:54:55 <CrazyM4n_> i'm thinking to add an operator
22:54:56 -!- MDream has changed nick to MDude.
22:55:19 <CrazyM4n_> that pops the top of the stack, and accesses a value at that index, and brings it to the top
22:55:28 <coppro> that's equivalent
22:55:32 <coppro> so suc=re
22:55:33 <coppro> *sure
22:55:43 <CrazyM4n_> oh yea, that's kinda what you said haha
22:55:59 <coppro> mine went down, but you can implement either with the other
22:56:07 <coppro> two stacks is enough for TC
22:56:20 <coppro> not sure if one is, when implemented as such
22:56:32 <CrazyM4n_> my friend suggested just adding a seperate stack also
22:56:33 <coppro> although actually
22:56:38 <coppro> if your stack is infinite
22:56:42 <coppro> then you can address any cell
22:56:48 <coppro> so it's just an infinite register bank
22:56:53 <CrazyM4n_> why not just make it a "memory block" instead of a stack? i could have an infinite array of stacks
22:56:54 <coppro> which is enough
22:57:01 <CrazyM4n_> yeah, i'll do that
22:57:01 <CrazyM4n_> like
22:57:09 <coppro> so yeah, rotation is enough
22:57:09 <CrazyM4n_> access at x index
22:57:24 <CrazyM4n_> well, rotation is impossible on an infinite array
22:57:28 <CrazyM4n_> that's my concern
22:57:33 <coppro> even addressed rotation I mean
22:57:59 <coppro> basically as long as you can implement "retrive value at index x" and "store value at index x" on your stack, it's equivalent to a von neumann machine
22:58:33 <CrazyM4n_> that's gonna have really awkward syntax considering the rest of the syntax is just one character a piece
22:58:34 -!- Guest10538 has quit (Changing host).
22:58:34 -!- Guest10538 has joined.
22:59:14 <coppro> CrazyM4n_: the operation you described above is enough
22:59:15 -!- Guest10538 has changed nick to skarn.
22:59:42 <CrazyM4n_> i'll work on that and see how weird it feels
22:59:46 <coppro> if I can pop x, and then move the value at x to the top of the stack, I can do so n times
23:00:04 <CrazyM4n_> ah i see
23:00:08 -!- Sgeo has joined.
23:00:43 <ais523> <coppro> ais523 maybe knows the requirements for TC in a stack-based language better than I ← another stack
23:00:54 <ais523> although it can be subtle
23:00:57 <coppro> ais523: stack rotation is enough too, I'm pretty sure
23:01:03 <ais523> coppro: then the bottom of the stack is another stack
23:01:10 <coppro> I guess
23:01:16 <coppro> although in CrazyM4n_'s case, there is no bottom
23:01:19 <ais523> other subtle places to find it are the call stack, and inside the structure of stack elements
23:01:26 <ais523> coppro: well you can't rotate a stack without having a bottom
23:01:35 <coppro> ais523: you can do a partial rotate
23:01:45 <ais523> unless it's a pick instruction, in which case you can create extra stacks anywhere, or just use it like a tape
23:01:51 <coppro> yeah
23:02:57 <CrazyM4n_> "- | = pop the top of the stack, then move the value from that index to the top - . = pop the top of the stack, then move the next top value to that index" sounds good?
23:03:48 -!- Bicyclidine has quit (Ping timeout: 252 seconds).
23:04:36 <CrazyM4n_> also, last question: would you rather have arithmatic pop the top two numbers and do things with them, or just do things with them without popping them then push the answer to the stack
23:04:44 <CrazyM4n_> *arithmetic
23:07:21 <coppro> CrazyM4n_: yes, those two operations together are definitely enough
23:07:26 <CrazyM4n_> on second thought, having arithmetic not pop the stack would make for some really interesting solutions to code golf challenges
23:07:35 <coppro> I prefer that arithmetic pops, but yes, that second thing is true
23:07:46 <coppro> by the way, you should make a page at esolangs.org :)
23:07:51 <CrazyM4n_> like, the fibonacci sequence would be "1>+O<"
23:08:15 * Sgeo yells at confusing cloud
23:08:18 <CrazyM4n_> i'm terrible with wikis, but i'll try to base it off of some better page
23:14:48 -!- Bicyclidine has joined.
23:15:22 -!- conehead has joined.
23:15:29 <CrazyM4n_> so a truth machine is really easy in my language
23:15:40 <CrazyM4n_> writing one right now, it kinda looks really cool
23:17:58 -!- conehead has quit (Client Quit).
23:18:21 <CrazyM4n_> does anyone know how to make sublime text not automatically delete whitespace on an empty line?
23:18:42 <CrazyM4n_> err, if you press enter on a line with only whitespace
23:29:26 <CrazyM4n_> i could make my language like piet, and make each pixel represent one of the commands
23:40:25 -!- thomasfuston has joined.
23:42:16 <CrazyM4n_> so is the top of the stack index 0 or is the top of the stack index 1
23:55:00 -!- idris-bot has quit (Ping timeout: 260 seconds).
23:55:52 -!- Melvar has quit (Ping timeout: 240 seconds).
23:56:20 <ais523> remember the Visual Studio issues I had a while ago?
23:56:48 <Bicyclidine> thankfully no
23:56:57 <ais523> right, you weren't here
23:59:13 <ais523> anyway, I finally solved my original problem by taking some precompiled binaries and modifying the binaries
23:59:13 <ais523> because it was easier than getting the program to compile
23:59:13 <ais523> using objdump -d from Linux and just comparing the binaries and the source
23:59:13 <ais523> string literals are pretty useful at figuring out what corresponds to what
←2014-09-02 2014-09-03 2014-09-04→ ↑2014 ↑all