00:00:29 -!- hppavilion[2] has changed nick to hppavilion[1].
00:02:30 <hppavilion[1]> I got a Stare AST with a hand-crank executer working :)
00:05:43 <oerjan> it's obviously japanese: rapotoro no zono, which confusingly means it _is_ a raptor zone hth
00:10:13 -!- MDude has joined.
00:10:48 <oerjan> i'm sure pikhq can confirm
00:11:47 <pikhq> That is incredibly obviously JApanese.
00:12:38 <boily> pikhq: 確認しらないでください
00:17:20 <oerjan> i'm sorry, i was slightly incorrect, it's actually raputoru no zōn, or ラプトル のゾーン
00:18:09 -!- APic has joined.
00:25:58 <boily> hppavellon[1]. this is prolog.
00:26:26 <coppro> shachaf: I haven't a clue
00:26:49 <boily> fungot: hppavilion[1] is doing weird logical things.
00:26:49 <fungot> boily: ' ' for every y". that's why i rarely use it. also, whatever the student doesn’t have to provide evidence. please quote the title of the 2008 south ossetia war talk page is archived, then it can be still viewed on fnord keith binney user:keith binneykeith binney ( user talk:keith binneytalk) 06:15, 15 july 2007 ( utc)
00:27:33 <hppavilion[1]> boily: I /am/ buying a copy of To Mock a Mockingbird for kindle
00:28:25 <hppavilion[1]> Which is actually the most expensive one available (paperback is $7.39)
00:30:41 <boily> I need to curb my book acquisition. my backlog growth rate is exceeding my reading decay rate...
00:31:03 <boily> (says the guy who just bought the current Humble Book Bundle right now.)
00:31:31 -!- Patashu has quit (Remote host closed the connection).
00:31:33 <boily> would you rather pay 3 + 1i$, or 5 - 3i$?
00:31:49 -!- Patashu has joined.
00:35:07 <boily> $True doesn't typecheck with my brain.
00:35:45 <hppavilion[1]> boily: Everyone knows the American Economy is weak/dynamic typed
00:35:53 <fizzie> I was looking at a thing related to Euston station in Maps, and due to an attack of sillines typed "euston, we have a problem" -- #1 is reasonable, but wasn't expecting #2: https://googledrive.com/host/0B4J9OAzXNfZAYjQxai11SE1fdm8
00:36:09 <fizzie> At least it's trying to help.
00:36:39 <myname> obviously 3+1i$ is much less than 5-3i$
00:37:20 <boily> Mornington Crescent!
00:37:22 <myname> well, you could use the norm
00:37:39 <hppavilion[1]> myname: What's the norm again? Algebra II student here
00:37:55 <oerjan> obviously real and imaginary parts represent two currencies that are _not_ completely interconvertible hth
00:38:06 <boily> myname: yes, but that'd imply a loss of information by mapping back to Q from C.
00:39:08 <boily> myname: then it becomes unconfusing money, which isn't interesting.
00:39:32 <boily> hppavilion[1]: purely for statistical purposes, how öld are you?
00:40:59 <oerjan> although capitalism probably implies there will be _some_ conversion price.
00:42:08 <boily> we're at the vanguard of a booming market of complex money changers.
00:47:53 <hppavilion[1]> Then some douchebag introduces Sedenions to the world of money
00:50:25 <boily> that is something I won't be put with at up.
00:51:01 -!- boily has quit (Quit: FILIBUSTER CHICKEN).
01:00:21 <Phantom_Hoover> hppavilion[1], sedenions are too useless even for mathematicians, so... not much
01:00:47 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:02:36 <zzo38> What kind of thing can use units of square money? (I don't mean money which is shaped like square)
01:11:03 -!- mauris has quit (Quit: Leaving).
01:11:17 -!- doesthiswork has joined.
01:24:30 -!- MDude has changed nick to MDream.
01:25:01 <Sgeo> Apparently iOS 9 is adding a back button. And there goes one of the reasons I'm sometimes tempted to look at iPhones. Unless maybe iOS back is implemented better than Android?
01:25:39 <myname> what's wrong with androids back button?
01:26:05 <Sgeo> It's total nonsense.
01:26:26 <Sgeo> It doesn't go back to the last thing you were doing, sometimes it will go back in the application you just switched to via notification
01:26:58 <myname> it almost always does what i expect it to do
01:27:17 <myname> including going back to the last thing i was doing
01:27:32 <doesthiswork> It felt as if I was being teased because it talked about them as black boxes, while my thought was "what is the point of a box if not to look inside". I'm probably a descendant of pandora.
01:28:55 <myname> if it does stupid things it is because of apps that don't use the default action paradigm
01:29:04 <myname> skype for example sucks at that manner
01:29:17 <Sgeo> myname, YouTube is a Google app
01:29:42 <myname> what's wrong with youtubes back button behaviour?
01:29:48 <Sgeo> I think it's the default action paradigm sucks
01:29:57 <myname> it goes back your video watching history perfectly fine
01:30:14 <myname> which is exactly what i expect
01:30:14 <Sgeo> WHat if you wanted to go to what you were doing before, not within the YouTube app?
01:30:59 <Sgeo> "For example, when a notification takes the user to an activity deep in your app hierarchy, you should add activities into your task's back stack so that pressing Back navigates up the app hierarchy instead of exiting the app."
01:31:06 <myname> it should do that if you are at the start of the youtube history
01:31:27 -!- idris-bot has quit (Ping timeout: 255 seconds).
01:31:30 <Sgeo> myname, but if a notification popped up linking me to a video, I don't want to go back to youtube history if I'm done with the video
01:31:39 <Sgeo> etc. with Gmail
01:31:53 <myname> it doesn't, because there is no history then
01:32:32 <myname> if i open any link in connectbot in any app and press back there i will get back to connectbot
01:32:32 -!- Melvar` has joined.
01:33:53 -!- Melvar has quit (Ping timeout: 265 seconds).
01:34:07 <myname> it even works perfectly fine with multiwindow here
01:36:36 <Sgeo> I am now in reddit is fun. I get a notification about a new email. I open it, read the email. I press back, and it goes to my inbox (?!). I press back again, and I finally get back to reddit is fun
01:40:03 -!- Melvar`` has joined.
01:41:59 -!- Melvar` has quit (Ping timeout: 250 seconds).
01:44:14 -!- Melvar has joined.
01:46:27 -!- Melvar`` has quit (Ping timeout: 265 seconds).
01:47:54 -!- mihow has quit (Quit: mihow).
01:48:51 -!- Melvar` has joined.
01:50:26 -!- Melvar has quit (Ping timeout: 240 seconds).
02:44:57 -!- bb010g has joined.
02:48:18 -!- Patashu has quit (Remote host closed the connection).
02:48:40 -!- Patashu has joined.
02:56:19 -!- hppavilion[1] has quit (Ping timeout: 240 seconds).
03:00:45 -!- oerjan has quit (Quit: Niiiiite).
03:07:24 -!- doesthiswork has quit (Quit: Leaving.).
03:13:39 -!- bender| has joined.
03:30:58 -!- hppavilion[1] has joined.
03:34:33 <zzo38> I don't know, is there a combinator like that?
03:37:55 <shachaf> coppro: Why do you have all these nicks?
03:39:33 -!- oren_ has changed nick to \oren\.
03:40:14 -!- \oren\ has changed nick to oren.
03:40:19 -!- oren has changed nick to \oren\.
03:52:29 <zzo38> Are you good at Dungeons&Dragons game?
03:55:39 -!- hppavilion[1] has quit (Ping timeout: 240 seconds).
04:01:49 <Sgeo> "The _first round_ of getting my data off my dead harddrive will take around 3.5 days..."
04:02:12 <Sgeo> I... don't know where I got that number from. At least I have a date for when I started researching this
04:02:34 <Sgeo> I don't know why it would take that long. Nor where that HD went....
04:03:00 <zzo38> What is the capacity of the dead harddrive?
04:04:29 <zzo38> In my case it was the CPU that stopped working, rather than the harddrive, which still works and is now in a bag to label it and protect it from dust; I remove it when I need to copy some of the files from it
04:04:48 <shachaf> zzo38: I haven't played for ~15 years.
04:05:15 -!- JesseH has quit (Read error: Connection reset by peer).
04:07:06 <zzo38> shachaf: What characters you have made up and what version and are you any good at it?
04:07:14 <\oren\> I am working on a 8 by 8 version of my font
04:07:31 <shachaf> zzo38: I was pretty young, and it was in Hebrew.
04:07:45 <shachaf> It was an after-school thing in elementary school.
04:08:04 <shachaf> I think I didn't come up with a name for my character, so the person running it gave it an interim name.
04:08:30 <shachaf> Perhaps the interim name was "Niagara".
04:09:46 -!- digitalcold has quit (Changing host).
04:09:46 -!- digitalcold has joined.
04:10:15 <zzo38> Yes but what detail of character? Even if you did not write the name then you must have made up the other stuff
04:10:33 <shachaf> I think it was probably a wizard.
04:10:39 <shachaf> And I'm guessing Chaotic Evil.
04:10:53 <shachaf> Or at least I initially wanted to be Chaotic Evil. Someone might've dissuaded me.
04:11:18 <shachaf> I remember casting a sleep spell and then killing a bunch of monsters -- goblins? -- with a dagger while they were asleep.
04:11:46 <shachaf> And there was some sort of object -- altar? table? it might've been made of stone -- that we needed to destroy or something, though we didn't know that at the time.
04:11:53 <shachaf> I think we needed to destroy it with some sort of special hammer.
04:15:13 -!- jameseb has quit (Ping timeout: 256 seconds).
04:15:32 -!- Taneb has quit (Ping timeout: 246 seconds).
04:16:00 -!- Patashu has quit (Ping timeout: 264 seconds).
04:16:24 <zzo38> There are many spells that can be used to destroy stuff made of stone too but you might not necessarily have any such spells. And there would be other ways to do it that do not involve any magic.
04:18:58 -!- hppavilion[2] has joined.
04:19:20 <hppavilion[2]> Pancakification: What happens to you as you fall into a White Hole
04:19:51 -!- Patashu has joined.
04:25:10 <zzo38> I don't know much about White Hole?
04:26:19 <fizzie> I've heard it's just like a time-reversed black hole.
04:27:51 -!- variable has joined.
04:48:40 <\oren\> well then shouldnt people fall out of it, rather than in?
05:02:30 <hppavilion[2]> zzo38: fizzieL \oren\: It's basically a region in space where you can never enter, but can leave.
05:02:56 <shachaf> zzo38: It was some special important thing.
05:03:21 -!- rodgort has quit (Quit: Leaving).
05:04:38 <hppavilion[2]> I'm going to guess no, as there's no way to distinguish the "operators" (combinators) from the "operands" (combinators (case and point))
05:05:10 <hppavilion[2]> Not without parenthesis or an argument count argument, at least
05:14:42 -!- bender| has changed nick to bender.
05:16:15 -!- hppavilion[2] has changed nick to hppavilion1.
05:16:20 -!- hppavilion1 has changed nick to hppavilion[1].
05:16:39 <hppavilion[1]> So RPN Combinatory Logic is /not/ a thing, correct?
05:22:30 -!- rodgort has joined.
05:27:27 -!- Patashu has quit (Remote host closed the connection).
05:27:43 -!- Patashu has joined.
05:32:41 -!- Sgeo has quit (Quit: Leaving).
05:33:22 -!- JesseH has joined.
05:33:52 -!- Sgeo has joined.
05:42:37 <\oren\> http://fontstruct.com/fontstructions/show/1186284 <-- also, I made another font, this one is square
05:42:55 <hppavilion[1]> \oren\: Well RPN works with arithmetic and such because we can distinguish between operators and operands
05:43:06 -!- Wright has quit (Ping timeout: 240 seconds).
05:43:28 <hppavilion[1]> "Operators" and "Operands" (which are /not/ the correct terms) are the same
05:44:43 <hppavilion[1]> And furthermore, the number of other combinators a combinator accepts can vary (K (S x y) ) vs. (K (S x) y)
05:46:30 <hppavilion[1]> (also, having an RPN combinatory logic where we have an extra syntax where we write the argument count is cheatig)
05:47:18 <hppavilion[1]> I guess perhaps "x y S K" would be different from "x y K S". That's probably the solution, now that I think about it.
05:48:15 <hppavilion[1]> The SYA doesn't support variable-length function arguments for a reason
05:49:29 -!- variable has quit (Quit: 1 found in /dev/zero).
05:50:40 <\oren\> hmm you could use , and . instead of spaces
05:51:33 -!- Thisbe has joined.
05:51:58 <hppavilion[1]> \oren\: And how would that help? What would , and . mean?
05:53:23 <\oren\> . would be used as function composition
05:53:34 <\oren\> , would be used to separate arguments
05:55:56 <\oren\> IOW every S expression would be of the form
05:56:40 <hppavilion[1]> I'd probably just be better sticking with normal notation
05:58:56 <hppavilion[1]> That is, you have to code in a parsed program as a literal
06:03:37 <hppavilion[1]> "Turing Tarpits are easy. Come back when you want to ACTUALLY design a language"
06:06:57 <hppavilion[1]> I mean, tarpits are nice and all, but pretty much only when they bring something new to the table
06:14:52 -!- hppavilion[1] has quit (Ping timeout: 246 seconds).
06:16:20 -!- bender has quit (Quit: Ping Pong Fuckout).
06:16:38 -!- bender has joined.
06:17:16 -!- bender has quit (Remote host closed the connection).
06:20:10 -!- bender|_ has joined.
06:20:16 -!- bender|_ has quit (Remote host closed the connection).
06:20:27 -!- bender| has joined.
06:21:36 -!- bender| has changed nick to bender.
07:25:13 -!- sc00fy has joined.
07:40:51 <myname> go tell the thousand people that design bf derivates
07:42:24 -!- TieSoul has joined.
07:43:11 -!- ^v has quit (Remote host closed the connection).
07:46:26 -!- augur has quit (Remote host closed the connection).
07:47:02 -!- augur has joined.
07:47:46 -!- TieSoul has quit (Ping timeout: 260 seconds).
07:50:52 -!- TieSoul has joined.
07:56:06 -!- sc00fy has quit (Ping timeout: 240 seconds).
08:15:01 -!- Taneb has joined.
08:39:06 -!- AnotherTest has joined.
08:44:40 -!- Thisbe has quit (Ping timeout: 240 seconds).
09:11:14 -!- hppavilion[1] has joined.
09:15:28 -!- hppavilion[1] has quit (Ping timeout: 246 seconds).
10:38:08 -!- AnotherTest has quit (Ping timeout: 272 seconds).
10:44:57 -!- doesthiswork has joined.
10:59:38 -!- jameseb has joined.
11:07:16 -!- x10A94 has joined.
11:07:58 -!- Melvar` has changed nick to Melvar.
11:11:39 -!- JesseH has quit (Read error: Connection reset by peer).
11:16:34 -!- AnotherTest has joined.
11:18:17 -!- AnotherTest has quit (Client Quit).
11:25:53 <quintopia> i think we should have a corewars type game based on aubergine. much lower barrier to entry with many of the same strategies available
11:28:13 <quintopia> @ask boily corewars-clone based on aubergine?
11:29:26 <int-e> . o O ( damn, let me try that again )
11:44:04 -!- idris-bot has joined.
11:52:44 <HackEgo> [wiki] [[List of Turing-complete models of computation]] http://esolangs.org/w/index.php?diff=44281&oldid=44274 * SuperJedi224 * (+9) /* Turing machines */
11:53:33 <HackEgo> [wiki] [[List of Turing-complete models of computation]] http://esolangs.org/w/index.php?diff=44282&oldid=44281 * SuperJedi224 * (+91) /* Turing machines */
11:57:08 <HackEgo> [wiki] [[List of Turing-complete models of computation]] http://esolangs.org/w/index.php?diff=44283&oldid=44282 * SuperJedi224 * (+94) /* Turing machines */
11:58:22 <int-e> quintopia: ftr, that started out as "Do you hate verbs?" but some subtleties got lost in the translation into the quintopian language ;)
12:00:17 <quintopia> you cant drop verbs unless they are implied in quintopiese
12:03:46 -!- blurelIse has joined.
12:11:53 <Melvar> Where the hell did (&) as reverse function application come from?
12:13:36 -!- jameseb has quit (Quit: ZNC - http://znc.in).
12:13:37 -!- Taneb has quit (Quit: I seem to have stopped.).
12:14:21 <blurelIse> possibly from a catamorphism melvar but im no expert
12:15:47 <int-e> https://mail.haskell.org/pipermail/libraries/2012-November/018832.html
12:15:56 -!- jameseb has joined.
12:16:08 <int-e> "the nae was free to take" seems to have played a significant role
12:16:43 <Melvar> The obvious choice, (#), wasn’t?
12:19:52 <int-e> hmm, lens 3.4: renamed `(%)` to `(&)`; lens 2.9: Renamed `|>` to `%`
12:21:40 <int-e> Anyway none of these names is obvious to me. I've seen code using |> in ML...
12:22:04 <Melvar> Certaintly F# uses that operator IIRC.
12:31:02 <int-e> hmm... 'The mnemonic for % is 'mod'ify.'
12:35:07 <int-e> (quoting from https://github.com/ekmett/lens/issues/17) later this happened: https://github.com/ekmett/lens/issues/100 ... Michael Sloane offerse a mnemonic for &: '(&) somewhat naturally suggests "and then" ... "and then"'
12:36:58 <int-e> and edward sums it up here, https://mail.haskell.org/pipermail/libraries/2012-November/018843.html
12:40:56 <Melvar> (&) is perfect for reverse *composition*, in my view.
12:41:36 <Melvar> “Another popular color of this bikeshed, (#) as is used in diagrams, interacts very poorly with MagicHash and has a very high precedence that ruins it for most dsl purposes.”
12:41:44 <Melvar> Why would it ever interact with MagicHash?
12:42:34 <Melvar> Moreover, why are you bound to use the same precedence as a given example using the name?
12:49:20 -!- boily has joined.
12:52:33 <Melvar> Anyway, a missed opportunity to make sense. I’ll quiet down about it now.
12:56:33 -!- FreeFull has quit (Ping timeout: 256 seconds).
12:56:42 -!- draghi has joined.
12:58:30 -!- FreeFull has joined.
13:02:35 -!- draghi has quit (Quit: Leaving).
13:13:59 -!- Patashu has quit (Ping timeout: 240 seconds).
13:52:25 -!- heddwch has changed nick to heddwc.
13:53:46 -!- heddwc has changed nick to heddwch.
14:19:30 -!- oerjan has joined.
14:22:38 -!- MDream has changed nick to MDude.
14:23:47 <\oren\> The current UTF-8 standard is wasteful with the code points now limited to 10FFFF
14:24:47 <izabera> what do you mean by "now"?
14:24:56 <izabera> did they change the standard?
14:25:48 <\oren\> originally you could have code points up to 31 bits
14:31:05 <FreeFull> UTF-8 would support code points up to 31 bits without any problem
14:31:21 <\oren\> upto to 36 bits, actually
14:31:35 <FreeFull> Yeah, without any problem and then some
14:31:44 <\oren\> but they limited it at first to allow utf-32 to work
14:31:57 <\oren\> now they limited it for utf-16
14:32:23 <myname> utf-16 - with all the disadvantages of utf-8 and utf-32 combined
14:32:27 <\oren\> One program I wrote uses utf-24
14:32:34 <FreeFull> At least it won't be limited any further now
14:33:51 <\oren\> e.g. it does (*(t_int32*)(s+i*3))&0xFFFFFF
14:35:10 <\oren\> the lowest 8 bits of the next code point have to be stripped out, but hey it works
14:36:52 <\oren\> utf-24 would be an eminently practical way to transmit data consisting mostly of supernal plane characters
14:38:36 <lambdabot> quintopia asked 3h 10m 23s ago: corewars-clone based on aubergine?
14:38:59 <boily> @tell quintopia Ō_Ō holy fungot that is one froody idea!
14:39:00 <fungot> boily: let's try to get the answers from biologists," he says. " these people used bin's power, authority and facilities to carry out this operation."
14:39:36 <boily> `addquote <fungot> let's try to get the answers from biologists," he says. " these people used bin's power, authority and facilities to carry out this operation."
14:39:36 <fungot> boily: justin returns annually to alsace where he if fnord as the fnord
14:39:38 <HackEgo> 1254) <fungot> let's try to get the answers from biologists," he says. " these people used bin's power, authority and facilities to carry out this operation."
14:40:10 <\oren\> supernal plane is from Mage: The Awakening
14:40:14 <boily> fungot: I don't really care about what Justin does. I'm still gonna vote for my local NDP deputee.
14:41:46 <\oren\> I am planning on flipping a coin and voting either red or orange depending
14:42:33 <\oren\> because canadiane politics is supremely boring
14:42:53 <boily> red bad. orange good. orange is your friend. oraaaaaaaange.
14:43:38 <\oren\> which one is going to refund the CBC?
14:43:51 <\oren\> I want my damn hockey broadcasts
14:44:48 <lifthrasiir> \oren\: it is hard to do better than UTF-8. you *can* lower the average bytes for each code point but not that much. let's keep ASCII compatibility and reassign x lead bytes and y cont. bytes (x+y=128); then some code points will get 4-byte sequence as the minimum of x*y^2 = 310 675 << 2^21.
14:44:49 <\oren\> oh it's the orange. orange then
14:45:27 <fungot> Available: agora alice c64 ct darwin discworld enron europarl ff7 fisher fungot homestuck ic irc iwcs jargon lovecraft nethack oots pa qwantz sms speeches ss wp* youtube
14:45:33 <fungot> Selected style: wp (1/256th of all Wikipedia "Talk:" namespace pages)
14:45:44 <boily> coppro: chelloppro. as a fellow canuck, any political persuasions we should be aware of?
14:45:46 <\oren\> lifthrasiir: yeah but for most languages you want to skew it heavily to make the BMP chars shorter
14:46:12 <coppro> federally, at any rate
14:46:45 <lifthrasiir> \oren\: the minimum of x*y = 4 096, so the resulting distribution will be heavily skewed (even when there are 2^16 code points you have to assign many of them 3-byte sequences)
14:50:00 <\oren\> Hmm what if we assigned the currently unused chars to make particular sets of 3-byte chars 2-bytes
14:51:18 <\oren\> like F5, we could assign to make hiragana. and F6 to katakana
14:52:30 <\oren\> Also the system leaves many, many sequences invalid which could be used
14:54:59 <\oren\> I'll have to think about this
14:57:16 <boily> I believe it'll only create a mess similar to Shift-JIS.
14:59:52 <\oren\> shift-jis is only a mes because of 0xx and 1xx bytes being used in wide char encodings
15:00:22 <\oren\> there's no reason to discard a whole range of sequences of high-bit bytes
15:04:02 <Vorpal> Hm they limited Unicode?
15:04:32 <Vorpal> How many unallocated code points are left now?
15:11:50 <Vorpal> well, still a while until we run out then
15:13:09 <Vorpal> \oren\, I think we should use UTF-32 instead. If you are worried about space usage, just zlib it or something
15:13:23 <Vorpal> At least for data storage and transfer that makes sense
15:13:32 <Vorpal> Maybe not for processing though
15:15:16 <\oren\> A trivial encoding like "one 2xx byte followed by one or more 3xx bytes" would give us 2 bytes for points up to 0x1000 and three bytes for points up to 0x40000
15:17:21 <\oren\> it woukd give india a treat by making devanagari only 2 bytes each
15:17:56 -!- MercurialHg has joined.
15:18:06 <Vorpal> \oren\, again, why does it matter? zlib is going to do a better job anyway
15:18:18 <int-e> \oren\: ah, but that wouldn't be self-delimiting; you need to look ahead in order to figure out whether a character was fully transmitted.
15:18:25 <\oren\> Vorpal = word processing
15:18:54 <int-e> (or more abstractly, it's not a prefix code)
15:19:08 <\oren\> int-e: yes. but transmission codes provide delimiters anyway
15:19:13 <Vorpal> \oren\, wouldn't UTF-32 be a better in memory representation anyway? That way characters are fixed with
15:20:11 <Vorpal> MercurialHg, balanced ternary
15:20:12 <\oren\> yes but do you really want to decode/reencode everying in every sed, grep etc implementation?
15:20:20 <Vorpal> (I have no idea what sort of language it is)
15:20:32 <Vorpal> \oren\, okay, that makes sense
15:21:07 <Vorpal> \oren\, though actually you don't need to: gzip -d foo.gz | grep | sed | gzip -
15:21:22 <Vorpal> Assuming everything is UTF-32 anyway
15:21:47 <\oren\> that's the same problem. you end up with a lot of extra processing
15:23:14 <\oren\> Oh I get it, you thought by word processing I meant like MS Word. whoops
15:24:08 <Vorpal> \oren\, emacs, stuff like that
15:24:10 <\oren\> I meant like you have a big file of CSV or JSON or whatnot and you want to process it
15:25:41 <\oren\> ideally for such process (which could happen on a server request) you should be able to do it very fast.
15:26:22 <\oren\> and with very little memory
15:27:05 <Vorpal> \oren\, though HTTP is increasily zlibed these days
15:29:13 <\oren\> assholes using a million cross-site mega-cookies, probably.
15:30:05 <boily> MercurialHg: ytterbot.
15:31:33 <Vorpal> MercurialHg, It should be called SubversionSvn
15:31:33 <oerjan> if you don't get that you don't deserve to name bots after elements hth
15:31:56 <Vorpal> boily, yes that is a very neat name
15:32:33 <Vorpal> oerjan, which ones was it again... Scandium, Yttrium, Yterbium, and some other I forgot the name of, right?
15:33:18 -!- villasukka has quit (Remote host closed the connection).
15:33:18 -!- atehwa has quit (Read error: Connection reset by peer).
15:33:55 <Vorpal> \oren\, oh and Terbium too
15:34:21 <Vorpal> And holmium and thulium
15:34:42 <Vorpal> Apparently not Scandium though
15:36:32 <Vorpal> According to wikipedia indeed not
15:36:37 <Vorpal> "At a quarry and mine near the village, the rare earth mineral yttria was discovered and named after the village. This crude mineral eventually proved to be the source of four new elements that were named after the mineral ore and the village. These elements are yttrium (Y), erbium (Er), terbium (Tb), and ytterbium (Yb)[1] and were first described in 1794, 1842, 1842, and 1878, respectively. In 1989 the
15:36:37 -!- boily has quit (Quit: OPINION CHICKEN).
15:36:37 <Vorpal> ASM International society installed a plaque at the former entrance to the mine, commemorating the mine as a historical landmark.[2]
15:36:37 <Vorpal> In addition, three other lanthanides, holmium (Ho, named after Stockholm), thulium (Tm, named after Thule, a mythic analog of Scandinavia), and gadolinium (Gd, after the chemist Johan Gadolin) can trace their discovery to the same quarry.[3]"
15:37:07 <Vorpal> Scandium is not in the list
15:37:20 <Vorpal> oerjan, yes, what were you talking about?
15:37:27 <oerjan> i thought you were just naming elements named after scandinavian places
15:37:56 <zzo38> I have written a SQLite extension to parse JSON (based on PDJSON, with one bug fixed), so that is one way to process big file of JSON by using a database, if you would need to.
15:39:05 -!- Lunarian has joined.
15:40:00 -!- MercurialHg has quit (Ping timeout: 264 seconds).
15:44:43 <oerjan> Vorpal: the article on Scandium itself is intriguing, though. it *was* extracted from gadolinite. it's not a lantanoid, though.
15:54:48 -!- Lunarian has quit (Read error: Connection reset by peer).
16:07:07 -!- bender has quit (Quit: [you can't stop this one: REKKKKT REKKT REKT!]).
16:22:30 <oerjan> @ask hppavilion[1] <hppavilion[1]> So RPN Combinatory Logic is /not/ a thing, correct? <-- does unlambda with the grammar in reverse count?
16:23:44 <oerjan> @tell hppavilion[1] i.e. si`i`si`i`` or even iis``iis```
16:25:53 <oerjan> @tell hppavilion[1] <hppavilion[1]> And furthermore, the number of other combinators a combinator accepts can vary (K (S x y) ) vs. (K (S x) y) <-- that's just currying
16:31:11 -!- Wright has joined.
16:44:09 <oerjan> @tell Melvar <Melvar> Why would it ever interact with MagicHash? <-- if MagicHash is on, it's often mandatory to put space before it when using it as an operator.
16:44:32 <edwardk> int-e: (|>) has the wrong semiotics in haskell. it seems related to (<|>). (%) conflicted with Data.Ratio, which rather upset a number of folks.
16:45:00 -!- nortti has changed nick to newbottomman.
16:45:06 -!- newbottomman has changed nick to nortti.
16:45:07 <oerjan> and |> is used in Data.Sequence
16:45:33 <edwardk> int-e: that is why those went away and (&) which has the benefit of being shorter than (|>), being unpaired due to (|) being taken by syntax, and being more or less unused because of confusion about and and or operators won
16:46:08 <edwardk> so yitz offered up (&) and i had no reason to prefer (%) over it other than stubbornness and i switched
16:46:32 <edwardk> and so the 'and...' sequencing mnemonic had the benefit that someone might guess it
16:48:40 <lambdabot> The operator ‘|>’ [infixl 5] of a section
16:48:40 <lambdabot> must have lower precedence than that of the operand,
16:49:34 <Melvar> oerjan: Surely you’re going to put a space before it anyway in all cases.
16:50:11 <oerjan> Melvar: well _some_ people might not. they might want to chain it like . especially if using lens
16:52:20 <Melvar> My own opinion is that (&) should have been reverse composition because of the and-then mnemonic. So “foo . bar . baz $ x” flips into “x # baz & bar & foo”.
16:53:04 <edwardk> Melvar: we already have the noisier operator (>>>) for that
16:53:09 <oerjan> my own opinion is that haskell sacked its syntax czar too early.
16:53:13 <edwardk> but (&) didn't have a name
16:53:41 <edwardk> a shorter (>>>) would have been useless to me and i'd have wound up taking (%) or something for this purpose anyways.
16:54:06 <lambdabot> ‘&&’ (imported from Data.Bool), ‘/=’ (imported from Data.Eq),
16:54:50 <edwardk> > (1,2) &~ do _1 %= 1; _2 *= 200
16:54:53 <lambdabot> arising from a use of ‘show_M724657678350748221816791’
16:54:53 <lambdabot> The type variable ‘t0’ is ambiguous
16:55:44 <edwardk> > (1,2) &~ do _1 += 1; _2 *= 200
16:56:03 <Melvar> ( :let instance Category (\a,b => a -> b) where id = Basics.id; (.) = Basics.(.)
16:56:17 <edwardk> &~ is inconsistent, because there is no operator & that takes a coherent type for its second argument and the result.
16:56:23 <oerjan> edwardk: pretty sure %~ and %= "should" have been &~ and &= if redoing this stuff
16:56:26 <edwardk> so it falls into a lexical gap
16:56:57 <edwardk> oerjan: you have hit on what % originally was 'mod', and why those had those names
16:57:13 <edwardk> but we kept the %~ and %= names
16:57:15 <oerjan> yeah i did rid the mailing list link above
16:57:24 <Melvar> ( :t Category.(.) (*2) (+1)
16:57:24 <idris-bot> Can't resolve type class Category cat
16:59:20 <oerjan> edwardk: there ought to be alphanumeric versions of <%~ and <<%~
16:59:53 <oerjan> they're like a gap in the alphanumeric style
16:59:54 <edwardk> meh, you can write them easily enough directly just by picking f = (,) a
17:00:13 <edwardk> the combinators do not try to offer everything the operators do
17:00:23 <edwardk> the names get too verbose and messy too quickly
17:00:29 <edwardk> the operators have a nice concise morphology
17:00:38 <edwardk> for those with religious objections to operators they can roll their own
17:00:51 <oerjan> well i understand not translating any other base operators than % and sometimes .
17:01:21 <oerjan> but i'm thinking maybe every "%" operator should have one
17:01:38 <edwardk> decided just not to climb this slippery slope =)
17:01:59 <edwardk> you have no idea how many bikeshedding requests in different directions like that i get every day about lens
17:02:14 <edwardk> so my apathy here is a result of having been worn down to a nub ;)
17:02:36 <lambdabot> *** "nub" wn "WordNet (r) 3.0 (2006)"
17:02:36 <lambdabot> n 1: a small lump or protuberance [syn: {nub}, {nubble}]
17:02:36 <lambdabot> 2: a small piece; "a nub of coal"; "a stub of a pencil" [syn:
17:14:47 -!- Taneb has joined.
17:21:24 -!- ^v has joined.
17:33:10 -!- ^v has quit (Ping timeout: 246 seconds).
17:34:48 <idris-bot> Prelude.List.nub : Eq a => List a -> List a
17:34:48 <idris-bot> Data.Vect.nub : Eq a => Vect n a -> (p : Nat ** Vect p a)
17:40:10 -!- Sprocklem has quit (Ping timeout: 240 seconds).
17:41:45 -!- Sprocklem has joined.
18:02:27 -!- ^v has joined.
18:03:36 -!- sc00fy has joined.
18:09:38 -!- oerjan has quit (Quit: leaving).
18:10:18 -!- hppavilion[1] has joined.
18:13:59 -!- AnotherTest has joined.
18:28:31 -!- JesseH has joined.
18:40:11 -!- heroux has quit (Ping timeout: 255 seconds).
18:41:10 -!- heroux has joined.
18:48:23 -!- x10A94 has quit (Read error: Connection reset by peer).
19:00:30 -!- heddwch has changed nick to sikin.
19:00:46 -!- sikin has changed nick to heddwch.
19:08:33 -!- ais523 has joined.
19:15:54 <tswett> There was this restaurant once which served brined salmon. One day, some inspectors came in and found that there wasn't enough lighting to illuminate the salmon sufficiently.
19:16:02 <tswett> The restaurant was fined for lax lox lux.
19:27:20 <hppavilion[1]> NO CLUE WHAT "LOX" IS BUT I ASSUME IT'S SALMON SO LULZ
19:28:32 <pikhq> "Lox" is, indeed, brined salmon.
19:48:59 -!- blurelIse has quit (Ping timeout: 240 seconds).
20:06:49 <lambdabot> boily said 5h 27m 49s ago: Ō_Ō holy fungot that is one froody idea!
20:11:25 <quintopia> @tell boily aubergine+unconditional fork. (first argument=target of first process, second=target of second?)
20:11:56 -!- sc00fy has quit (Ping timeout: 272 seconds).
20:12:14 -!- idris-bot has quit (Quit: Terminated).
20:13:02 <tswett> So I've installed Mozilla Lightbeam, but I don't really know what this stuff means.
20:13:53 <tswett> Presumably circles are sites I've visited. What are the triangles? Apparently they're sites I've "connected with"; does that mean sites I've made an HTTP connection to?
20:14:02 <zzo38> Yes (unless you have something else to do)
20:15:21 <tswett> And what's the difference between a white line and a purple line?
20:15:32 <hppavilion[1]> It'll be a language that generally supports Combinatory Logic AND has some bonus features
20:16:18 -!- TieSoul has quit (Read error: Connection reset by peer).
20:16:25 <zzo38> OK you can do that, see what bonus feature and also the other details.
20:17:41 <hppavilion[1]> I think I'll just use Jay Conrod's parser combinator library...
20:17:57 <hppavilion[1]> I want to finish Stare 1.0 interpreter before starting something else
20:22:40 -!- Melvar has quit (Quit: rebooting).
20:26:20 -!- Melvar has joined.
20:29:54 -!- llue has quit (Quit: That's what she said).
20:30:25 -!- lleu has joined.
20:30:51 <hppavilion[1]> Luckily, I wrote a lexer design library a while back that allows lexers to be made with a single object
20:30:54 -!- atrapado has joined.
20:31:39 -!- idris-bot has joined.
20:35:57 -!- HackEgo has quit (Remote host closed the connection).
20:36:50 -!- vit4lity has joined.
20:37:20 <zzo38> How does that one work?
20:40:14 -!- APic has quit (Ping timeout: 250 seconds).
20:47:12 <hppavilion[1]> Also, can the Y combinator be defined in SK, or do I need to make it builtin?
20:47:44 <zzo38> Lexer design library
20:48:53 <hppavilion[1]> Then call lexer().add_token_expr(regex_string, tag) along with a few other optional arguments (transformation functions, slicing, etc.
20:49:28 -!- HackEgo has joined.
20:49:34 <tswett> Yeah, you can define the Y combinator. Let's see.
20:50:23 <hppavilion[1]> I'm trying to figure out how to implement the S combinator in python, given an object that only has two variables: self.comb and self.arg
20:50:34 <hppavilion[1]> I call a function called combinator.eval(combinators)
20:51:26 <tswett> \f. (\x. f (x x)) (\x. f (x x)), that becomes \f. (S (K f) (S I I)) (S (K f) (S I I)), which in turn becomes...
20:52:22 <tswett> Something pukeworthy, I'm sure...
20:53:26 <tswett> hppavilion[1]: so what are self.comb and self.arg?
20:54:12 <hppavilion[1]> tswett: I have a class called CombinatorExp. When initialized, it takes two arguments: comb (combinator) and argument. I save those two variables to the class.
20:54:41 <hppavilion[1]> Later, I call CombinatorExp.eval(combinators), where combinators is a map telling the thing what non-SK combinators mean what
20:55:10 <hppavilion[1]> If it's the S combinator, well, that's what I'm trying to implement.
20:55:34 <hppavilion[1]> Else, if it's a non-primitive combinator, I evaluate that index of the combinators dictionary
20:56:03 <tswett> Well, currently, it sounds like a CombinatorExp can only represent an expression of the form (x y), where x is a combinator.
20:56:13 <tswett> What if x isn't a combinator? What if it's another expression?
20:58:01 <hppavilion[1]> I just fixed it for if you don't give it an argument
20:58:33 <tswett> All right. Suppose that D, E, and F are combinators. How do you represent the expression (D E) F?
20:59:25 <hppavilion[1]> `CombinatorExp(CombinatorExp('D', 'E'), CombinatorExp('F', None))` I believe
20:59:26 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: CombinatorExp(CombinatorExp('D',: not found
20:59:58 <hppavilion[1]> Well that might be a problem, now that I think about it
21:00:07 <tswett> So it sounds like self.comb can be a letter, but it doesn't have to be.
21:01:29 <hppavilion[1]> tswett: https://github.com/ZodiacWorkingGroup/Combinatory-Logic-Playground/blob/master/AST.py
21:03:15 <tswett> Well, here's how I'd approach it.
21:03:32 <tswett> Start with an abstract class called Expression. Make every type of expression a subclass of Expression.
21:03:58 <coppro> we're talking about Haskell right?
21:04:14 <tswett> So one initial thought is to have two subclasses, ApplyExpression and CombinatorExpression.
21:04:39 <tswett> ApplyExpression contains two sub-expressions. CombinatorExpression contains a letter.
21:04:55 <tswett> I think Haskell is really well-suited to this.
21:06:04 <hppavilion[1]> I would use Haskell, but... well, I don't have a good reason.
21:09:58 <tswett> Expression has two abstract methods, eval() and apply().
21:10:13 <tswett> For ApplyExpression, eval() works by just calling apply() on its two sub-expressions.
21:10:45 <tswett> And apply() works by, um... I'll have to think about that.
21:11:31 <hppavilion[1]> What I have so far should work, unless it's broken by the s combinator
21:11:40 <tswett> For CombinatorExpression, eval() usually just makes the object return itself. (Expression objects should be immutable, by the way.)
21:11:59 -!- vit4lity has quit (Quit: Leaving).
21:12:04 <hppavilion[1]> I'm using python, so... not sure if that's possible
21:12:32 <tswett> self.apply(arg) adds arg to the argument list of self, and then, if self has enough arguments in its argument list, it constructs a new expression as appropriate and returns that.
21:12:56 <tswett> And when I say it adds arg to the argument list of self, by "self", I mean "a copy of self".
21:13:06 <tswett> Something along those lines.
21:14:07 <hppavilion[1]> But I ALSO have eval() and apply() accept an argument of type map that maps combinator names to expressions, just so you can define new combinators programmatically
21:14:25 <tswett> For ApplyExpression, self.apply(arg) should pretty much return self.eval().apply(arg), since eval() should never return an ApplyExpression.
21:15:20 <tswett> I mean, "eval() should never return an ApplyExpression" is sort of a self-imposed rule.
21:16:06 <tswett> The reason I'm suggesting imposing it is that we can consider ApplyExpressions to be "unevaluated", and eval() shouldn't return an unevaluated expression.
21:16:24 <hppavilion[1]> I have a feeling I'm going to end up with code I can't understand by the time I'm done xD
21:22:41 <tswett> It looks like your K is actually I.
21:23:06 <tswett> In any case, let me see if I can suggest a gradual series of small changes.
21:23:44 <hppavilion[1]> * For this to work, I need to make S accept its 3 arguments
21:23:44 <hppavilion[1]> * New combinators to be definable with <name> = <expression>
21:23:44 <hppavilion[1]> * Defined combinators to accept multiple arguments (via currying) like S does
21:24:42 <hppavilion[1]> Or, if we assume that 2.2 is a subgoal, 2 goals and 1 subgoal
21:24:58 <tswett> Now, my idea is to say that an expression of the form, say, (S x) or (S x y) is represented by a CombinatorExpression.
21:25:24 <tswett> And that means that CombinatorExpression is going to have a self.args attribute.
21:25:53 -!- ^v has quit (Ping timeout: 240 seconds).
21:25:54 <hppavilion[1]> I don't think that's combinatory though... But I can do it
21:26:51 <tswett> Another option is to replace CombinatorExpression with six other classes: SExpression, S1Expression, S2Expression, KExpression, K1Expression, and IExpression.
21:27:18 <tswett> Which represent, respectively, expressions of the form (S), (S x), (S x y), (K), (K x), and (I).
21:27:38 <tswett> That may or may not be excess complexity.
21:27:43 <hppavilion[1]> IExpression could, of course, be represented with others
21:28:25 <hppavilion[1]> One idea I thought of to enable currying is to make S x return a new combinator which would be a hash of the string "S x"
21:28:41 <hppavilion[1]> And then that would just apply to the next expression
21:29:00 <hppavilion[1]> Not "return a new combinator" so much as "add a new combinator to the combinator dictionary"
21:29:07 <tswett> That's certainly *an* option.
21:29:59 <tswett> But you'll still need to define a meaning for that new combinator.
21:30:12 <zzo38> When are they going to make the rules of Magic: the Gathering to be sufficiently mathematically elegant?
21:30:59 <tswett> zzo38: in other words, when are they going to implement them in C#?
21:32:01 <\oren\> is there a difference between ((K x) (K x)) and ((K x) K) x?
21:32:31 <tswett> The former is x, and the latter is (x x).
21:32:48 <\oren\> yeah. so parens are in fact necessary
21:35:07 <tswett> K (K x) y z is x while K K x y z is y, so if you can add and remove parentheses, then everything is equal to everything.
21:36:50 <zzo38> tswett: I don't meant C# I meant by mathematics. Rules might be found more clear in such a way
21:37:49 <hppavilion[1]> tswett: I think I might know how to figure this out
21:37:52 <tswett> zzo38: so the rules would consist of mathematical prose?
21:38:04 <hppavilion[1]> What happens if we add all the redundant parenthesis to S x y z?
21:38:18 <tswett> hppavilion[1]: (((S x) y) z)
21:38:39 <tswett> zzo38: would you hope to end up with less than 100 pages of prose at the end?
21:39:10 <zzo38> (Preferably ones that can also be put into the computer, such as with Literate Haskell you can almost do like that)
21:39:27 <zzo38> tswett: I don't know. It depend how big are the pages, and what rules are modified and some other stuff
21:40:38 <zzo38> But I had other idea too, make up the programming language for defining the rules and effect of cards of these kind of card games, and then implement rules with such a thing. My idea is to use RDF and then make up a literate RDF format to write rule with (like Xturtle with WEB together, perhaps)
21:45:37 <zzo38> I think I have shown a few examples on here before of what I was thinking of how to do
21:45:49 <\oren\> It seems to me that if you are writing game rules in a computer-readable logical form, then you're halfway to writing a comuter game, so why not just do that
21:46:16 <zzo38> \oren\: Sure that is one thing it can be used for, but the intention is that it would be independent of such things.
21:46:21 <hppavilion[1]> \oren\: I think it has to be both computer-readable AND human (non-advanced-programmer) readable
21:46:56 <zzo38> hppavilion[1]: Yes, that is kind of also how I have meant
21:47:21 <zzo38> (Not exactly, but close)
21:47:59 <zzo38> I think literate programming, with a mathematically-defined programming language, is the way.
21:50:48 <zzo38> Haskell is an idea too I thought yes.
21:50:54 -!- AnotherTest has quit (Quit: ZNC - http://znc.in).
21:51:15 <zzo38> But I am not quite sure if Haskell (or any other existing programming language) is particularly suitable which is why I had idea make the new kind
21:53:20 <zzo38> But also just some of the rules of the game is too klugy or otherwise inelegant in my opinion and I would have done differently
21:53:34 <Sgeo> I just remembered that mothy does have an end of the world song for the 2nd-3rd era
21:53:41 <Sgeo> So where's the end of the 3rd era song?
21:55:49 <zzo38> (Xturtle is a superset of RDF Turtle; I have written a Xturtle parser in C. WEB is the programming language TeX is written in; it combines TeX with Pascal codes and can be preprocessed into a Pascal code to be sent to a Pascal compiler; CWEB is similar but with C instead, and then you can have RDFWEB to write this new one with.)
21:58:10 <Sgeo> There's a part of the song that's intentionally musically bad, which makes sense but makes me sad
22:05:25 -!- ais523 has quit.
22:05:27 -!- callforjudgement has joined.
22:10:15 -!- callforjudgement has quit (Ping timeout: 265 seconds).
22:18:49 <\oren\> sgeo: I know a song that has intentional noise that sounds like a speaker being plugged in
22:23:34 -!- sc00fy has joined.
22:25:51 -!- ^v has joined.
22:26:47 <Sgeo> \oren\, o.O link?
22:28:43 <pikhq> Huh. I did not know that accredited CS programs were not that common. Like, there's actually a number of people walking around with CS degrees that aren't worth the paper they're printed on.
22:28:47 <pikhq> This explains a lot.
22:31:01 <pikhq> myname: In the US, there's not much formal regulation on higher education at all.
22:31:37 <pikhq> In essence, any organization can hand out pieces of paper and call them degrees in whatever they feel like with whatever justification they feel like.
22:32:16 <pikhq> What makes them "real" is a third party organization that people trust the opinion of, accrediting a degree program as meeting their standards.
22:33:27 <pikhq> Ooor people just recognizing the degree as having value regardless of what an accrediting body says.
22:34:10 <pikhq> In the case of computer science, there's a large number of degree programs with no accrediting whatsoever.
22:34:38 -!- APic has joined.
22:34:43 <pikhq> Which is just fine if it's Stanford (yes, really, Stanford's CS program is not accredited), but not so much if it's Univeristy of Bumblefuck KS.
22:42:05 -!- oerjan has joined.
22:47:07 <Vorpal> pikhq, really? Stanford is not accredited?
22:47:21 <Vorpal> pikhq, I guess they just think that they are well known enough they don't need it?
22:47:26 <pikhq> I believe that's just their CS program in particular.
22:47:33 <pikhq> Harvard has the same deal.
22:47:42 <oerjan> hppavilion[1]: currying means that you only need a syntax for applying a combinator to _one_ argument.
22:47:47 <Vorpal> pikhq, what about MIT?
22:47:52 <pikhq> MIT is accredited.
22:47:59 <pikhq> Stanford is known for CS *in particular* though.
22:48:10 <oerjan> e.g. unlambda's `, which is normally prefix but could easily be postfix instead.
22:48:27 <Vorpal> pikhq, really though, Harvard, Stanford and MIT wouldn't need to be accredited. Their name carries enough weight on it's own
22:48:39 <hppavilion[1]> Actually, a CS degree from the University of Bumblefuck KS is good for a cryptography job
22:49:25 <Vorpal> Malebolge is not a thing even afaik?
22:49:26 -!- atrapado has quit (Quit: Leaving).
22:49:32 <oerjan> one is a programming language named for a circle of hell, the other is a circle of hell hth
22:49:34 <Vorpal> So isn't it typoing rather than mixing it up
22:50:57 <oerjan> yes, but the typo is official
22:57:20 <hppavilion[1]> I've started work on LIME (the LIME Integrated Mathematical Environment)
22:58:04 <oerjan> it's a common notation. you are making the error of thinking that math notation is unambiguous hth
22:58:38 <oerjan> i'd say it's the most likely interpretation of the left side, assuming no other context.
22:59:47 <hppavilion[1]> I'm making an environment in which one can do a bunch of mathy things
23:00:23 <oerjan> the thing is, + is ridiculously overloaded, and there is an old convention using it for boolean algebra.
23:00:39 <oerjan> in which case it could be union instead.
23:00:58 <oerjan> (boole originally used addition and multiplication notation)
23:01:53 <hppavilion[1]> I'm going to try to make this some sort of hybrid beetween Traditional Mathematics and Programming
23:04:00 <oerjan> & for union is a little confusing, since when you treat bitfields in C as boolean algebras that's exactly _intersection_
23:05:06 <hppavilion[1]> I'm trying to figure out where I'm going with this xD
23:08:24 <hppavilion[1]> Should I make LIME at all memory-efficient, or should I just use BigFloat for everything?
23:17:34 -!- Patashu has joined.
23:27:30 <hppavilion[1]> I'm going to make the AST support computer sciency things and save other things for the parser
23:30:28 <hppavilion[1]> So Computer Sciency-ness will be an option that the parser determines
23:31:52 <hppavilion[1]> oerjan: Your professional opinion. Is making ^ work as bitwise xor OR as exponentation depending on the option a good idea for a program targetted at mathematics students?
23:32:26 <hppavilion[1]> It'd be a pain to implement, but it might be a good idea
23:34:46 <oerjan> both are sort of about lacking the real math symbols (superscripts or that sum-in-a-circle thing)
23:35:13 <hppavilion[1]> I want this to be easy to use when typed from a keyboard
23:35:35 <oerjan> what if they want to use both?
23:35:55 <hppavilion[1]> Perhaps I could use a LaTeX-like syntax where if you type, for exmple, "\lambda" it would come out as <insert little lambda here>?
23:36:11 <hppavilion[1]> oerjan: Oh, forgot to mention that if CS mode is on, ** is exponentation
23:36:17 -!- Patashu has quit (Ping timeout: 268 seconds).
23:36:28 -!- Patashu has joined.
23:36:57 <hppavilion[1]> LIME is actually going to parse every instruction into two different ASTs: Algebraic and Arithmetical
23:37:29 <hppavilion[1]> (Arithmetical encompassing Arithmetic, Geometry, a bit of algebra, Set Theory, etc.)
23:38:38 <hppavilion[1]> (So if you want to get the sum of the set of 1 and x and a triangle, Arithmetical is used, whereas if you want to rearrange an expression, Algebraic is used)
23:51:40 <tswett> hppavilion[1]: I wouldn't use the notation {1,2} + 3.
23:52:56 <tswett> The fact that someone might want a feature doesn't necessarily mean that you should implement it.
23:55:43 <hppavilion[1]> It's valid mathematical notation, as far as I know