←2014-01-07 2014-01-08 2014-01-09→ ↑2014 ↑all
00:00:44 -!- Sgeo has joined.
00:04:44 <Sgeo> "Video: The Essence of C++ (Stroustrup)"
00:04:48 <Sgeo> C++ has an essence?
00:05:19 <Slereah> It has an evil spirit
00:05:49 <Sgeo> I'm starting to think I should use Eclipse
00:05:57 <Sgeo> There are Eclipse plugins for Haskell, Erlang
00:06:04 <Sgeo> Probably a lot of other languages
00:06:51 <Sgeo> "An Eclipse plugin, currently available with CLISP (for WinXP, Macos, Linux) and SBCL (Macos, Linux). It supports the developer with syntax analyses 'as you type' (limited), syntax highlighting, code completion, parenthesis matching, apropos and a listener."
00:07:00 <Sgeo> Why is SBCL so stereotyped as being anti-Windows?
00:07:20 <LinearInterpol> dunno, it's been relatively nice to me.
00:13:03 <Bike> because when you booted it it said shit about evil cats
00:14:56 <Bike> which was in the runtime for some absurd reason, so you couldn't remove it
00:22:58 <oerjan> `cat cat
00:23:00 <HackEgo> Meow~~
00:55:54 -!- Phantom_Hoover has quit (Quit: Leaving).
00:56:25 -!- Sorella has quit (Quit: It is tiem!).
00:57:07 -!- zzo38 has joined.
01:01:51 -!- nooodl_ has quit (Quit: Ik ga weg).
01:19:52 -!- yorick has quit (Remote host closed the connection).
01:33:32 <kmc> Sgeo: it does!!
01:34:35 <kmc> this is why I say that C++ is a bad language that's bad in a way opposite to most bad languages
01:35:48 <FreeFull> PHP bad is certainly different from C++ bad
01:35:49 <kmc> it's a elaborate and conceptually cohesive design by some very smart people attempting some very ambitious goals (which few others have even attempted) and it kinda collapses under its own weight
01:35:57 <kmc> but it's not just a bunch of unrelated crap thrown together, although that's all most people learn it as :(
01:36:24 <FreeFull> C++ is definitely too big
01:36:38 <FreeFull> PHP is definitely just a bunch of crap thrown together
01:36:51 <kmc> a lot of the problems with C++ follow from a small number of onerous design requirements
01:36:54 <kmc> some of which are questionable
01:37:14 <kmc> but there's a reason behind everything
01:37:30 <kmc> it's not like PHP where you ask "why is it done this way" and rasmus lerdorf just flips you off
01:38:20 <kmc> "Within C++, there is a much smaller and cleaner language struggling to get out. " — Bjarne Stroustrup
01:38:36 <FreeFull> Is it called C?
01:38:40 <kmc> no
01:38:52 <kmc> it might be called Rust, at least that's the most credible choice I know of
01:39:06 <FreeFull> Rust is nice
01:39:10 <FreeFull> I think D is more C++ though
01:39:18 <kmc> yeah
01:39:25 <kmc> D doesn't aspire to memory safety the way C++ does
01:39:47 <kmc> er, the way Rust does
01:39:56 <FreeFull> Rust aspires to memory safety, but not quite in the way C++ does either
01:40:00 <kmc> although C++ does aspire to memory safety to a much greater degree than is realized by the "C with crap thrown in" crowd
01:40:11 <FreeFull> RAII?
01:40:33 <kmc> people say things like "C arrays and std::vector are feature duplication!" but really, you use the former to implemen the latter
01:40:43 <kmc> or to implement other more specialized memory-safe containers
01:40:45 <kmc> except
01:40:50 <kmc> you can't really make it memory safe
01:40:56 <kmc> because of iterator invalidation and related issues
01:41:01 <kmc> and there's where Rust has to pull in some research ideas
01:41:27 <pikhq> Well, C++ *is* C with crap thrown in, it's just a bit more complicated than "we wrote stuff that's like C, but different".
01:41:47 <shachaf> That depends on what you mean by "C arrays".
01:41:50 <shachaf> Are you counting new[]?
01:42:13 <kmc> yeah
01:42:29 <pikhq> Instead it's "we've got a bunch of desired semantics, and we've got to make it work on something that's different from C in only trivial ways."
01:42:57 <kmc> pikhq: my point is that idiomatic C++ is a completely different beast from idiomatic C. it's not like "write C but also use these other random features when they seem useful"
01:43:01 <kmc> except that's what ~everybody does in practice
01:43:27 <pikhq> Oh, yes, idiomatic C++ is a very different beast from C++ in-the-wild.
01:43:43 <kmc> because doing things The C++ Way requires mastering too many concepts and has too many unfortunate practical consequences
01:43:53 <pikhq> Particularly with C++11, which makes it reasonable to actually The C++ Way.
01:44:02 <FreeFull> Does idiomatic C++ exist?
01:45:37 <kmc> somewhere
01:45:48 <kmc> parts of Boost might be considered "idiomatic C++" by definition
01:46:04 <kmc> it's hard to tell where "idiomatic C++" ends and "terrifying abuse of the language" begins, which is part of the problem
01:46:30 <pikhq> But yes, kmc, you're definitely right. C++ is bad because of having design goals that result in something awful when combined, rather than hardly being designed.
01:46:40 <pikhq> Which is pretty unique.
01:46:51 <kmc> Boost has a lot of nice stuff, though, and it's not fair how people judge this large, heterogenous collection of libraries by its most excessive parts
01:47:00 <kmc> pikhq: yep
01:47:12 <kmc> and I would argue that you can do much better if you remove just one or two of those design goals
01:47:42 <kmc> the first ones I would drop are syntactic (near-)compatibility with C, and total compatibility with a C-style build incl. header files etc
01:47:44 <pikhq> Just making it not have to pretend to be C would probably help matters decently.
01:47:47 <kmc> yep
01:48:08 <pikhq> Unfortunately that feature is probably what made it successful. :P
01:48:24 <kmc> you can use Rust as basically that, and still do unsafe crap everywhere if you like
01:48:40 <kmc> but you still lose some powerful C++ features
01:49:09 <pikhq> I was thinking more in terms of marketing in this...
01:49:11 <kmc> (note that I say "powerful" and not "nice". those C++ features are Not Your Friend but they can do amazing stuff)
01:49:19 <kmc> foremost, templates
01:49:41 <pikhq> The idea that C++ is "C version 2" probably helped a lot.
01:49:47 <kmc> yeah
01:49:51 <kmc> lies are very effective for marketing
01:49:59 <pikhq> Yup.
01:50:07 <pikhq> Especially ones that aren't obvious.
01:50:32 <pikhq> I mean, C++ looks a lot *like* it's C version 2. (by design)
01:51:13 <kmc> yep
01:51:16 <kmc> so do Java and C#
01:51:30 <kmc> despite being fundamentally different
01:51:35 <pikhq> To a lesser extent, but yeah.
01:51:54 <kmc> Java was successfully marketed as a "C++ replacement" because people were using C++ for the wrong kinds of things (but for lack of alternatives, so was it really "wrong"?)
01:52:49 <kmc> clearly they should have been using ANSI Common Lisp all along.
02:05:03 <zzo38> Did you lose templates?
02:06:21 <zzo38> What I don't like about C++ templates is using < > for delimiters for the template syntax; it can cause a lot of confusion
02:06:55 <kmc> Rust has generics, but they act much more like traditional parametric polymorphism (with typeclass bounds), rather than the... exotic mixture of polymorphism, macros, and type introspection that is C++ templates
02:07:23 <kmc> Rust has macros too but likewise
02:07:39 <kmc> you can do things with C++ templates that you can't easily do with polymorphism + macros, even together
02:07:55 <zzo38> What kind of things, for example?
02:08:30 <kmc> type introspection, data structures that ask if the parameter type is a pointer or a reference or whether it has a virtual destructor and does different things
02:08:54 <zzo38> Ah, OK
02:09:09 -!- tromp has joined.
02:09:42 <kmc> this kinda stuffs http://www.cplusplus.com/reference/type_traits/
02:09:55 <zzo38> But how much does it really help?
02:10:03 <kmc> i dunno
02:10:04 <kmc> it's cool tho
02:10:20 <zzo38> It doesn't seem so helpful.
02:10:52 <zzo38> Some of those things might be useful, but some doesn't seem like very good.
02:11:21 <kmc> well, as an example, the Rust compiler has a special case to represent Option<T> (which is like Haskell's Maybe T) as one word, when T is a non-nullable pointer (so NULL can be used for None)
02:11:32 <kmc> and it seems like you could do that in C++ purely in library code
02:11:39 <kmc> i haven't tried, though
02:12:06 <shachaf> The special case is for any ADT that's obviously like Option, isn't it?
02:12:12 <kmc> right
02:12:26 <kmc> it's not for Option by name, but for any type with the same structure
02:12:30 <shachaf> E.g. I think you get it automatically for the equivalent of Either () T
02:12:33 <kmc> maybe
02:12:44 <kmc> it doesn't generalize out to n-ary enums where n-1 of the ctors are nullary, though :/
02:13:11 <kmc> reserve the first page of addresses for nullary enum discriminants!
02:13:12 <zzo38> If it is only for optimization then such a special case is probably OK, if it is controlled by the optimization setting.
02:13:30 <kmc> zzo38: I don't think it's controlled by the optimization setting, because it's part of the ABI?
02:13:36 <kmc> anyway i have to go, ttyl though
02:13:46 <zzo38> O, it is part of the ABI.
02:13:46 <shachaf> did you know that ghc ignores {-# UNPACK #-} with -O0
02:19:05 <zzo38> GNU C supports a "typeof" operator, which can do some of kind of things, such as typeof(*(X)0) might make the type of what X is being pointed to, but it won't do much with the normal C codes, although it still would have a few uses in macros.
02:19:50 <zzo38> Some of the C++ type adjustments stuff can be done in this way.
02:21:40 <zzo38> Therefore I have made up the (draft) specification which has struct/union with parameters, so using this, typeof becomes more useful, and so do many other things. Does Rust have "typeof" operator? Haskell doesn't seem to have, although perhaps similar things can be done in other ways, using the GHC extensions.
02:23:44 <zzo38> C++ type traits seems to have a lot of things, much seems not so useful, or can cause confusion in some cases.
02:23:55 <zzo38> But, maybe there is a use of it.
02:24:43 <zzo38> It does seem to me like a lot of these features could be simplified by using typeof instead.
02:28:07 -!- nisstyre has quit (Quit: Leaving).
02:30:01 -!- drlemon has joined.
02:32:12 <zzo38> Some of the features may seem to be useful for optimization though; maybe it would help to define another file which is used to specify which optimizations are possible, and if applicable (inside of a #master block) which modules it is applicable to.
02:35:04 <lifthrasiir> shachaf: yes, Either<(),T> does get optimized by rustc.
02:35:42 <zzo38> I didn't know that.
02:35:47 <lifthrasiir> and more generally, it may optimize enum Foo { Null, NonNull(uint, uint, uint, ~uint, uint) } since the NonNull variant has a non-nullable field
03:07:49 <kmc> oh, i didn't know about that
03:10:04 <lifthrasiir> kmc: and the gotcha is that Option<(uint,uint,uint,~uint,uint)> does not get optimized currently (though it's isomorphic to Foo above) ;)
03:10:12 <lifthrasiir> I think there is an issue about it
03:11:02 <lifthrasiir> #9378.
03:24:37 -!- LinearInterpol has quit (Ping timeout: 265 seconds).
03:59:21 -!- Yonkie has quit (Ping timeout: 276 seconds).
04:05:00 -!- Yonkie has joined.
04:06:47 -!- tertu has quit (Ping timeout: 272 seconds).
04:09:12 -!- conehead has quit (Quit: Computer has gone to sleep.).
04:11:06 -!- tertu has joined.
04:23:20 -!- tertu has quit (Ping timeout: 246 seconds).
04:24:34 -!- contrapumpkin has changed nick to copumpkin.
04:33:41 -!- mauke has quit (Disconnected by services).
04:33:51 -!- mauke has joined.
04:35:17 -!- preflex has quit (Ping timeout: 248 seconds).
04:36:09 -!- preflex has joined.
04:44:54 <pikhq> So, I finally got an electric kettle.
04:44:58 <pikhq> How did I live previously.
04:45:41 <oerjan> steam-powered, obviously.
04:45:46 <Sgeo> :t ContT
04:45:47 <lambdabot> ((a -> m r) -> m r) -> ContT r m a
04:46:00 <Sgeo> Would be nice if IO came with a ContT-like function
04:46:07 <Sgeo> So IO instead of ContT r IO
04:46:11 <pikhq> (they are not a common thing in the US.)
04:46:44 <zzo38> Sgeo: You would have to do it yourself, but Haskell lacks the macros to do it conveniently.
04:47:35 <Sgeo> Hmm, maybe not
04:48:01 <Sgeo> A single ContT r IO a is basically ... one marker that the continuation is delimited at
04:48:14 <Sgeo> I think
04:48:48 <Sgeo> http://www.reddit.com/r/haskell/comments/1b8wzp/my_shot_at_cont/c94v11y
04:50:06 <kmc> an electric kettle is not as good for making moonshine
04:50:44 <zzo38> ContT can be used for other things too, like this example: http://esolangs.org/wiki/Talk:Bruijndejx A lot of other similar things can be done too, with continuation monads.
04:52:13 -!- karlenarencibia has joined.
04:52:53 -!- karlenarencibia has left.
04:53:33 <pikhq> kmc: Yeah, but who cares?
04:53:55 <pikhq> Here in Missouri we don't need surreptitious distilling.
04:54:11 <zzo38> People who have electric kettles and who want to make moonshine, would care. If you don't want to make any such things, then you shouldn't care.
04:54:16 <pikhq> Stills are perfectly legal for personal use.
04:56:13 <kmc> distilling your own booze sounds fun tho
04:56:25 <Sgeo> There's a J monad. I do not know what it does.
04:56:48 <zzo38> Sgeo: Where is it in? If you have its definition, then you can learn.
04:56:50 <Sgeo> And of course searching for it gives hits regarding J's different use of the term 'monad'
04:56:54 <pikhq> Yup. And you can do up to 100 gallons of it.
04:56:58 <kmc> can't be as cool as the OMEGA MONAD
04:56:59 <Sgeo> http://www.reddit.com/r/haskell/comments/9clsr/wanted_applications_of_the_j_monad/
04:57:09 <pikhq> 100 gallons of azeotropic ethanol? Sure!
04:58:43 <Bike> i got an electric kettle for christmas, after trying and failing to boil water in a microwave
04:58:44 <kmc> that's about 8 × 10^9 joules
04:58:50 <Bike> and british people on irc asked me what the fuck i was doing
04:59:03 <kmc> british people on irc ask me what the fuck i'm doing every day
04:59:07 <pikhq> That's the typical American thing to do.
04:59:09 <zzo38> Sgeo: Well, there it is; furthermore, it is the same as (CodensityAsk (Op r)) which I think I might have proven.
04:59:18 <pikhq> Turns out boiling water in the microwave is shitty.
04:59:24 <Bike> yes. yes, it is
04:59:26 <Sgeo> I have even less idea what CodensityAsk is
04:59:30 <zzo38> (Therefore, the Escardo's S monad is also same as CodensityAsk Predicate)
04:59:42 <pikhq> Hence why I am wondering how I lived.
05:00:03 <Bike> well good to know it will be all my boiling water-related dreams and more
05:00:08 <zzo38> newtype CodensityAsk f x = CodensityAsk (forall r. f r -> (x -> r) -> r)
05:00:19 <Sgeo> Oh, infinite search in finite time
05:01:20 <Sgeo> http://math.andrej.com/2008/11/21/a-haskell-monad-for-infinite-search-in-finite-time/
05:01:25 <Sgeo> Some of those functions already have names
05:02:03 <Sgeo> search is the only one I don't recognize as either being Monad or ... there's another typeclass that union makes me think of, MonadPlus?
05:02:14 <zzo38> One feature of CodensityAsk is that if (Comonad f), then (MonadPlus (CodensityAsk f)).
05:06:32 <Sgeo> "This forces the sets to be non-empty, but has a defect: it also forces the find operator to tell lies when there is no correct element it can choose. "
05:06:33 <Sgeo> ew
05:15:12 <Sgeo> I seriously need to compare and contrast Rebol PARSE with monadic parsing
05:15:23 <Sgeo> Don't know enough about the former
05:17:54 <Sgeo> Rebol tends to suffer the same way as concatenative languages from being difficult to read when there are unfamiliar functions present :/
05:18:33 <Sgeo> Also from its love of doing exactly what I hate about dynamic typing culture
05:19:58 <Sgeo> I think I once decided though that Rebol strictly > Tcl
05:23:35 -!- oerjan has quit (Quit: Nit).
05:23:42 <Sgeo> http://www.red-lang.org/2013/11/041-introducing-parse.html claims that PARSE is composable
05:23:48 <Sgeo> Well, that the rules are
05:24:46 -!- FreeFull has quit (Read error: Operation timed out).
05:25:55 <Bike> yeah
05:29:11 -!- FreeFull has joined.
05:31:03 <Sgeo> hrmph, I don't think I agree with this slideshow's assessment of Rebol as having "dynamic binding"
05:31:15 <Sgeo> Oh, .... I confused binding and scoping
05:31:26 <Sgeo> It says definitional scoping. Which... ok
05:34:35 <Sgeo> Self-hosting reminds me of nomic. If you have a bug before you self host, that bug could stay there forever and be unfixable without anyone even noticing
05:34:38 -!- FreeFull has quit (Read error: Operation timed out).
05:37:59 <Sgeo> Oh, rebol's approach to Internet protocols is.... icky
05:38:03 <Sgeo> Global names for schemes
05:38:20 <Sgeo> Being able to type irc:// is SO valuable, let's give up modularity
05:38:28 <Sgeo> I don't know if Red will fix things like that
05:53:07 -!- tertu has joined.
05:55:18 <shachaf> zzo38: CodensityAsk should just be called Free or something.
05:55:39 <zzo38> shachaf: I know the name "CodensityAsk" is not so good, but "Free" refers to something else.
05:56:04 <shachaf> Yes, Free monad.
05:56:15 <shachaf> But that's a big abuse of the name Free. So many things are free.
05:56:20 -!- tromp has quit (Remote host closed the connection).
05:56:27 <zzo38> Yes, I know that
05:56:55 -!- tromp has joined.
06:01:23 -!- tromp has quit (Read error: Operation timed out).
06:06:59 -!- ter2 has joined.
06:08:18 -!- myndzi has quit (Ping timeout: 240 seconds).
06:08:41 -!- tertu has quit (Read error: Connection reset by peer).
06:17:04 -!- augur has quit (Read error: Connection reset by peer).
06:17:52 -!- augur has joined.
06:20:24 -!- myndzi has joined.
06:29:15 -!- FreeFull has joined.
06:51:40 -!- Sprocklem has quit (Ping timeout: 245 seconds).
06:59:15 -!- tromp has joined.
07:19:49 <lifthrasiir> ahaha, there was a big security incident in South Korea which exposed at least 130 million records of personal records from three credit card companies.
07:23:04 <lifthrasiir> and stupidly enough that was because they out-sourced the fraud detection system development to the other company and employees can easily access those informations
07:23:32 <lifthrasiir> seriously, the whole company is a great test bed for crackers :S
07:28:18 -!- Slereahphone has joined.
07:30:41 -!- tromp has quit (Ping timeout: 252 seconds).
07:48:04 -!- FreeFull has quit (Ping timeout: 246 seconds).
07:50:02 -!- FreeFull has joined.
07:52:04 -!- Slereahphone has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
08:11:19 -!- tromp has joined.
08:18:29 -!- ter2 has quit (Ping timeout: 265 seconds).
08:18:51 -!- MindlessDrone has joined.
08:32:24 -!- LinearInterpol has joined.
08:42:33 -!- tromp has quit (Ping timeout: 252 seconds).
08:59:28 -!- FreeFull has quit.
08:59:32 -!- tromp has joined.
09:03:24 -!- tromp has quit (Read error: Operation timed out).
09:04:01 -!- LinearInterpol has quit (Ping timeout: 246 seconds).
09:13:57 -!- hogeyui___ has quit (Ping timeout: 276 seconds).
09:22:37 <fizzie> There's some nondeterminism in my sox. :/
09:23:42 -!- rntz^2 has quit (Ping timeout: 252 seconds).
09:24:08 <zzo38> No! You have to put a question mark so that you can question yourself?
09:26:08 <fizzie> There's some nondeterminism in my sox?
09:30:42 <zzo38> OK
09:31:19 <zzo38> Is "Ouch" a proper name for a magical familiar in case they need to have a proper name (for any reason)?
09:32:08 <myname> ew, people actually write "concat [[x], xs]"
09:33:41 <zzo38> They do?
09:33:48 -!- zzo38 has quit (Quit: zzo38).
09:34:03 <myname> well, at least some of the students here
09:36:06 <coppro> myname: can you fail them for that?
09:36:30 <myname> sadly not
09:37:05 <myname> i also got [x] ++ xs sometimes
09:37:38 <myname> and even worse: foo (x:xs] | x:xs == [] = []
09:37:54 <myname> *)
09:38:50 <coppro> myname: winners
09:40:37 <myname> i kind of doubt they did proper testing
09:41:24 <coppro> dock all the grades
09:42:00 <myname> but worst thing i have seen so far is
09:42:03 <myname> 2^4 - 2^3
09:42:06 <myname> = 10 - 0
09:42:07 <myname> = 8
10:05:52 <oklopol> oerjan: (or someone else) do you know a proof that a countable subshift has 0 entropy other than stuff about the variational principle?
10:07:15 <oklopol> (with the variational principle: for subshifts, you can always find a measure of maximal entropy. such measures form a compact simplex so there's an extremal point. but an extremal point is clearly a periodic orbit.)
10:07:51 <oklopol> (and periodic orbits quite obviously have 0 entropy)
10:08:31 <oklopol> the first occurrence of "entropy" in my message being topological
10:17:35 -!- hogeyui has joined.
10:35:42 <mroman_> 2^4 - 2^3 is 8
10:36:33 -!- stuntaneous has joined.
10:37:01 <Taneb> mroman_, look at the intermediate step
10:38:15 <mroman_> Meh. Happens.
10:39:03 <mroman_> My brain is capable of assuming 4 - 0 = -4
10:39:30 <myname> if you are reading from right to left
10:39:44 -!- impomatic has quit (Ping timeout: 260 seconds).
10:40:27 <mroman_> I remember a statistics exam where all my intermediate results were correct
10:40:40 <mroman_> but I failed to write the end result correctly
10:40:46 <myname> how are the odds
10:41:24 <mroman_> stuff like sqrt(80) = 9.38
10:41:40 <myname> someone needed to make sqrt(2.25)
10:42:04 <myname> i told him "hey, try writing it as a fraction. hint: .25 may be quarters"
10:42:13 <myname> he wrote sqrt(9/4) in the end
10:42:22 <mroman_> uhm
10:42:25 <myname> it was kinda disappointing
10:42:29 <mroman_> that makes sense
10:42:35 <myname> it's not wrong
10:42:45 <mroman_> except it's 3/2
10:42:48 <myname> but i assume, you should be able to calculate sqrt(9/4)
10:43:06 <mroman_> how does one multiply fractions again?
10:43:12 <mroman_> a/b * c/d = ac/bd?
10:43:45 <mroman_> yeah
10:43:47 <mroman_> then 3/2
10:45:53 <mroman_> I'm pretty bad at math, especially with numbers
10:46:23 <mroman_> but luckily most stuff that's actually required if you're not actually studying math is pretty straight forward
10:48:42 <mroman_> What's the worst grade in the US required to still pass an exam?
10:49:08 <mroman_> D?
10:50:30 <mroman_> > (60/100*5)+1
10:50:31 <lambdabot> 4.0
10:50:45 <mroman_> sounds about right.
11:20:02 -!- atrapado has quit (Quit: Bye).
11:31:39 -!- LinearInterpol has joined.
11:54:45 <ion> WeeChat doesn’t handle joining a channel with 45365 users too well.
12:02:15 <Taneb> I did not realise such channels existed
12:04:06 <Taneb> Eevee 3 caught
12:09:54 <Taneb> Eevee 4 caught
12:09:59 <Taneb> Now for breakfast
12:10:02 -!- nortti has changed nick to nortticat.
12:10:24 -!- nortticat has changed nick to nortti.
12:10:39 <ion> taneb: #speeddemosarchivesda on irc.twitch.tv, i.e. the chat backend for http://de.twitch.tv/speeddemosarchivesda
12:12:09 <Taneb> Right, makes sense
12:12:22 <Taneb> A not-really-meant-to-be-used-as-an-IRC-channel IRC channel
12:19:44 <fizzie> Oh, it's AGDQtime.
12:20:00 -!- stuntaneous has quit (Ping timeout: 256 seconds).
12:20:09 <fizzie> (I did not even know.)
12:22:01 -!- yorick has joined.
12:28:20 -!- LinearInterpol has quit (Ping timeout: 252 seconds).
12:35:50 -!- conehead has joined.
12:55:04 -!- LinearInterpol has joined.
13:01:22 -!- LinearInterpol has changed nick to {}.
13:01:43 -!- {} has changed nick to {|}.
13:01:57 -!- {|} has changed nick to {^}.
13:02:12 -!- {^} has changed nick to {I}.
13:02:21 -!- {I} has changed nick to {L}.
13:02:37 -!- {L} has left ("Hack the planet.").
13:04:38 -!- boily has joined.
13:04:42 -!- metasepia has joined.
13:09:01 -!- {C} has joined.
13:12:29 -!- Sgeo has quit (Read error: Connection reset by peer).
13:13:02 -!- MindlessDrone has quit (Read error: Operation timed out).
13:24:58 <boily> {C}: just how many different nicks do you have?
13:26:15 <{C}> boily: the max that's allowed.
13:26:39 -!- hogeyui has quit (Ping timeout: 240 seconds).
13:27:12 -!- hogeyui has joined.
13:29:09 -!- MindlessDrone has joined.
13:30:37 <fizzie> Huh. There's this technology-themed event (short lectures intended for non-specialist audiences etc.) at the nearby conference place soonishly. There's one lecture that's just listed as "Laser".
13:33:08 <Taneb> Clerical error?
13:34:47 <fizzie> Well, I don't know. There's a subheading of approximately "technology of light" above that, and something about natural light.
13:35:19 <fizzie> But it's kind of unclear what to expect.
13:35:28 <fizzie> Perhaps they'll burn the attendees with lasers.
13:35:58 <boily> do you smell different if you get burned by different laser colours?
13:36:33 <fizzie> More research is clearly needed.
13:43:22 -!- ais523 has joined.
13:51:58 -!- jix has quit (Remote host closed the connection).
13:52:49 -!- jix has joined.
14:03:53 <ais523> `run printf "%2x%2x%2x" 71 108 108
14:03:54 <HackEgo> 476c6c
14:07:37 -!- Phantom_Hoover has joined.
14:08:53 <fizzie> fungot: What do you think of #476c6c as, say, a wall paint color?
14:08:54 <fungot> fizzie: it's a common reaction that you seem to be a fnord but good link on simplifying the metaobject stuff i think :p but neighbour might've woken up), 3)
14:12:02 <ais523> fizzie: that color is used as a colorkey for transparent in NetHack 4
14:12:10 <ais523> I'm not sure transparent wall paint would be such a good idea
14:12:14 <ais523> perhaps it would be
14:12:21 <int-e> hmm, as a color, that seems a bit dark.
14:12:22 <ais523> you get the benefit of paint but can still see the wall
14:13:24 <fizzie> fungot: Enumerate the non-colorrific benefits of wall paint, please.
14:13:24 <fungot> fizzie: i think that specifing relative heading sizes is not only a disassembler :)
14:13:26 <fizzie> (I'm sure I'll get something relevant out of there if I'm just patient enough.)
14:14:08 <int-e> fungot is about fun, not relevance, or is it?
14:14:08 <fungot> int-e: do you have a picture that actually highlights all of the
14:14:49 <int-e> Now fungot stopped in mid sentence leaving me wondering how it ends. How rude.
14:14:50 <fungot> int-e: i wonder why that restriction was imposed. i wanted to try
14:15:02 <int-e> And again.
14:19:34 <fizzie> fungot: I think there's something screwed up in your hardwired sentence length mechanism.
14:19:34 <fungot> fizzie: are you considering implementing a lang with that syntax?
14:19:53 <fizzie> fungot: Well, no. I can't even see how that makes sense.
14:19:53 <fungot> fizzie: my bot has been down for quite awhile since i've been on sine a few times. i knew i could change it
14:20:22 <fizzie> #esoteric -- the channel where even the bots have bots.
14:22:58 -!- Phantom__Hoover has joined.
14:26:35 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
14:30:30 -!- {C} has quit (Read error: Connection reset by peer).
14:30:56 -!- {C} has joined.
14:40:21 -!- metasepia has quit (*.net *.split).
14:40:21 -!- boily has quit (*.net *.split).
14:40:24 -!- preflex has quit (*.net *.split).
14:43:06 -!- metasepia has joined.
14:43:06 -!- boily has joined.
14:43:06 -!- preflex has joined.
14:45:07 -!- boily has quit (Quit: Poulet!).
14:45:15 -!- boily has joined.
14:45:37 <boily> that was the most impressivest netsplit I ever seen.
14:45:48 -!- metasepia has quit (Remote host closed the connection).
14:45:56 -!- metasepia has joined.
14:47:58 <ais523> boily: you were on the small side
14:48:06 <ais523> it looked really minor to me
14:50:56 <boily> I was on the miniature side. only my bot, that preflex karmic bot, and I were on it.
14:58:52 -!- `^_^v has quit (Quit: Leaving).
14:58:52 -!- mrhmouse has joined.
15:15:50 -!- ter2 has joined.
15:18:31 -!- `^_^v has joined.
15:32:19 -!- {C} has quit (Ping timeout: 272 seconds).
16:09:06 <FireFly> fungot: who's your bot?
16:09:06 <fungot> FireFly: they take an argument that i call with a selector function to get them started at a young audience.
16:12:25 -!- {C} has joined.
16:18:40 -!- FreeFull has joined.
16:26:33 -!- augur has quit (Ping timeout: 252 seconds).
16:27:37 -!- augur has joined.
16:29:58 -!- augur_ has joined.
16:30:01 -!- augur has quit (Read error: Connection reset by peer).
16:32:50 <mrhmouse> oh, we have fungot again?
16:32:51 <fungot> mrhmouse: are you new to scheme, exporting functions such as map.
16:33:37 <ais523> oh neat, Keymaker proved Forte TC
16:33:53 <ais523> and with a horrendously slow construction, it's always great when that happens
16:34:49 -!- augur_ has quit (Read error: Connection reset by peer).
16:35:18 -!- augur has joined.
16:41:29 <boily> Keymaker is still alive?
16:42:06 <ais523> boily: he avoids the IRC channel even more than I do
16:42:14 <ais523> I think we both care about esolangs more than the social stuff
16:49:54 <mrhmouse> Sounds reasonable. In the time that I've spent on #esoteric, I've seen more talk about traditionalangs, Unicode, and Finnish ball alcohol than esolangs.
16:51:17 -!- FreeFull has quit (Read error: Connection reset by peer).
16:52:55 -!- ter2 has quit (Read error: Connection reset by peer).
16:53:07 -!- ter2 has joined.
16:54:51 <quintopia> ais523: i was wondering whether continued fraction arithmetic was turing-complete
16:55:20 <Slereah> Well continued fraction and what else
16:55:30 <ais523> quintopia: huh, I don't know how it works
16:55:33 <Slereah> Like a functional language with continued fraction as a function?
16:55:43 <quintopia> ais523: for instance, whether one could do arbitrary computation by adding up a list of real numbers in continued fraction representation
16:56:04 <Slereah> If you allow real numbers, then yes
16:56:17 <Slereah> Because you can always find a real number containing exactly what you want
16:56:33 <Slereah> Find the real number containing the solution, divide it by 1
16:56:36 <Slereah> Bam!
16:56:38 <ais523> yeah but you might not be able to define it
16:56:53 <ais523> actually, I guess that's where the "computable" in "computable reals" comes from
16:56:58 <Slereah> Well that is the problem
16:57:04 <ais523> computable reals are TC, bounded-storage reals aren't
16:57:06 <Slereah> Some are not even definable!
16:57:09 <quintopia> Slereah: that part is obvious. the less obvious part is whether you can find real numbers which don't require a turing-complete generator to add up to the real number you want
16:57:31 <Slereah> quintopia : "real numbers that don't require a TC generators" are basically integers
16:57:41 <Slereah> Computable reals have a cardinality of aleph naught
16:58:03 <Slereah> If you allow more than integers, you get additions and such
16:58:07 <quintopia> Slereah: i can generate e with a sub-turing complete system. its continued fraction is a dead simple pattern
16:58:12 <Slereah> And additions plus some functional apparatus are already almost TC
16:58:39 <Slereah> Well
16:58:39 <quintopia> Slereah: "almost"
16:58:42 <Slereah> If you want
16:58:53 <Slereah> Markov did a nice article on how to generate computable numbers
16:59:27 <Slereah> Basically you need three computable integer functions
16:59:33 <Slereah> f, g and h
16:59:58 <Slereah> And you get x = (f(n) - g(n))/h(n)
17:00:12 <Slereah> And this will converge to x with n going to infinity
17:01:09 <quintopia> wow
17:01:54 <Slereah> Errr
17:02:02 <Slereah> x = (f(n) - g(n))/(h(n) + 1)
17:02:03 <quintopia> but f, g, and h might require a TC underlying system to compute them, yes?
17:02:05 <Slereah> To avoid PROBLEMS
17:02:19 <Slereah> Well yes, he defined them with µ-recursive functions
17:02:44 <Slereah> But
17:02:51 <Slereah> if you want to do continued fractions
17:03:06 <Slereah> This will imply some sort of loop
17:03:20 <Slereah> You might be able to replace the µ function with it maybe I guess?
17:03:34 <Slereah> Since it is also at heart the way of looping
17:04:29 -!- conehead has quit (Quit: Computer has gone to sleep.).
17:11:36 <quintopia> Slereah: i was thinking a way of generating continued fractions where each new term can depend on a constant number of previous terms, with basic arithmetic
17:12:06 <quintopia> Slereah: say, just addition, subtraction, and multiplicatio
17:12:07 <quintopia> n
17:12:30 <Slereah> Well you can just do addition and multiplication of relative integers
17:13:08 <quintopia> okay just that then
17:13:34 <quintopia> which means that every continued fraction one can generate this way is nondecreasing
17:13:56 <quintopia> obviously not turing-complete
17:14:30 <quintopia> well, maybe not obvious
17:14:52 <quintopia> but it's clear you can't generate an arbitrary computable number this way
17:15:19 -!- conehead has joined.
17:15:49 -!- Bike has quit (Ping timeout: 248 seconds).
17:16:37 -!- {C} has quit (Ping timeout: 252 seconds).
17:17:42 -!- Bike has joined.
17:30:45 -!- Phantom_Hoover has joined.
17:33:15 -!- Phantom__Hoover has quit (Ping timeout: 260 seconds).
17:39:21 -!- LinearInterpol has joined.
17:40:55 -!- Sprocklem has joined.
17:48:53 -!- nooodl has joined.
18:06:21 -!- FreeFull has joined.
18:11:47 <Gregor> Y'know, for a program called "Impress", LibreOffice Impress sure doesn't.
18:12:39 <Slereah> *rimshot*
18:12:55 <Gregor> @tell oerjan Oh? What does glogbackup say in !logs?
18:12:55 <lambdabot> Consider it noted.
18:19:46 -!- ais523 has quit.
18:44:19 -!- LinearInterpol has quit (Ping timeout: 246 seconds).
18:44:24 -!- zzo38 has joined.
18:46:16 <int-e> Gregor: Excel also doesn't. So they're in good company.
18:48:30 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
18:48:44 -!- Sprocklem has quit (Ping timeout: 265 seconds).
18:56:14 <mrhmouse> Is "Impress" the presentation one?
18:57:12 <int-e> uyyes.
18:57:25 <int-e> funny (I'm lagging). yes.
18:57:55 <int-e> (But at least this is good old-fashioned network lag, not a UI problem.)
19:25:13 -!- LinearInterpol has joined.
19:29:45 -!- LinearInterpol has quit (Ping timeout: 252 seconds).
19:32:46 -!- impomatic has joined.
19:39:52 -!- Sprocklem has joined.
19:56:31 <zzo38> I want to add Dan Hibiki into the Puzzle Strike game. (However, in Puzzle Fighter they only send red gems, and Puzzle Strike doesn't have any red gems; it has only green.)
20:17:23 -!- zzo38 has quit (Remote host closed the connection).
20:41:29 <myname> what is the puzzle striker game?
20:45:13 -!- Sprocklem has quit (Ping timeout: 265 seconds).
20:58:31 <mrhmouse> Street Fighter spinoff, I believe
21:08:01 -!- Sprocklem has joined.
21:44:20 -!- ter2 has quit (Read error: Connection reset by peer).
21:44:40 -!- ter2 has joined.
21:50:20 -!- ter2 has quit (Ping timeout: 260 seconds).
21:51:00 -!- MindlessDrone has quit (Quit: MindlessDrone).
21:59:04 -!- oerjan has joined.
22:00:17 <oerjan> @messages-ludo
22:00:17 <lambdabot> Gregor said 3h 47m 22s ago: Oh? What does glogbackup say in !logs?
22:01:37 <oerjan> @tell Gregor iirc it says something like that its logs will be quickly merged once glogbot returns.
22:01:37 <lambdabot> Consider it noted.
22:02:32 <oerjan> !logs
22:06:30 <mrhmouse> does anybody know if it's possible to get an input mode (in Windows) like Vim's digraphs? The chorded one is what I'm after (e.g. ^k l *)
22:08:32 -!- FreeFull has quit (Ping timeout: 260 seconds).
22:08:33 <Taneb> kmc, as someone in the US interested in rail travel, what are your thoughts on http://www.telegraph.co.uk/news/worldnews/asia/japan/10555330/Japan-offers-to-lend-US-half-the-cost-of-Super-Maglev-train-between-Washington-and-Baltimore.html
22:09:19 -!- Sorella has joined.
22:09:41 <kmc> my first thought is "lol you can't build a bike shed for $8 billion in the US"
22:09:53 <kmc> the japanese clearly aren't used to accounting for our beyond-ridiculous capital construction costs
22:10:07 <oerjan> <fizzie> There's some nondeterminism in my sox. :/ <-- either use the axiom of choice, or use shoes instead hth
22:10:25 <oerjan> also don't be 7 hours idle.
22:10:37 <kmc> maglev has a lot of problems, it needs totally different infrastructure everywhere
22:10:55 <kmc> they can't run high speed trains DC-Baltimore and continue them on to NYC
22:11:18 <kmc> and they aren't that much faster than high speed conventional rail
22:11:24 <oerjan> i thought the japanese were deep in depth already.
22:11:40 <Gregor> <oerjan> @tell Gregor iirc it says something like that its logs will be quickly merged once glogbot returns. // Depends on your definition of "quickly"
22:11:49 <Gregor> I consider "before the heat death of the universe" pretty quick.
22:11:55 <kmc> let's start with America getting some high speed rail of the form that existed in Japan and France 40+ years ago
22:12:00 <oerjan> Gregor: it did almost certainly not use those exact words
22:12:14 <kmc> and that now exists in practically every other developed nation
22:12:34 <kmc> America is just not the place to innovate in rail in any form
22:12:43 <oerjan> except norway. we also have ridiculous rail.
22:12:49 <Gregor> kmc: It was before everybody else beat us :)
22:13:11 <kmc> the only innovation we do is rebuilding things that exist elsewhere from scratch because they aren't american enough
22:13:26 <Gregor> You spelled "they don't have enough Jesus" wrong.
22:13:30 <kmc> like CA High Speed Rail could use ERTMS but ewwww, it has "european" in the name, let's invent our own signalling system from scratch at incredible cost
22:13:55 <kmc> Gregor: in Japan they call him Annual Gift-Giving Man and he lives on the moon.
22:16:49 <kmc> "Conventional Maglev technology is already in use on a number of short routes around the world, but is limited to a speed of around 267mph."
22:16:52 <kmc> uh
22:17:22 <kmc> there is ONE maglev in the world with passenger service meeting that description
22:17:45 <kmc> it connects Shanghai Pudong International Airport to the outskirts of the Shanghai Metro
22:18:51 <Bike> as in there's only one limited to 267 mph, or only one on a short route
22:18:58 <kmc> the only other "maglevs" in the world are things in the style of airport people movers that get up to 60 mph at most
22:19:19 <kmc> Bike: there's only one that gets anywhere near 267 mph or even a speed that would be impressive in 1900.
22:19:30 <Taneb> kmc, so, you're saying that a newspaper can exaggerate!? Wow!
22:19:40 <Taneb> Also
22:19:42 <kmc> you asked my opinion and there it is :)
22:19:49 <Taneb> Yeah, the article does make it seem futurey
22:19:53 <Taneb> I like future-y
22:20:12 <kmc> Americans love futurey sounding transport crap that will never get built
22:20:22 <kmc> because we are abject failures at implementing technology that was already proven in 1970
22:21:10 <kmc> hence HYPERLOOP
22:21:27 <kmc> the design documents for hyperloop don't hold up to even slight scrutiny
22:21:59 -!- FreeFull has joined.
22:22:02 <fizzie> Look, maglev is perfectly viable in Transport Tycoon, you just apply the conversion tool to the tracks.
22:22:12 <kmc> but thinking that a Silicon Valley billionaire will singlehandedly save us all with UFO technology is more plausible than thinking that the government and the railroad regulators could get their act together and join the 1970s
22:22:18 <Bike> fizzie has a point
22:22:21 <kmc> :D
22:24:59 -!- Sprocklem has quit (Ping timeout: 252 seconds).
22:45:20 -!- oeh has joined.
22:50:39 -!- FreeFull has quit (Quit: Rebooting into Linux).
22:50:40 -!- oeh has left.
22:53:10 -!- FreeFull has joined.
22:56:37 -!- TodPunk has quit (Read error: Connection reset by peer).
22:56:50 -!- TodPunk has joined.
23:33:42 -!- mrhmouse has quit (Read error: Connection reset by peer).
23:54:01 -!- LinearInterpol has joined.
23:54:20 -!- LinearInterpol has changed nick to {C}.
←2014-01-07 2014-01-08 2014-01-09→ ↑2014 ↑all