←2015-06-18 2015-06-19 2015-06-20→ ↑2015 ↑all
00:00:42 <zzo38> DLE = Data Link Escape; Cause the following octets to be interpreted as raw data, not as control codes or graphic characters. Returning to normal usage would be implementation dependent.
00:06:12 <zzo38> Soon the government is going to use preloaded HSTS to spy on people.
00:08:19 <pikhq> zzo38: Ah, sure.
00:08:28 <pikhq> So DLE escapes the next octet.
00:08:49 <pikhq> Has the especially nice property that your control codes are essentially unused.
00:09:53 <zzo38> pikhq: Yes, that's much of the reasoning too, that I have.
00:10:12 <pikhq> While ESC isn't used *much*, it at least is used *at all*.
00:14:32 -!- mihow_ has quit (Quit: mihow_).
00:16:49 -!- mihow has joined.
00:32:20 -!- ProofTechnique has quit (Quit: Textual IRC Client: www.textualapp.com).
00:40:39 <HackEgo> [wiki] [[User:Kingofthenerdz3]] N http://esolangs.org/w/index.php?oldid=43223 * Kingofthenerdz3 * (+16) Created page with "Nothing for now."
00:52:25 -!- mihow has quit (Quit: mihow).
00:55:19 -!- boily has quit (Quit: COPLANAR CHICKEN).
01:30:50 <zzo38> Do you think this is OK designing project management system? http://sprunge.us/OZPW
01:31:48 <coppro> what is the purpose of the dummy?
01:32:36 <zzo38> To force SQLite to create a SHARED lock on the database. Normally, locks are deferred; you can create an immediate lock on the database but this is only for writing, not possible for reading.
01:32:49 <coppro> ahhh ok
01:33:09 <coppro> I've thought about similar stuff for postgres
01:33:28 <coppro> the combination of linear and nonlinear permissions seems strange
01:33:41 <coppro> especially because the version permissions are in increments of 50
01:44:47 <zzo38> That's just in case other stuff needs to be added later on, although I could use bits instead I suppose
01:59:18 <coppro> zzo38: why use Julian dates rather than Unix timestamps?
02:02:48 <oren> maybe the thing is 32 bits?
02:35:47 <zzo38> coppro: SQLite uses Julian dates normally, that's why
02:37:57 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
02:40:49 -!- hjulle has quit (Ping timeout: 244 seconds).
02:51:12 <zzo38> What is the duration of the sun minus the hyposinute multiplied by the square root of a circle without any area plus the meaning of life minus 31?
03:28:37 <zzo38> That is a title of one Hero Heart puzzle I made. Other titles are "Painting the roses^Whearts red", "SUPERMAN IS DEAD Heartland!", "I do not like this word 'bomb'", "Let's throw grenades at each other!", "What Happens When You Have Too Much Money", "Generating solutions of Einstein's field equations by typing mistakes", "Oops! How are you supposed to play Hero Hearts if the hearts are upside-down?", etc.
03:39:32 <zzo38> The puzzles themself are strange too; in one puzzle it is necessary to throw a grenade at an empty field, in another it is necessary to throw a grenade into the water (resulting in a message "That was a waste of a good grenade! Who taught you how to throw a grenade?"), in another level it is necessary to hit a heart with a missile (resulting in a message "Now that you have so smartly blown up that heart, it is impossible to solve this level. Sorry!"
03:41:50 -!- nys has quit (Quit: quit).
03:42:05 <zzo38> The messages themself are important in this case; if the rules of the game were modified to supporess these messages then the level would be impossible to solve.
03:42:41 <zzo38> When you do Magic: the Gathering, we also have to do stuff even more strange than that!
03:44:21 <zzo38> Do you like to make up any Magic: the Puzzling, please?
03:48:26 -!- Herbalist has quit (Ping timeout: 265 seconds).
04:11:14 -!- password2_ has joined.
04:15:34 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)).
04:37:23 -!- MDude has quit (Read error: Connection reset by peer).
04:37:51 <HackEgo> [wiki] [[Ye Olde Alchemist]] N http://esolangs.org/w/index.php?oldid=43224 * Kingofthenerdz3 * (+1701) Created page with "Ye Olde Alchemist is a esolang by [[User:Kingofthenerdz3]].It is still an idea in development.Programs are are ancient alchemical recipes.It is influenced by Chef. ==How it ..."
04:38:43 <zzo38> Is there any way to disable HSTS in clients that support it other than editing the executable file to change the name of the header into one that isn't a header name it is actually capable of receiving?
04:39:10 <HackEgo> [wiki] [[Special:Log/move]] move * Kingofthenerdz3 * moved [[Ye Olde Alchemist]] to [[Esolang:Ye Olde Alchemist]]
04:39:32 <HackEgo> [wiki] [[Special:Log/move]] move_redir * Kingofthenerdz3 * moved [[Esolang:Ye Olde Alchemist]] to [[Ye Olde Alchemist]] over redirect
04:39:51 <zzo38> There are several problems with HSTS, including privacy issues.
04:41:58 -!- Wallacoloo has joined.
04:57:45 <Sgeo> zzo38, any more detail?
04:58:20 <Sgeo> Well, I get the point about the privacy issue I think
04:58:46 <Sgeo> Can make arbitrary domains that you set HSTS or not on and that stores a bit per domain, right?
04:58:54 <zzo38> Yes, that is a part of it
04:59:30 <zzo38> But you can also use the expiry times to do stuff
05:00:08 <zzo38> It also prevents you from manually overriding, from defining your own proxies that would intercept it, and other problems
05:00:19 <zzo38> HSTS is just a bad design in general.
05:23:15 <zzo38> A lot of people know neither good security nor good software design. Some hotels have elevators that you need a keycard, in order to prevent thieves from coming in, but the actual effect is the opposite; they can come in just fine if someone else is in, or use the stairs, or steal someone's keycard and find their room much more easily than if the elevator did not require a keycard.
05:26:46 <zzo38> Web-browser software is also, just way too complicated to be any good.
05:42:10 -!- password2_ has quit (Ping timeout: 244 seconds).
05:43:08 <b_jonas> zzo38: agreed, DLE (= control-P) makes more sense to escape the next char, it's already used as such in some cases
05:43:12 -!- Wright has quit (Ping timeout: 246 seconds).
05:44:06 <zzo38> b_jonas: Yes I know that some programs use that already
06:06:37 <Sgeo> I think locally installed certificates can override HSTS
06:07:13 <Sgeo> If not, at least Chrome lets you delete HSTS entries
06:07:31 <zzo38> I saw that, but it says you can't delete preloaded entries
06:08:40 <Sgeo> At work tomorrow I might try intercepting Google with Charles and see what happens
06:08:47 -!- codergeek42 has joined.
06:08:47 <Sgeo> Don't have Charles on this machine
06:09:02 <zzo38> You also can't disable it, either for certain domains or for everything. Better would be in a kind of about:config stuff you can specify the default HSTS mode (force on, force off, use headers, try insecure), and for each domain you can also define the HSTS modes.
06:09:28 <b_jonas> zzo38: but the problem here is not the HSTS, it's that the https is enforced on server side
06:09:53 <Sgeo> b_jonas, in a sane world, sure
06:09:54 <b_jonas> with apparently no specific way to overrid it
06:09:55 <zzo38> Yes, for Wikipedia and other things there is that too, but HSTS can still cause problems too whether or not that is the case.
06:10:08 <b_jonas> zzo38: ok, it might cause problems in other cases
06:10:46 <b_jonas> zzo38: so I understand why you say it's bad design, but why can't you still access wikipedia with https?
06:11:04 <zzo38> I can, sometimes. Sometimes it doesn't work though.
06:11:13 <b_jonas> ok
06:11:21 <b_jonas> I thought you'd say something more specific
06:11:48 <zzo38> Even for servers that only work on HTTPS, the HSTS can still stop certain other things you might want to do for debugging or anything else, from working too.
06:12:43 <zzo38> Also the forced HTTPS prevents me from doing packet inspection or connecting from a client that doesn't use HTTPS.
06:13:08 <b_jonas> zzo38: can you use a local (private) proxy then?
06:14:19 <zzo38> I don't even know how to configure Mozilla to use plain HTTP on a proxy when https:// is specified.
06:14:47 <zzo38> But another reason I cannot use a local proxy is due to the mixed up clock; even if I try to fix it, it gets mixed up.
06:15:23 <b_jonas> I see https, but what's "mixed up clock"?
06:15:23 <zzo38> And my computer isn't particularly powerful enough either.
06:15:55 <zzo38> I mean the RTC in my computer seems to run too slowly.
06:15:57 <b_jonas> it needn't be on exactly the same computer, it could be on another computer on the lan with fast connection between the two
06:16:23 <b_jonas> um, but how is the clock a problem here?
06:16:47 <zzo38> I don't really know if the clock is a problem. But I thought it might be.
06:16:56 <b_jonas> ok
06:17:44 <b_jonas> my rtc clock usually runs a bit too fast, but it's not really a problem because I can correct it to enough precision by syncing to a time server on the internet
06:19:13 -!- zadock has joined.
06:19:24 <zzo38> I have several clocks, and synchronize them with the Weather Channel when they need to be set. I set the portable analog clock from the TV, the digital clock in my bedroom from the analog clock, and the computer from the digital clock.
06:20:06 <b_jonas> it's more a problem at the company, where the servers have the clocks going horribly wrong, sometimes several minutes off, and I don't have the authority to set their clocks to sync
06:20:39 <b_jonas> I used to sync to the radio in old times, but these days I sync to the internet
06:21:03 <b_jonas> (and then sync other clocks to the computer synced to the internet)
06:21:16 <b_jonas> (sometimes two levels deep)
06:21:26 <zzo38> I think there is a time signal on CBC radio, but I have no computer hardware to connect to radio or software to decode the time signal.
06:22:10 <b_jonas> I didn't decode by hardware, I just pressed enter at the beep or something
06:22:55 <zzo38> That is another way yes, slightly less precise but probably still good enough
06:23:20 <b_jonas> syncing to television doesn't sound like a good idea, because it sometimes has a second or two of delay, probably because it goes through satellite links
06:23:36 <b_jonas> I trust radio more
06:24:07 <zzo38> Yes, although the radio doesn't have the time signal all the time
06:24:16 <b_jonas> yes
06:24:22 <b_jonas> but it has it at predictable times
06:24:32 <zzo38> Yes, there is that, at least.
06:25:53 <zzo38> But also with television, the delay will be more with digital television than with analog, even. (I have both digital and analog, in different rooms. I tend to use the analog more, but other people in here mostly use the digital television.)
06:26:58 <b_jonas> I've seen a second of delay in analog, though probably some intermediate link was already digital
06:27:36 <b_jonas> and perhaps the time signal doesn't have that, only some programs that have to show live image
06:28:47 <b_jonas> I don't think we have analog television anymore. analog tv on radio waves has been discontinued a few years ago, and I don't think any of the cable ones are analog still.
06:29:15 <b_jonas> the satelite-based receivers are probably digital too
06:29:56 -!- oerjan has joined.
06:30:23 <zzo38> A problem with a digital cable box is that you have to use their software and remote control (or a remote control with the same codes, but you can't add your own functions or remove existing functions). Also makes it difficult to use with a VCR.
06:33:04 * oerjan skips the logs hth
06:40:20 -!- zadock has quit (Quit: Leaving).
07:39:23 -!- codergeek42 has quit (Quit: Ex-Chat).
08:15:08 -!- rdococ has joined.
08:26:15 -!- Patashu has joined.
08:53:35 <b_jonas> `? ^
08:53:53 <b_jonas> um, hackego?
08:53:57 <HackEgo> ​^? ¯\(°​_o)/¯
08:54:17 <b_jonas> `? CIRCUMFLEX ACCENT
08:54:17 <HackEgo> CIRCUMFLEX ACCENT? ¯\(°​_o)/¯
08:54:26 <b_jonas> `? xor
08:54:26 <HackEgo> xor? ¯\(°​_o)/¯
08:54:38 <b_jonas> `? bit_xor
08:54:39 <HackEgo> bit_xor? ¯\(°​_o)/¯
08:54:53 <Taneb> b_jonas, what are you trying to do
08:56:03 <b_jonas> Taneb: dunno, I just didn't understand why it didn't reply to `? ^
08:56:15 <Taneb> `run ? ^
08:56:16 <HackEgo> bash: 0: command not found
08:56:22 <Taneb> `run ? \^
08:56:25 <HackEgo> bash: 0: command not found
08:56:30 <Taneb> That is an odd error
08:56:44 <b_jonas> why?
08:56:48 <b_jonas> ? is a wildcard expansion
08:57:02 <b_jonas> and the first file it finds with a matching name is 0
08:57:02 <Taneb> `run \? \^
08:57:04 <HackEgo> ​^? ¯\(°​_o)/¯
08:57:05 <b_jonas> that's how shell works
08:57:11 <Taneb> Ah
08:57:15 <Taneb> I did not know that
08:58:03 <b_jonas> `` locale
08:58:03 <HackEgo> LANG=en_NZ.UTF-8 \ LANGUAGE= \ LC_CTYPE="en_NZ.UTF-8" \ LC_NUMERIC="en_NZ.UTF-8" \ LC_TIME="en_NZ.UTF-8" \ LC_COLLATE="en_NZ.UTF-8" \ LC_MONETARY="en_NZ.UTF-8" \ LC_MESSAGES="en_NZ.UTF-8" \ LC_PAPER="en_NZ.UTF-8" \ LC_NAME="en_NZ.UTF-8" \ LC_ADDRESS="en_NZ.UTF-8" \ LC_TELEPHONE="en_NZ.UTF-8" \ LC_MEASUREMENT="en_NZ.UTF-8" \ LC_IDENTIFICATION="en_NZ
08:59:00 <b_jonas> `` (LC_COLLATE=C; echo ?)
08:59:00 <HackEgo> 0
08:59:04 <b_jonas> `` (LC_COLLATE=C; echo *)
08:59:04 <HackEgo> 0 113500 :-( :-D Complaints MaFV Wierd a.o a.out bdsmreclist bin blah canary cat dc dog emoticons error.log etc factor faith fu head hello hello.c hi hours ibin index.html?dl=1812 interps le lib paste pref prefs py.py quines quotes random_elliott real script.py selflink share src twolines wisdom wisdom.pdf
08:59:28 <zzo38> I also fixed it so that you can use ``` to set the locale to the C locale, as a shortcut for that
08:59:56 <b_jonas> oh nice
09:00:04 <zzo38> Instead of having to type LC_COLLATE=C and whatever
09:01:10 <b_jonas> zzo38: I usually run everything with a mixed locale: LC_CTYPE is set but every other category is C locale. this has even triggered a nasty libc bug that comes up only for mixed locale, but that was lots of years ago and fixed since.
09:02:45 <b_jonas> ideally I wish there was an environment variable to define the encoding of the terminal, without involving locales, but LC_CTYPE is a workaround that works in most of the cases. (I also wish terminal libraries accepted a _list_ of terminfo terminal names instead of just one.)
09:06:30 <b_jonas> `` cat "bin/```"
09:06:31 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching ``' \ bash: -c: line 1: syntax error: unexpected end of file
09:06:35 <b_jonas> `` cat "bin/``"
09:06:36 <HackEgo> cat: bin/: Is a directory
09:06:41 -!- Herbalist has joined.
09:06:42 <b_jonas> `` cat "bin/\`\`"
09:06:43 <HackEgo> export LANG=C; bash -c "$1"
09:06:49 <b_jonas> right, metacharacter
09:07:26 <b_jonas> ``` locale
09:07:27 <HackEgo> LANG=C \ LANGUAGE= \ LC_CTYPE="C" \ LC_NUMERIC="C" \ LC_TIME="C" \ LC_COLLATE="C" \ LC_MONETARY="C" \ LC_MESSAGES="C" \ LC_PAPER="C" \ LC_NAME="C" \ LC_ADDRESS="C" \ LC_TELEPHONE="C" \ LC_MEASUREMENT="C" \ LC_IDENTIFICATION="C" \ LC_ALL=
09:09:22 <b_jonas> ``` sed -i 's/;.*1"/; exec bash -c "$@"/' 'bin/``' # doesn't matter much, but can't hurt
09:09:30 <HackEgo> No output.
09:09:31 <b_jonas> ``` locale
09:09:32 <HackEgo> LANG=C \ LANGUAGE= \ LC_CTYPE="C" \ LC_NUMERIC="C" \ LC_TIME="C" \ LC_COLLATE="C" \ LC_MONETARY="C" \ LC_MESSAGES="C" \ LC_PAPER="C" \ LC_NAME="C" \ LC_ADDRESS="C" \ LC_TELEPHONE="C" \ LC_MEASUREMENT="C" \ LC_IDENTIFICATION="C" \ LC_ALL=
09:13:29 -!- oerjan has quit (Quit: leaving).
09:41:16 -!- gniourf has quit (Remote host closed the connection).
10:00:38 -!- J_A_Work has joined.
10:00:41 -!- J_A_Work has quit (Client Quit).
10:02:01 -!- Wallacoloo has quit (Quit: Leaving.).
10:17:11 -!- boily has joined.
10:25:15 -!- aretecode has quit (Ping timeout: 265 seconds).
10:28:56 -!- aretecode has joined.
10:35:21 -!- Herbalist has quit (Ping timeout: 276 seconds).
10:50:23 <b_jonas> oh! "libpq" is the database client library of PostgreSQL, right?
10:57:52 -!- Herbalist has joined.
11:15:54 -!- jix has quit (Remote host closed the connection).
11:20:19 -!- jix has joined.
11:22:49 -!- boily has quit (Quit: PITTORESQUE CHICKEN).
11:23:14 -!- Phantom_Hoover has joined.
11:28:26 -!- impomatic_ has joined.
11:30:20 -!- hjulle has joined.
11:34:54 -!- Herbalist has quit (Quit: WeeChat 1.2).
12:29:27 -!- hjulle has quit (Ping timeout: 256 seconds).
12:32:24 * Taneb hello
13:04:51 -!- Patashu has quit (Ping timeout: 276 seconds).
13:36:15 <tswett> Neural net link of the day:
13:36:16 <tswett> http://www.youtube.com/u/182786/07/02/bin/oerjan/particular-lower-documentation-example
13:42:49 <Jafet> `oerjan
13:42:56 <HackEgo> ​/hackenv/bin/oerjan: line 1: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:
13:43:01 -!- ais523 has joined.
13:47:06 -!- `^_^v has joined.
14:18:25 -!- tertu has joined.
14:29:43 -!- tertu has quit (Read error: Connection reset by peer).
14:40:49 -!- gamemanj has joined.
14:40:50 * Taneb really needs to learn Java
14:53:37 <int-e> `cat bin/``
14:53:37 <HackEgo> export LANG=C; exec bash -c "$@"
14:53:42 <int-e> `cat bin/`
14:53:43 <HackEgo> TIMEFORMAT='real: %lR, user: %lU, sys: %lS' exec bash -c -- "$1"
15:00:04 <tswett> `cat bin/oerjan
15:00:04 <HackEgo> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
15:00:49 <tswett> `` ln -s selflink bin/selflink
15:00:51 <HackEgo> No output.
15:01:02 <tswett> `selflink
15:01:02 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: selflink: not found
15:01:10 <tswett> `` bin/selflink
15:01:10 <HackEgo> bash: bin/selflink: Too many levels of symbolic links
15:09:08 -!- nisstyre has quit (Remote host closed the connection).
15:12:39 -!- blade310 has joined.
15:13:29 -!- blade310 has quit (Read error: Connection reset by peer).
15:37:45 -!- ais523 has quit (Quit: going home).
16:01:17 -!- Guest83580 has joined.
16:03:12 -!- Guest83580 has quit (Remote host closed the connection).
16:04:17 -!- Wright has joined.
16:11:26 -!- password2 has joined.
16:27:40 <oren> I am now the proud owner of a framed paper, with "Oren Isaac Watson" in a cursive font, and "Honours Bachelor of Science with Distinction" in an uncial font.
16:28:13 <Taneb> :)
16:28:27 <Taneb> oren, where is your alma mater?
16:28:39 <b_jonas> oren: great
16:28:52 <oren> University of Toronto
16:29:50 <Taneb> That's dangerously close to a university which almost shares its name with my university!
16:30:20 <oren> oh, right, York University. My dad works there
16:31:02 <Taneb> Yeah, I'm at University of York
16:31:09 <Taneb> Congrats, by the way :)
16:31:16 <Taneb> Thinking of doing a master's?
16:31:30 <oren> Not right away
16:31:46 <pikhq> Awesome.
16:31:49 <Taneb> Fair :)
16:32:38 <oren> However I do plan to the the JLPT 3 this winter
16:32:49 <oren> s/the/take/
16:33:34 <b_jonas> um, what's that?
16:33:36 <Taneb> JLPT?
16:33:46 <pikhq> Japanese Language Proficiency Test.
16:33:49 <oren> yah
16:33:50 <b_jonas> ah!
16:34:05 <oren> there are 5 levels with 1 the highest
16:34:11 <Taneb> :)
16:34:17 <pikhq> The "日本語能力試験".
16:34:18 <Taneb> So, you start at -4?
16:34:21 <Taneb> :P
16:34:35 <oren> :B
16:34:42 <FreeFull> I'm at the University of Reading
16:34:50 <tswett> Insert "reading" pun here.
16:34:53 <pikhq> Serious question: should I accept this Google job offer?
16:35:02 <pikhq> (:P)
16:35:11 <FreeFull> I'd much rather work for Mozilla than Google
16:35:27 <Taneb> FreeFull, one of my almost-friends from high school is at Reading!
16:35:32 <tswett> pikhq: well, is there a reason you wouldn't accept it?
16:35:38 <pikhq> No.
16:35:46 <FreeFull> I've read Google's interview process is annoying
16:35:49 <Taneb> Wow, he is studying computer science!
16:35:50 <oren> then accept it.
16:36:03 <FreeFull> Taneb: Which year?
16:36:13 <Taneb> FreeFull, unsure, either first or second
16:36:18 <Taneb> Chris "Easty" Eastwood
16:36:19 <pikhq> FreeFull: It is, but I'm on the other side of it.
16:37:40 <Taneb> pikhq, what would you be doing?
16:37:46 <FreeFull> Taneb: I don't recognise the name
16:37:48 <b_jonas> pikhq: try to find people you know who already work at Google. ask them what it's like.
16:37:50 <pikhq> Site reliability engineering.
16:37:56 <pikhq> b_jonas: I did.
16:38:02 <pikhq> The question was not actually serious.
16:38:09 <pikhq> And I already hit accept.
16:38:25 <Taneb> FreeFull, fair enough :)
16:38:50 <b_jonas> but you said... ok, good luck
16:39:14 <FreeFull> Taneb: Maybe if I saw a photo I could recognise him, but no guarantees
16:39:24 <pikhq> b_jonas: Was a joke.
16:41:20 <oren> pikhq: are you going to work in California or at a local site
16:41:25 <pikhq> California.
16:41:29 <oren> nice.
16:41:31 <Taneb> FreeFull, PM'd you a photo
16:43:28 -!- mihow has joined.
17:29:28 <shachaf> pikhq: Do you know what you'll be SREing?
17:36:20 -!- mihow has quit (Quit: mihow).
17:44:41 -!- password2 has quit (Remote host closed the connection).
17:51:19 -!- mihow has joined.
18:07:18 <tswett> Ignoring the timestamps, this bit of autogenerated log seems pretty plausible:
18:07:26 <tswett> 07:52:41: <oerjan> wait, you can still control iteration in the discarded argument
18:07:27 <tswett> 00:13:13: <oerjan> darn
18:07:27 <tswett> 04:21:49: <oerjan> right
18:13:04 <tswett> Taneb: no, you start at -3.
18:19:17 <pikhq> shachaf: No.
18:22:36 <shachaf> You've already accepted it?
18:23:53 <shachaf> When are you moving here?
18:25:03 <pikhq> Uh, probably some time in the next couple weeks.
18:25:23 <pikhq> I talk with relocation people on Monday.
18:28:28 <int-e> Oh wow, Carlsen lost again.
18:29:01 <pikhq> I am gonna set up an appointment with an optometrist like, on my start date...
18:29:14 <coppro> pikhq: i.e. after the insurance kicks in?
18:29:17 <pikhq> Yep.
18:29:25 <pikhq> I'm *pretty* sure my prescription is a bit off these days.
18:32:54 -!- SopaXT has joined.
18:34:56 -!- SopaXT has quit (Read error: Connection reset by peer).
18:39:50 <shachaf> Andrej Bauer is great.
18:40:08 <shachaf> http://andrej.com/fan.html
18:43:47 -!- Wallacoloo has joined.
18:44:47 -!- Taneb has quit (Ping timeout: 276 seconds).
18:46:27 -!- jameseb has quit (Ping timeout: 244 seconds).
18:46:56 -!- glguy has joined.
18:47:35 -!- glguy has left.
18:58:49 -!- nys has joined.
19:14:37 <shachaf> `wisdom
19:14:38 <HackEgo> eurovision/Eurovision is the European way of looking at the world. For some reason it involves a lot of cheesy singing.
19:14:42 <shachaf> `wisdom
19:14:43 <HackEgo> cls/cls is a command to clear the screen.
19:16:49 <b_jonas> heh this is riddiculous
19:16:53 -!- Taneb has joined.
19:17:23 <int-e> but it's true!
19:17:30 <b_jonas> no!
19:17:33 <b_jonas> it's all speculation
19:17:37 <b_jonas> that's why it's riddiculous
19:17:51 <int-e> is the typo intentional?
19:18:20 <b_jonas> there's barely any reliable historical data, but the historians make all kinds of crazy specific hypothesis from the very little data they can find
19:18:30 <b_jonas> int-e: no, I just can't spell
19:18:37 <int-e> . o O ( hmm, riddleculous )
19:19:43 <b_jonas> I can't pronounce either. if I could, "riddiculous" wouldn't make sense as the spelling
19:19:45 <int-e> of course that pun would've worked better if the answer had been "yes".
19:20:09 <b_jonas> apparently it's stressed on the second syllable
19:22:05 <int-e> `? ridicule
19:22:06 <HackEgo> ridicule? ¯\(°​_o)/¯
19:24:04 <b_jonas> int-e: yeah but no, not because of that
19:24:49 <b_jonas> first syllable is just my default assumption of basically every word because Hungarian has fixed stress on first syllable and I don't know enough about English pronunciation to have good guesses about stress
19:28:31 <oren> hmm... In English stress can actually make it a different word
19:28:41 <b_jonas> oren: yes, but rarely
19:28:54 <b_jonas> much rarely than just plain homonyms that are stressed the same too
19:29:02 <b_jonas> s/much rarely/much more rarely/
19:30:12 <oren> Also the word "defence" can be stressed either way
19:32:25 <shachaf> `wisdom
19:32:26 <HackEgo> york/York used to be known as Amsterdam.
19:33:11 <oren> And then there are various words, where the shift turns a verb into a noun
19:33:46 <oren> reCORD - verb REcord - noun
19:34:17 <oren> the two words are otherwise identical in pronounciation
19:34:54 <shachaf> `wisdom
19:34:56 <HackEgo> chuchichäschtli/chuchichäschtli is spoken as [ˈχʊχːiˌχæʃːtli]
19:38:43 -!- mihow has quit (Quit: mihow).
19:39:45 -!- Tritonio has joined.
19:49:15 <b_jonas> oren: yeah, that's a quite famous example: "table", "record", "rebel" and a few other words change their hyphenation depending on their meaning, so they can't be automatically hyphenated
19:50:28 <b_jonas> I don't think Hungarian has any word that can change hyphenation, though in theory such a word could exist. That doesn't mean we have perfect hyphenation algorithms of course, because there are words it just doesn't know.
19:51:01 <b_jonas> Of course, the Hungarian hyphenation rules are very simple. There's about four rules total.
19:51:17 <b_jonas> Maybe five or something. depends on how you count.
19:55:18 <shachaf> The shachaf hyphenation rule is that when you run out of space in the line and you're in the middle of a word, you write a hyphen.
19:55:50 <b_jonas> Hmm, maybe there is such a word. There are four possible ambiguities I can think of that could result in such a word, though two seem very unlikely to actually cause an example.
19:56:48 <shachaf> `wisdom
19:56:52 <HackEgo> famicom/Famicom is a famous sitcom from Japan.
19:57:28 <int-e> shouldn't it be famikomu then...
19:57:34 <shachaf> zzo38: I thought Famicom was another name for the Nintendo Entertainment System.
19:58:14 <int-e> `wisdom trust
19:58:15 <HackEgo> chess/Chess is a complex boardgame, where players exchange unclear royal steaks until they decide which of them has lost. The game is recorded through the Gringmuth Moving Pineapple Notation.
19:58:39 <int-e> `? trust
19:58:39 <HackEgo> trust? ¯\(°​_o)/¯
19:58:40 <shachaf> Oh, it sounds like I'm wrong.
19:58:41 <int-e> oops.
20:01:31 <shachaf> Oh, it sounds like I'm wrong about being wrong.
20:11:53 -!- Tritonio has quit (Remote host closed the connection).
20:12:08 -!- Tritonio has joined.
20:14:17 <rdococ> stop being wrong
20:18:59 <rdococ> also...
20:19:25 <rdococ> imagine a negative currency... &3 = -$3
20:20:22 <fowl> We could use negadollars to balance out inflation?
20:22:15 <rdococ> hmm... I wonder if that would work
20:22:53 <rdococ> because if both dollars and minus dollars become common, then.. would that balance out inflation ...?
20:22:57 <rdococ> or wouldn't it?
20:23:03 -!- spiette has quit (Quit: :qa!).
20:23:12 <rdococ> also, cant you just throw away a negadollar...?
20:23:43 <rdococ> "omg I have this -$10000 note... I'll just burn it."
20:24:25 <int-e> you'll throw the monetary system off balance
20:24:36 <int-e> so nothing to worry about
20:24:42 <fowl> Hmm yea I'm not an economizer
20:24:49 <fowl> Chaos should be the goal tho
20:25:17 <rdococ> hmm...
20:30:29 <zzo38> shachaf: The Nintendo Entertainment System is a system which is very similar to Famicom (most programs for one will work also on the other with an adapter)
20:31:17 <pikhq> It's somewhat more easy to run NES games on a Famicom than vice versa.
20:32:17 <pikhq> The most notable likely issue is that some NES games will not read any controllers on the expansion port.
20:34:31 -!- mihow has joined.
20:39:48 <oren> wait, what if the negadollar was a cryptographically irrepudiatable?
20:41:11 <shachaf> `wisdom
20:41:12 <HackEgo> unicode/Unicode is a mess invented in 1988 by Xerox, Microsoft, the Spanish Inquisition, and the evil Human Supremacy Corporation, in order to make it easier for the government to spy on Chinese people.
20:41:28 <oren> e.g. it would be possible, using public information, to prove exactly how many negadollars someone has
20:41:34 <shachaf> `culprits wisdom/unicode
20:41:36 <HackEgo> zzo38
20:41:38 <shachaf> whoa
20:41:42 <shachaf> `wisdom
20:41:44 <HackEgo> pdf/PDF stands for Pretty Depressing Format.
20:42:46 <shachaf> `wisdom
20:42:49 <HackEgo> ​`/` is the prefix to greatness.
20:42:56 <shachaf> `wisdom
20:42:57 <HackEgo> glumgot/glumgot is not a particularly bad swear word, but is still disquieting.
20:43:31 <oren> thus, when I pay you, I can do so by transferring a negadollar from yourself to me; such that there is a public record that you have N less negadollars and I have N more
20:45:16 <shachaf> pikhq: You're moving from Indiana or someplace like that?
20:45:40 <pikhq> Missouri.
20:46:08 <pikhq> So, no but close.
20:46:25 <shachaf> close enough
20:46:28 <oren> To encourage trade, the public record would increase by a continuously compounded say 2% per year
20:46:38 <pikhq> It's definitely a cross-country move.
20:46:43 <pikhq> And I'm not packed yet?
20:49:18 -!- gamemanj has quit (Ping timeout: 272 seconds).
20:50:11 <oren> (this is similar to the inflation of normal currencies, but it is more obvious)
20:50:23 <fowl> Hey I'm in misery, can you take me with you?
20:51:58 -!- lleu has joined.
20:57:06 <rdococ> hmm
20:58:01 -!- hppavilion1 has joined.
20:58:07 <hppavilion1> Hello
20:58:43 <hppavilion1> `wisdome
20:58:44 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: wisdome: not found
20:58:48 <hppavilion1> `wisdom
20:58:49 <HackEgo> doesthiswork/no
20:59:00 <hppavilion1> `? hppavilion1
20:59:01 <HackEgo> higgledy piggledy / hp pavilion / doesn't like jokes that are / written in text; // uncontroversially, / one in a million is / roughly the chance they won't / be left perplexed
20:59:09 <hppavilion1> `? wisdom
20:59:09 <HackEgo> wisdom is always factually accurate, except for this entry, and uh that other one? it started with like, an ø?
20:59:21 <hppavilion1> `? ø
20:59:22 <HackEgo> ​ø is not going anywhere.
21:00:21 <J_Arcane> http://www.reddit.com/r/rust/comments/39wvrm/hodor_esolang_as_a_rust_macro/
21:01:16 <HackEgo> [wiki] [[Language list]] http://esolangs.org/w/index.php?diff=43229&oldid=43217 * 139.55.4.74 * (+14) Added Damarok
21:02:32 <rdococ> it just makes more moral sense if you use negative currency & as opposed to positive currency £ and $ and euro and stuff... having &3 means "you owe $3 to the world, until you can reach financial enlightenment." but having $3 means "the world owes you $3...? wait.. what?"
21:03:33 <hppavilion1> Um
21:03:35 <hppavilion1> OK
21:03:44 <hppavilion1> I was the one who added Damarok, BTW
21:05:33 <HackEgo> [wiki] [[Talk:Darmok]] N http://esolangs.org/w/index.php?oldid=43230 * Hppavilion1 * (+128) /* Well SORRY */ new section
21:06:46 <tswett> rdococ: I think theoretically, US dollars are a zero currency.
21:07:00 <tswett> It's impossible for anyone to actually own a US dollar. Therefore, the total number of US dollars in the world is zero.
21:07:07 <HackEgo> [wiki] [[Talk:Darmok]] http://esolangs.org/w/index.php?diff=43231&oldid=43230 * Hppavilion1 * (+271) /* Well SORRY */
21:07:19 <zzo38> How is that?
21:07:29 <HackEgo> [wiki] [[Talk:Darmok]] http://esolangs.org/w/index.php?diff=43232&oldid=43231 * Hppavilion1 * (+13)
21:07:36 <tswett> If I have a dollar bill, that doesn't mean I own a dollar. It means that the Fed owes me a dollar. The dollar bill is worth $1 to me, and -$1 to the Fed.
21:07:40 <HackEgo> [wiki] [[Talk:Darmok]] http://esolangs.org/w/index.php?diff=43233&oldid=43232 * Hppavilion1 * (-14)
21:07:52 <tswett> Likewise, if I have a dollar in my bank account, that doesn't mean I own a dollar; it means the bank owes me a dollar.
21:07:58 <zzo38> OK
21:09:04 <zzo38> I think it has even been suggested that <BAL|FSV> = 0 can suggest this (when applied globally), although I have not thought of it that way
21:09:18 <shachaf> What is <BAL|FSV>?
21:09:45 <tswett> The product of <BAL| and |FSB>, hth?
21:09:57 -!- hilquias has joined.
21:10:10 <zzo38> The |FSV> is a financial state vector, which can vary, but must always remain orthogonal to <BAL| which is fixed
21:10:12 <shachaf> Presumably it's the inner product of BAL and FSV or something.
21:10:26 <b_jonas> and what's <BAL| ?
21:10:59 <rdococ> "Likewise, if I have a dollar in my bank account, that doesn't mean I own a dollar; it means the bank owes me a dollar." so why can't the bank just hold a negadollar?
21:11:41 <zzo38> It is short for "balance" and normally you might set the components for each account to 1 and others to 0 if using that basis state; but you could use other basis vectors instead if it helps, all that it is is that |FSV> is required to remain orthogonal to it.
21:11:55 <zzo38> b_jonas: That's what it is.
21:11:59 <b_jonas> what if money is locally conserved everywhere, but you can't define a globally sum of money invariant, sort of like energy in global relativity?
21:12:39 <zzo38> rdococ: Can't the bank already potentially store negative amounts in an account?
21:12:44 <b_jonas> as in, money isn't created or destroyed locally anywhere, but you can't just say that the totaly some of money is conserved in any meaningful sense
21:12:47 <zzo38> (If you are in debt)
21:13:08 <b_jonas> zzo38: sure it can, though that might be Bad for you
21:13:42 <zzo38> Yes, I know, you are in debt
21:14:57 <shachaf> Do you remember the Infocom game _Bureaucracy_?
21:15:02 <zzo38> I don't know whether or not you can define a globally sum of money invariant; I am not the government (and perhaps even the government doesn't know?)
21:17:34 -!- tromp_ has quit (Read error: Connection reset by peer).
21:17:56 <HackEgo> [wiki] [[Darmok]] http://esolangs.org/w/index.php?diff=43234&oldid=43220 * Hppavilion1 * (+712) Added some code
21:17:57 -!- tromp_ has joined.
21:18:23 -!- tromp_ has quit (Read error: Connection reset by peer).
21:18:54 <rdococ> but negative currency is more moral: if you have no $$$, nothing to sell and stuff, you can't start in life... but if you have no &&& in negative world, nothing to sell and stuff, you can start in life by buying stuff, and pay the world back later.
21:20:06 <hppavilion1> I have no clue what's going on
21:20:15 <zzo38> Note that |FSV> here is a vector of a projective space, it seems to me!
21:20:16 <b_jonas> me neither
21:21:11 <HackEgo> [wiki] [[Darmok]] M http://esolangs.org/w/index.php?diff=43235&oldid=43234 * Hppavilion1 * (+4) Added extension
21:21:38 <hppavilion1> Anyone want to help me figure out Darmok?
21:22:23 -!- tromp_ has joined.
21:23:11 <HackEgo> [wiki] [[Darmok]] http://esolangs.org/w/index.php?diff=43236&oldid=43235 * Hppavilion1 * (+49) Changed code
21:24:33 <zzo38> hppavilion1: I don't know much right now, but I can see a few thing from what you have written
21:24:44 <hppavilion1> Yay
21:24:50 <hppavilion1> I made a barely-decent page
21:25:13 <zzo38> It is still hardly good enough yet, just one example that explain a few thing about it
21:25:29 <hppavilion1> Yup
21:25:42 <hppavilion1> I only recently started it
21:25:49 <hppavilion1> I'm making it incrementally instead of all at once
21:26:49 -!- augur has quit (Quit: Leaving...).
21:26:57 <HackEgo> [wiki] [[Darmok]] http://esolangs.org/w/index.php?diff=43237&oldid=43236 * Hppavilion1 * (+122) Opened the language to public modification
21:27:49 -!- TodPunk has quit (Read error: Connection reset by peer).
21:28:00 -!- Tod-Autojoined has joined.
21:28:27 <rdococ> but wont the metaphors and mythologies themselves require verbs or verb like constructions?
21:28:39 <hppavilion1> Yes
21:28:46 <hppavilion1> When did I say they wouldn't?
21:29:24 <hppavilion1> Oh
21:29:57 <hppavilion1> The Metaphors and Mythologies can be defined in Darmok or another language
21:30:07 <hppavilion1> It's not a particuarly well-defined language
21:30:27 <hppavilion1> Ones defined in Darmok pretty much need to use ones defined in Non-Darmok
21:30:49 <hppavilion1> s/well-define/well-made
21:31:23 <rdococ> hmm...
21:31:28 <rdococ> but what if they didnt...?
21:31:32 <hppavilion1> How?
21:31:49 <rdococ> if we use a modification of English where verbs are not allowed...
21:32:00 <rdococ> can we come up with a sentence?
21:32:08 <hppavilion1> No.
21:32:11 <hppavilion1> We can't
21:32:18 <hppavilion1> Sentences need verbs
21:32:41 <hppavilion1> Barring one-word sentences like "No," which don't even completely count as sentences
21:32:57 <rdococ> hmm...
21:33:19 <rdococ> I'm pretty sure stuff affirming stuff like "you are wrong." don't have verbs per-say, but other verb-like constructions...?
21:33:31 <hppavilion1> "Are" is a verb
21:33:39 <rdococ> oh.. okay...
21:33:41 <rdococ> well...
21:34:01 <hppavilion1> I'm pretty much certain some parts of darmok will need to be defined in another language
21:34:24 <hppavilion1> If it's written in python, for example, it will run a lexer on the line and pattern-match it
21:34:27 <rdococ> just use adjectives...?
21:34:35 <b_jonas> rdococ: see also http://scifi.stackexchange.com/q/13451/4918
21:34:42 <hppavilion1> The first pattern that matches corresponds to a python function
21:34:45 <hppavilion1> Which is then called
21:34:46 <rdococ> "loser you winner me" means "I get stuff from you!" or "you give stuff to me"
21:34:59 <hppavilion1> Oh
21:35:05 <hppavilion1> Aren't get and give verbs?
21:35:06 <rdococ> of course it's not an actual sentence per say, but it'll work
21:35:22 <rdococ> "loser you winner me" doesn't have any verbs in it.
21:36:08 <rdococ> like I could turn "you are wrong" into "wrong you"
21:36:12 <rdococ> and tada, no verbs.
21:36:19 <hppavilion1> Hmmm...
21:36:21 <hppavilion1> Good idea
21:36:32 <hppavilion1> We'll need to define a set of primitive
21:36:33 <hppavilion1> s
21:37:12 <rdococ> "victim fred, thief samuel" for example
21:37:16 <hppavilion1> And these primitives will be used to define the official code you're allowed to use
21:38:24 <hppavilion1> So how would we define print in the TheBible/Jesus library?
21:38:32 <rdococ> hmm
21:38:45 <hppavilion1> Probably writing to stdio
21:38:48 <hppavilion1> Like a fie
21:38:50 <hppavilion1> *file
21:39:40 -!- `^_^v has quit (Quit: This computer has gone to sleep).
21:39:50 <hppavilion1> Now I'm stuck thinking about another language I'm designing
21:39:50 <rdococ> hmm
21:39:52 <hppavilion1> Even cooler
21:41:03 <rdococ> "loud 'Hello World!'" describing the string 'Hello World!' as loud...
21:41:10 <hppavilion1> Hm
21:41:13 <hppavilion1> That works
21:41:27 <hppavilion1> This other language is called PFIL
21:41:38 <hppavilion1> It's the Purely Functional Imperative Language
21:41:55 <rdococ> hmm.. sounds interesting...wait... what...? this is...
21:42:02 <hppavilion1> It'd be a huge pain in the ass to implement
21:42:06 <hppavilion1> But it'd be AMAZING to use
21:42:09 <rdococ> "functional imperative"????
21:42:14 <b_jonas> what the heck?
21:42:23 <hppavilion1> Not functional in the declararve sense
21:42:27 <hppavilion1> It's a WIP name
21:42:36 <hppavilion1> So it's not perfectly accurate
21:42:38 <rdococ> oh... what paradigm would it be in?
21:42:44 <hppavilion1> Imperative
21:42:49 <b_jonas> so the oath of Feanor wasn't public knowledge in middle-earth, and Galadriel could just choose to not tell about it to Melian and think she won't easily learn about it?
21:42:50 <hppavilion1> But EVERYTHING is a function
21:42:59 <hppavilion1> And that includes things like If statements and operators
21:43:03 <b_jonas> that's new to me. I should read the Silmarillon very carefully.
21:43:09 <b_jonas> because there's a lot I don't understand
21:43:11 <rdococ> thats just like my Table programming language though where everything is a table...
21:43:19 <b_jonas> how can something like that _not_ be public knowledge?
21:43:25 <rdococ> but Table, I think, if I remember correctly, was declarative
21:43:49 <hppavilion1> It was
21:44:03 <rdococ> yeah.. and I don't think it was turing complete
21:44:39 <hppavilion1> Well PFIL allows really weird stuff
21:45:06 <rdococ> show us... we're dieing to know
21:45:16 <oren> well I got the offer
21:45:40 <hppavilion1> For example
21:45:46 <hppavilion1> Here's the library that defines...
21:45:49 <hppavilion1> Comparison operators
21:45:51 <hppavilion1> Yeah.
21:45:52 <hppavilion1> https://github.com/TheGloriousRepublic/Purely-Functional-Imperative-Language/blob/master/doc/Lib/comp.pfil
21:46:18 <hppavilion1> It's seriously WIP
21:46:32 <hppavilion1> So it'd be impossible to implement a language that's accept that library as-is
21:47:00 <rdococ> defining comparison operators... ha...! I could do that in haskell...
21:47:11 <hppavilion1> I know
21:47:17 <hppavilion1> I could too
21:47:25 <hppavilion1> Except this is an imperative language
21:47:42 <rdococ> wait ...?
21:47:56 <hppavilion1> What?
21:47:59 <rdococ> they look like they're all circularly defined to me - not that that's a problem of course
21:48:08 <hppavilion1> Huh?
21:48:23 <hppavilion1> Some of the comparison operators had to be primitives for it to work, keep in mind
21:48:27 <rdococ> oh ok...
21:48:33 <hppavilion1> Unless there's a way I could do it without
21:48:39 <rdococ> well
21:48:41 <hppavilion1> In which case feel free to make a pull request
21:48:47 <rdococ> sorta maybe possibly but idk the language
21:49:01 <hppavilion1> Oh
21:49:01 <hppavilion1> Also
21:49:10 <hppavilion1> You can define the equivalent of complex statements
21:49:20 <hppavilion1> You can define for-loops and stuff
21:49:28 <rdococ> ik...
21:49:32 <hppavilion1> OK
21:49:34 <hppavilion1> Good
21:49:37 <rdococ> hmm...
21:49:39 <hppavilion1> Just pointing out
21:49:51 <rdococ> how are numbers defined...? are they primitive too...?
21:49:54 <hppavilion1> It's something no other language I've ever used allowed
21:49:58 <hppavilion1> I suppose so
21:50:05 <hppavilion1> Everything is technically a clss
21:50:07 <hppavilion1> *class
21:50:10 <rdococ> ha...
21:50:24 <hppavilion1> I just say functions because it's more accurate
21:50:25 <rdococ> numbers dont have to be primitive if youre willing to fudge around a little
21:50:36 <hppavilion1> Really?
21:50:39 <hppavilion1> Cool
21:50:40 <rdococ> yeah
21:50:55 <hppavilion1> This language is going to be a huge pain to implement if anyone ever decides to
21:51:04 <hppavilion1> It'll probably be done by PhD's if it ever is
21:51:11 <rdococ> in Haskell, you could define data Number = Zero | Succ number...
21:51:17 <hppavilion1> Oh right
21:51:21 <hppavilion1> Successor function
21:51:24 <rdococ> yes
21:51:32 <hppavilion1> :)
21:51:39 <hppavilion1> That isn't even fudging around
21:51:46 <rdococ> so 1 = succ(zero), 2 = succ(succ(zero))
21:51:49 <rdococ> and so on
21:51:51 <hppavilion1> Yep
21:52:29 <hppavilion1> Awesome
21:52:34 <rdococ> and assuming you can do stuff like x.deccessor or decc(x) or something
21:52:39 <rdococ> you can do addition
21:52:41 <hppavilion1> Yes
21:52:48 <hppavilion1> Thanks!
21:53:10 <hppavilion1> If you were to make a library for this and pull request it that'd be AMAZING
21:53:18 <rdococ> function add(x, succ(y)) { return succ(add(x, y)) }
21:53:26 <hppavilion1> Yep
21:53:32 <hppavilion1> And then alias + with add
21:53:52 <hppavilion1> I would use ++ though instead of succ
21:54:01 <rdococ> true...
21:54:26 <rdococ> I wonder... you said they were technically classes...?
21:54:33 <hppavilion1> Yes
21:54:35 <hppavilion1> Like python
21:54:37 <hppavilion1> I think
21:54:55 <hppavilion1> A number would be an instance of the number class. Metaphorically speaking
21:55:12 <rdococ> right ...?
21:55:18 <hppavilion1> Yes
21:55:21 <hppavilion1> right
21:56:03 <rdococ> also, may I ask, is the if conditional a primitive?
21:56:09 <hppavilion1> Yes
21:56:22 <rdococ> you can forgo that too by modifying the boolean library
21:56:26 <hppavilion1> But if/*elif/else is (probably) not
21:56:28 <hppavilion1> Really?
21:56:31 <hppavilion1> AWESOME
21:56:33 <rdococ> like Table was basically based on
21:56:48 <hppavilion1> I want this language to be as library-defined as possible
21:57:02 <hppavilion1> With as few builtins as I can muster
21:57:05 <rdococ> true.ifTrue(doStuff) would doStuff, false.ifTrue(doStuff) wouldn't...
21:57:14 <hppavilion1> Basically legible brainfuck
21:57:21 <hppavilion1> OK
21:57:43 <hppavilion1> ifTrue(True){dostuff();}
21:57:44 <rdococ> so add the ifTrue functions to the boolean objects themselves, true.ifTrue would do whatever you give it, and false.ifTrue would be a NOP
21:58:01 <hppavilion1> I don't quite understand
21:58:04 <hppavilion1> OH
21:58:07 <hppavilion1> I think I get it
21:58:11 <hppavilion1> Kind of
21:58:46 <hppavilion1> I've never seen that syntax before
21:58:54 <rdococ> well, you know objects have properties and methods, like account.desposit(123)?
21:58:59 <hppavilion1> Yes
21:59:34 <rdococ> false.ifTrue({ stuff }) is basically an object, false, with the method, ifTrue
21:59:50 <hppavilion1> OOOOOOOOOOOOOOOOOOOOOH
21:59:53 <hppavilion1> That's awesome
21:59:58 <hppavilion1> That is truely awesome
22:00:01 * hppavilion1 claps
22:00:03 <rdococ> hmm...
22:00:14 <rdococ> so what would false() return anyway?
22:00:22 -!- Phantom__Hoover has joined.
22:00:26 <hppavilion1> False is a builtin I think
22:00:42 <rdococ> True() and False() are builtins? srsly?
22:01:01 <hppavilion1> Well when I wrote it they were
22:01:04 <hppavilion1> They don't have to be
22:01:16 <rdococ> well... you see...
22:01:20 <hppavilion1> I was just going on the thought that they had to be
22:01:26 <rdococ> well...
22:01:34 <hppavilion1> Because they are in my favourite language
22:01:34 <rdococ> hmm...
22:01:37 <hppavilion1> Python
22:01:42 <rdococ> umm...
22:01:44 <rdococ> Hmm...
22:02:03 <rdococ> are there any objects with properties and methods? or is it literally all just functions?
22:02:26 <hppavilion1> Well the functions are technically callable objects
22:02:29 <hppavilion1> Like in Python
22:02:37 <hppavilion1> I'm building off of all the best languages I know of
22:02:53 <hppavilion1> Haskell, Python, the two good things in Javascript, etc.
22:03:13 <hppavilion1> Some C
22:03:22 <rdococ> do the objects have properties...?
22:03:31 <zzo38> Did you consider Forth and Lisp?
22:03:35 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
22:03:41 <rdococ> like, how an account has a balance? or a person has an age?
22:03:45 <zzo38> And also SQL?
22:03:46 <hppavilion1> I don't know Forth and I barely know lisp
22:03:54 <hppavilion1> Yes
22:04:03 <hppavilion1> Objects have properties and methods
22:04:19 <rdococ> or... you could do this! true(doStuff) directly instead of invoking a property of true
22:04:34 <rdococ> so true could be an identity/call function and false would be a NOP
22:04:36 <zzo38> Do you know any SQL though?
22:04:44 <hppavilion1> I don't really
22:05:01 <hppavilion1> Maybe there'll be a SQL library for it
22:05:08 <rdococ> function true(stuff) { return stuff() }; function false(stuff) { return };
22:05:10 <hppavilion1> I've written a little, but I barely understand it
22:05:19 <hppavilion1> Keep in mind I use javascript function notation
22:05:37 <rdococ> ik... I'm using pseudo code at the moment. should I fork the project?
22:05:40 <hppavilion1> OK
22:06:07 <zzo38> In JavaScript you can also make anonymous functions too, and overridable prototypes and generator functions and others
22:06:11 <hppavilion1> So then call foo if x is greater than five you would do "x>5(foo);" ?
22:06:15 <hppavilion1> I know you can do that
22:06:24 <hppavilion1> But I like the function expression
22:06:39 <rdococ> you can use aliases
22:06:46 <hppavilion1> Oh right
22:06:55 <rdococ> if(true, stuff) = alias(true(stuff))
22:07:09 <hppavilion1> That's kind of right
22:07:11 <zzo38> I think the syntax in JavaScript is too long though, and suggested stuff like @(x)(x) for the identity function
22:08:01 <hppavilion1> Hm...
22:08:42 <hppavilion1> Wait, was that a suggestion you made regarding JS or was that a suggestion for me?
22:08:53 <zzo38> About JavaScript
22:09:05 <hppavilion1> Ah
22:09:50 <hppavilion1> I'm trying to figure out what the syntax should be for denoting blocks of code to be used within functions
22:10:02 <rdococ> hm...
22:10:15 <rdococ> I'm trying to figure out how alias stuff works.
22:10:18 <hppavilion1> It can't be x = function(vars){code} because the {code} block would be interpreted as the definition
22:10:24 <hppavilion1> I am too :P
22:10:42 <zzo38> I do not quite understand what you are trying to do now?
22:10:57 <zzo38> What did you mea nabout "denoting blocks of code to be used within functions"?
22:10:58 <hppavilion1> What don't you understand?
22:11:01 <hppavilion1> Oh
22:11:13 <hppavilion1> PFIL allows you to define functions with code as an argument
22:11:32 <hppavilion1> SO a for loop could be defined in a library using while loops and incrementation, for example
22:11:42 <rdococ> dont merge yet btw
22:11:46 <b_jonas> hppavilion1: like smalltalk or ruby?
22:11:50 <zzo38> O, well, I would still just make the contents of the loop body also as a function
22:12:25 <hppavilion1> Do ruby and smalltalk allow that?
22:12:41 <zzo38> Or else, use macros instead.
22:13:05 <rdococ> alias function ...
22:13:20 <b_jonas> hppavilion1: yes, that's a basic feature of smalltalk, and ruby has inherited it, though only with up to one block argument per call
22:13:22 <hppavilion1> What about it?
22:13:33 <hppavilion1> Oh
22:14:08 <hppavilion1> Kewlzez
22:14:22 <hppavilion1> How does ruby implement it?
22:14:32 <b_jonas> I don't know how it implements it
22:14:39 <b_jonas> that's… an implementation detail
22:14:42 <b_jonas> I don't much care
22:16:58 <hppavilion1> OK
22:17:05 <hppavilion1> It looks like you use an ampersand
22:17:20 <b_jonas> I know the _syntax_ in ruby. Or at least most of it. Are you asking about that?
22:17:31 <hppavilion1> I figured it out
22:17:35 <hppavilion1> But thanks
22:17:44 <b_jonas> it's complicated, there's like ten syntax elements related to it
22:17:58 <b_jonas> so if you want me to explain most of it, you can ask
22:17:58 <hppavilion1> Well I'll just use the ampersand
22:18:06 <b_jonas> I can't help with smalltalk though
22:18:06 <hppavilion1> Is rd still here?
22:18:10 <rdococ> the true and false method stuff I talked about is implemented into Smalltalk, but I think it bypasses that logic code straight to the compiler
22:18:11 <hppavilion1> I got it
22:18:32 <b_jonas> rdococ: sure, it makes sense to optimize booleans
22:18:32 <hppavilion1> Ah
22:19:07 <b_jonas> conditionals occur a lot, so doing an extra function call for each of them could be bad
22:19:18 <b_jonas> in a practical interpreter that is
22:19:55 <rdococ> true
22:20:00 <rdococ> thats what they did
22:20:12 <rdococ> but the method stuff is still in Smalltalk source code anyway
22:20:20 <rdococ> interesting feature
22:20:33 <hppavilion1> So the operators that can be used in function arguments are *(splat), **(double splat), & (code block), and maybe others
22:20:34 <b_jonas> sure, useful for lots of other functions, such as for iterating over some containers
22:21:31 <b_jonas> some details of smalltalk and ruby seem really esoteric to me actually
22:21:39 <b_jonas> probably only because I'm not used to them
22:21:52 <b_jonas> they might be natural for someone who's grown up on those languages
22:23:48 <hppavilion1> The order than you can put arguments into a function is foo(requiredargs..., optionalargs..., *listargs, **kwargs, &blockargs)
22:25:06 -!- mihow has quit (Quit: mihow).
22:25:34 -!- mihow has joined.
22:25:35 <rdococ> my method of implementing gt requires equality... shoud that be primitive ...?
22:25:51 <hppavilion1> Maybe
22:25:54 -!- mihow has quit (Client Quit).
22:26:02 <hppavilion1> Do it with as few primitives as possible
22:26:03 <rdococ> equality seems more primitive than gt or lt...
22:26:14 <hppavilion1> I think I just made a travelling salesman problem for you
22:26:15 <hppavilion1> :P
22:26:18 <hppavilion1> It does
22:26:20 <hppavilion1> Do it that way
22:28:25 <hppavilion1> Are you making a pull request then?
22:28:29 -!- FireFly has quit (Changing host).
22:28:29 -!- FireFly has joined.
22:30:56 <rdococ> not yet...
22:31:06 <rdococ> it has to be logically consistent
22:31:15 <hppavilion1> I mean are you working on something that you'll pull request to me
22:31:16 -!- Tritonio has quit (Ping timeout: 272 seconds).
22:31:30 <rdococ> yes
22:31:31 <hppavilion1> That's probably the worst way I could've phrased that :P
22:31:32 <hppavilion1> OK
22:31:36 <hppavilion1> Awesome :)
22:32:33 <rdococ> god damn it... my internet glitched and now I have to remake the changes I made in comp.pfil...
22:32:41 <hppavilion1> :(
22:32:57 <hppavilion1> Wait, how did an internet glitch do that?
22:33:01 <hppavilion1> Oh
22:33:07 <hppavilion1> You edited the file on GitHub
22:35:47 <rdococ> but there werent many so
22:36:00 <hppavilion1> Great
22:36:35 <rdococ> ok I've made some changes. I'll keep making changes until I can remove another primitive...
22:36:40 <hppavilion1> OK
22:37:04 <hppavilion1> You can push what you've done for now if it's consistent
22:37:17 <rdococ> hmm...
22:37:21 <hppavilion1> And I'll just accept it and you can add the next bout right after I do it
22:37:35 <hppavilion1> I mostly just want to feel the march of progress :P
22:37:37 <rdococ> ok... let me check through to make sure
22:37:44 <hppavilion1> OK
22:37:45 <hppavilion1> Great
22:39:56 <rdococ> okay... you can check it too... tell me about anything youre unsure of
22:40:51 <hppavilion1> Did you push it?
22:41:16 <hppavilion1> I'm not getting anything
22:41:22 <hppavilion1> Let me refresh a few more times
22:42:01 <rdococ> okay... did it
22:42:10 <hppavilion1> Great
22:43:21 <rdococ> ignore the silly commit comment stuff... had to change addition and subtraction but it's fine now
22:44:55 <hppavilion1> Dammit
22:45:09 <hppavilion1> I edited some stuff before I sent you the link to the repo
22:45:16 <hppavilion1> But I forgot to commit it
22:45:20 <hppavilion1> Now I have a merge conflig
22:45:22 <hppavilion1> -.-
22:45:32 <hppavilion1> *conflict
22:45:41 <rdococ> oops
22:46:57 <rdococ> I'm just thinking, imagine if there was a way to substitute the function() and return() primitives for something that isn't... also, about set()...
22:47:07 <hppavilion1> Yes?
22:47:19 <rdococ> well... nvm...
22:47:21 <rdococ> hmm...
22:48:01 <rdococ> function return(function, parameters, returnValue) { function(parameters) = returnValue }
22:48:10 <rdococ> if that even makes sense
22:48:15 <hppavilion1> I don't get it
22:48:28 <hppavilion1> Oh
22:48:28 <hppavilion1> Wait
22:48:34 <hppavilion1> You were defining return
22:48:37 <hppavilion1> Let me look
22:49:06 <rdococ> if you get it... I'm setting the function value to stuff...
22:49:15 <hppavilion1> OK
22:49:21 <hppavilion1> I'm trying to fix this merge conflig
22:49:24 <hppavilion1> *conflit
22:49:26 <hppavilion1> *conflict
22:49:31 <rdococ> k...
22:49:41 <rdococ> what did you change btw?
22:49:46 <hppavilion1> I don't know
22:49:53 <hppavilion1> The conflict is in comp.pfil
22:49:57 <hppavilion1> I changed it a while ago
22:50:03 <hppavilion1> So the commit doesn't even tell you
22:50:11 <hppavilion1> Because I didn't know when I wrote it xD
22:52:00 <hppavilion1> Dammit
22:52:06 <hppavilion1> I need to debug the state of the repo
22:55:51 <hppavilion1> OK
22:55:53 <hppavilion1> Fixed it
22:56:00 <hppavilion1> But I think I lost some progress on the docs
22:56:02 <hppavilion1> :,(
22:56:03 <hppavilion1> Wait
22:56:06 <hppavilion1> I have a backup!
22:56:07 <hppavilion1> Right!
22:56:10 <hppavilion1> I am amazing!
22:56:11 <hppavilion1> :P
22:57:11 <hppavilion1> All is well in the world of programming
22:58:36 -!- hppavilion1 has quit (Quit: Page closed).
22:58:47 <oren> *Din* *Din* 7 o clock and all's well
22:58:55 -!- hppavilion1 has joined.
22:58:59 <hppavilion1> So
22:59:12 <hppavilion1> (Just refreshed the page, hopefully didn't miss anything)
22:59:13 <hppavilion1> AFK
22:59:16 <hppavilion1> Wait
22:59:22 <hppavilion1> Does /afk do anything?
22:59:29 <hppavilion1> Nope
22:59:30 <hppavilion1> Well
22:59:31 <hppavilion1> AFK
22:59:35 <oren> I don;t think so
23:00:34 <oren> Also you can read the logs for stuff you missed, unless you're like me and just keep Irssi running for weeks
23:01:04 <oren> then you can simply scroll up
23:01:47 <hppavilion1> I'm an IRC noob and am using WebChat
23:02:16 -!- HackEgo has quit (Remote host closed the connection).
23:02:20 <oren> I started Irssi on June 1 and haven't signed off since
23:02:21 <rdococ> I'm going to fork it again...
23:02:28 -!- HackEgo has joined.
23:02:41 <zzo38> I don't know what does on the WebChat; I use my own IRC client because I don't like the others
23:03:19 <zzo38> Some webpages don't even link to the actual IRC and only to a webpage to chat on IRC; sometimes I have to view the source to figure out the proper address to connect to with my own IRC client.
23:03:55 -!- zemhill__ has joined.
23:04:01 -!- KitB has quit (Remote host closed the connection).
23:04:03 -!- zemhill_ has quit (Remote host closed the connection).
23:04:50 <hppavilion1> `cls
23:04:54 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: cls: not found
23:05:02 <hppavilion1> There we go
23:05:05 <hppavilion1> ./clear is nice
23:06:08 -!- KitB has joined.
23:06:57 <hppavilion1> Hellu
23:08:27 <rdococ> how could I implement function() so its not a primitive?
23:09:23 <b_jonas> rdococ: with templates
23:09:23 -!- Patashu has joined.
23:09:43 <hppavilion1> I doubt that's possible
23:09:54 <hppavilion1> I mean, without many other primitives
23:10:37 <hppavilion1> I'm considering implementing table
23:10:44 <nys> first class macros?
23:10:57 -!- hppavilion1 has changed nick to YOURMUM.
23:11:23 -!- augur has joined.
23:11:39 <YOURMUM> Hellu
23:11:53 -!- YOURMUM has changed nick to hppavilion1.
23:16:34 -!- lleu has quit (Ping timeout: 256 seconds).
23:17:57 <rdococ> well I've been able to implement return()
23:18:02 <hppavilion1> Yay
23:18:18 -!- HackEgo has quit (Remote host closed the connection).
23:18:29 -!- HackEgo has joined.
23:19:23 <rdococ> ugh but its messed up
23:19:43 <rdococ> the return() stuff looks like a forked version of my unmerged code stuff and stuff
23:19:53 <rdococ> how do I delete my fork?
23:20:19 <hppavilion1> I think you go to the settings
23:20:23 <hppavilion1> And find the Danger Zone
23:20:46 <hppavilion1> And delete repo
23:22:24 <hppavilion1> You know
23:22:31 <hppavilion1> I think table could actually be useful for something
23:23:00 <hppavilion1> It's a language so esoteric it stops being just for fun and becomes a fully legit, useful lang
23:24:12 -!- KitB has quit (Remote host closed the connection).
23:25:14 <rdococ> true...
23:25:29 <rdococ> its so esoteric, it's not esoteric anymore...
23:25:34 -!- KitB has joined.
23:25:35 <hppavilion1> Yep
23:25:44 -!- skarn has quit (Ping timeout: 265 seconds).
23:25:47 <rdococ> but thats still cool and esoteric...
23:25:51 <hppavilion1> I wrote a lexer for it
23:25:58 <rdococ> cool...
23:25:59 <hppavilion1> It's two lines of code :P
23:26:05 <rdococ> cooler
23:26:06 <hppavilion1> Well, 3 I guess
23:26:09 <hppavilion1> Including the import
23:26:31 <hppavilion1> from ast import literal_eval def lex(script): return literal_eval('{'+script.replace('[', '{').replace(']', '}'))
23:26:44 -!- lleu has joined.
23:29:54 <rdococ> but I dont think table is turing complete
23:30:14 <hppavilion1> OK
23:30:16 <hppavilion1> I fixed the parser
23:30:18 <rdococ> assuming lazy evaluation, table is at best, a finite state automaton... unless someone can disprove that...
23:30:33 <hppavilion1> I'll make it turing complete with modification to the standard
23:30:43 <rdococ> make Table turing complete?
23:30:44 <hppavilion1> Or I'll leave it as is
23:30:48 <hppavilion1> If possible
23:30:51 <rdococ> wait what how?
23:30:54 <hppavilion1> IDK
23:30:58 <hppavilion1> But I will do it
23:31:02 <hppavilion1> Unless I can't
23:31:08 <hppavilion1> I fixed up the lexer
23:31:12 <hppavilion1> It's buggy, but it works
23:31:12 -!- KitB has left ("http://quassel-irc.org - Chat comfortably. Anywhere.").
23:31:15 <rdococ> everything is possible
23:31:25 <hppavilion1> Ture
23:31:26 <hppavilion1> *True
23:31:36 <hppavilion1> Especially if you're turing complete xD
23:31:40 <rdococ> hahahaha
23:31:53 <rdococ> well, except for solving the halting problem
23:31:59 <hppavilion1> Yeah...
23:32:04 <rdococ> (which I think I can...)
23:32:08 <hppavilion1> Anything possible is possible if you're turing complete
23:32:14 <rdococ> lol
23:32:16 <hppavilion1> Which seems tautological, but isn't
23:32:40 <hppavilion1> >>> lex("{'walrus': {'man': 'person'}}") returns {'walrus': {'man': 'person'}}
23:32:43 -!- skarn has joined.
23:32:43 <hppavilion1> So I think it works
23:33:12 <hppavilion1> Wait
23:33:14 <hppavilion1> I have a problem
23:33:15 <hppavilion1> I think
23:33:24 <rdococ> you know... I think I could solve the halting problem... convert the program into pseudo code and use some kind of machine to tell whether there are loops and stuff or not
23:33:47 <hppavilion1> Shitshitshitshitshitshitshit
23:33:50 <rdococ> while (true) { do stuff } obviously doesnt halt
23:33:58 <rdococ> but null program does
23:34:00 <zzo38> It won't always work though, but you can sometimes figure out that it doesn't halt
23:34:07 <hppavilion1> YEah
23:34:15 <hppavilion1> So I have a problem
23:34:21 <rdococ> true
23:34:31 <rdococ> it works for some programs
23:34:43 <hppavilion1> So naturally, I'm going to suggest a change for table instead of fixing it in my program :P
23:34:57 <rdococ> hmm?
23:35:45 <hppavilion1> Instead of just a raw library name being used for import (which makes it not technically a table), make it do somthing like map "libraries" to a list of tables to use
23:35:50 <hppavilion1> Not tables to use
23:35:53 <hppavilion1> Libraries to use
23:36:00 * hppavilion1 facepalms himself
23:36:19 <hppavilion1> Or even better, to make the list of libraries a table too
23:36:29 <hppavilion1> Make it a map mapping library names to booleans
23:36:34 <hppavilion1> And if they're true importing htem
23:36:42 <hppavilion1> And if they're false ignoring them
23:36:45 <rdococ> you gave me idea
23:37:02 <hppavilion1> Good :)
23:37:08 <hppavilion1> I like doing that
23:39:06 <rdococ> instead of assigning properties to values...
23:39:13 <rdococ> just do sets of flags, like
23:39:20 <hppavilion1> In pfil or in Table?
23:39:42 <rdococ> 3 = [successor of 2, predeccessor of 4, derp, herp]
23:39:53 <rdococ> a Table derivative
23:39:58 <hppavilion1> Aaaaah
23:40:30 <hppavilion1> I don't think my current lexer will work
23:40:36 <hppavilion1> I'll have to write a whole lexer :/
23:44:38 <hppavilion1> So how does this derivative work?
23:49:16 -!- hilquias has quit (Remote host closed the connection).
23:49:45 <rdococ> maybe...
23:49:49 <rdococ> 0 = 0
23:49:52 <rdococ> 1 = 0++
23:49:54 <rdococ> 2 = 1++
23:49:55 <rdococ> etc
23:50:09 <rdococ> x++-- = x
23:51:22 <rdococ> I had an idea just like pfil once
23:51:28 <rdococ> where everything could be a function
23:52:08 <hppavilion1> I just rewrote the lexer
23:52:19 <hppavilion1> Mostly
23:52:23 <hppavilion1> I just need to actually map stuff
23:55:09 <hppavilion1> Done!
23:56:27 <hppavilion1> Can I write an arithmetic library for Table and add it to the esolangs page?
←2015-06-18 2015-06-19 2015-06-20→ ↑2015 ↑all