←2018-09-21 2018-09-22 2018-09-23→ ↑2018 ↑all
00:00:11 <shachaf> Should computers have a single address space?
00:00:30 <wob_jonas> shachaf: yeah, would they just assign the arguments to formal parameters in an explicit formal parameter list (possibly with the types omittable)? if so, then how is that better from just plain local variable declarations with initialization at the inside beginning of the block?
00:00:34 <Sgeo_> shachaf, I guess that would be fine if the machine language was easily relocatable
00:00:49 -!- XorSwap has joined.
00:00:51 <Sgeo_> I wonder if there are any instruction sets like that, only relocatable instructions
00:01:01 -!- wyggler227 has joined.
00:01:12 <shachaf> The Mill has a single address space.
00:01:16 <shachaf> wob_jonas: Let me think of some of my use cases.
00:01:20 -!- boily has joined.
00:01:21 <wob_jonas> if it's just C-like lexical scope rules for when the argument names are live, you can just add a multiple declaration statement like in C.
00:01:28 <boily> fungot: nostril.
00:01:29 <fungot> boily: i just want ( as my implementation passes except for that poly-add-term procedure. let's think of fnord awful rc scheme... brown too as well.
00:01:32 <wob_jonas> s/it's/the difference is/
00:01:39 <pikhq> The Mill is also willing to engage in some fairly radical departures from traditional architecture to pull it off.
00:01:43 <wob_jonas> and even a multiple declaration with different types.
00:02:16 -!- MDude has joined.
00:02:17 <shachaf> wob_jonas: Do you remember that my "for x in xs" syntax was { x := for(xs); BODY }?
00:02:33 <wob_jonas> shachaf: yes
00:02:43 <shachaf> What should that expand into?
00:03:25 <shachaf> Say it's a C++-style for loop. Not that I really want those, but at least they're established.
00:03:32 <wob_jonas> shachaf: for x (xs) { BODY }
00:03:55 <wob_jonas> shachaf: what do oyu mean by "C++-style for loop"? those have like six twists over C-like for loops
00:04:08 <shachaf> I mean for (auto x : xs) in C++
00:04:23 -!- wyggler227 has quit (Remote host closed the connection).
00:05:47 <shachaf> I guess it might turn into something like { @break_label; it := xs.begin(); end := xs.end(); @label; exit_if (it == end) @break_label; { @continue_label; BODY }; ++it; repeat @label; }
00:06:17 <shachaf> Except x should be in scope for BODY
00:06:25 <shachaf> That doesn't make sense, hmm.
00:06:39 <wob_jonas> shachaf: with the variable that xs.begin() and xs.end() will be assigned to with required same type (older C++) or allowed different types (newer C++)? with auto x expanding to a C++-style reference to the dereferenced values?
00:08:27 <shachaf> There are better for loops anyway, I just wanted something to use as an example.
00:08:29 <wob_jonas> shachaf: rust doesn't allow returns values from for-range loops and do-while loops, because they might run the block zero times, so it's not clear what the normal fall-out-of-block return value should be, unless it's () in which case return values are not useful.
00:08:31 <shachaf> Maybe I should use Rust-style iterators intead.
00:08:57 <shachaf> wob_jonas: That's pretty reasonable. Maybe only for-else style loops should have return values.
00:09:06 <shachaf> I mean early exit values.
00:09:14 <shachaf> But I want early exit values from arbitrary blocks anyway.
00:10:11 <wob_jonas> shachaf: rust-style iterators in your language? aren't they pretty hard to design a language around where they're useful?
00:10:40 <wob_jonas> C++-style or old lua-style may be easier
00:11:24 <shachaf> Isn't a Rust iterator just a thing with a next() method that can return a next value or None?
00:11:33 <wob_jonas> old lua as in the same one as in current lua, which was designed for old lua that didn't have closures, so it lets you passes extra parameters to the iterator callbacks
00:11:53 <shachaf> The whole thing is irrelevant anyway.
00:12:15 <shachaf> The question here isn't how iterators should work, it's how the { x := macro(); ... } thing should work.
00:12:19 <wob_jonas> shachaf: object with next method => pretty much, yes
00:12:51 <wob_jonas> shachaf: sorry, I'm too tired to contribute anything useful to this now. you might want to ask me later or ask someone else
00:13:47 <shachaf> wob_jonas: The point is, I guess, that { x := XXX; YYY } is like a sort bof lambda/continuation with a hole in the place where it says XXX
00:15:54 <wob_jonas> shachaf: isn't it just a non-lambda control structure that executes the block ones with that lexical variable locally assigned in the block? few languages have that control structure, but it's one you could have.
00:15:59 <shachaf> It's a lot like a block {|x| YYY} applied to argument XXX
00:16:06 <shachaf> When XXX is a regular value, I mean.
00:16:38 <shachaf> When it's not a regular value but a semi-macro-thing, the semi-macro-thing should effectively take that block as an argument, and be able to run it with a value.
00:17:23 <shachaf> Sure, it's that too. But actually using the name "x" is kind of ugly.
00:17:24 <wob_jonas> shachaf: and is that a golang-like := that declares a new lexical local variable, or a traditional assignment to an existing lvalue or variable (temporary or permanent)?
00:17:39 <shachaf> It's Go-like.
00:18:00 <wob_jonas> yeah, that's easier. no messing with restoring the original value ever.
00:18:12 <wob_jonas> still, definitely can be interpreted as a control structure
00:18:18 <wob_jonas> with no lambda in there
00:18:27 <shachaf> Yes, { x = XXX; YYY } is maybe trickier.
00:18:35 <shachaf> Sure, the lambda is only conceptual, it's not a real lambda.
00:19:03 <wob_jonas> shachaf: which version, the permanent assignment (that's easy, if you already have mutable variables), or the temporary one?
00:19:15 <wob_jonas> the temporary one really should have different syntax though
00:19:25 <wob_jonas> unless this language has a very strange syntax
00:19:48 <shachaf> I'm not concerned with assignment for the moment.
00:20:18 <shachaf> What sort of thing is { x := [hole]; YYY }?
00:20:32 <wob_jonas> shachaf: I don't think it's a lambda. didn't you already imply that the other control structures like for-each or while or if aren't lambdas, because much less restrictions? if so, then this is even less of a lambda.
00:21:04 <shachaf> Yes, it's not a lambda.
00:21:10 -!- boily has quit (Quit: IMPERATIVE CHICKEN).
00:21:10 <shachaf> I only used the word "lambda" as analogy.
00:21:37 <wob_jonas> shachaf: uh, that could be a convenience syntactic sugar I guess, if you mean the value is given somewhere after the closing brace
00:21:40 <shachaf> It's more like a SSA basic block, as described in https://www.cs.cmu.edu/~rjsimmon/15411-f15/lec/10-ssa.pdf
00:22:07 <wob_jonas> or it could be a real lambda with that x:=[hole]; declaring an argument
00:22:50 <shachaf> I mean you can write "macro" such that when you write { x := macro(); YYY }, "macro" expands to some code that takes { x := [hole]; YYY } as an argument.
00:23:19 <shachaf> (These aren't really AST-processing macros but something weaker that treats that thing as a black box.)
00:23:21 <wob_jonas> like, in some languages iirc the braces themselves in some syntactic context imply it's a lambda, not called
00:23:26 <shachaf> I don't think I'm communicating very coherently. :-(
00:23:49 <wob_jonas> shachaf: yes, like I said I'm too tired to really understand anything you say
00:24:36 <wob_jonas> totally different topic:
00:25:19 <wob_jonas> In natural languages, do you know those language prescriptionists that try to proscribe some redundant phrases? I hate them.
00:25:59 <wob_jonas> Not because they cherry-pick by hating some kind of redundancies while liking others. That's OK.
00:26:37 <wob_jonas> Because many of those redundant phrases are actually features: they help in either disambiguation or error-correcting, the latter especially in spoken text in noisy environments.
00:27:20 <wob_jonas> For the first, phrases with a TLA like "ATM machine", "PIN number", "LCD display" are good because TLAs are so ambiguous that you need the redundancy to *disambiguate*.
00:27:53 <shachaf> Your communication would be clearer if you started with the example.
00:28:21 <wob_jonas> And some redundant phrases help error-correct against mishearing. I don't know a good English example that grammar nazis try to proscribe, but in Hungarian, "Hol fekszik helyileg?" is a double redundant phrase for asking "Where?",
00:28:45 <shachaf> I'd much rather proscribe acronyms in the first place.
00:28:52 <shachaf> They're mostly bad.
00:29:42 <shachaf> A bad way to construct words.
00:29:46 <wob_jonas> where "helyileg" is a good circumphrasing and "fekszik" is a qualifier, and the error-correction is useful in spoken text (esp in noisy channel) because "Hol?" is too short alone and easy to mishear,
00:30:14 <wob_jonas> and the alternative "Merre?" would be proscribed by the same grammar nazis for an entirely different reason.
00:30:54 <wob_jonas> shachaf: perhaps, but acronyms still seem sometimes useful, especially in technical jargon
00:31:02 <shachaf> No, they're bad in technical jargon.
00:31:14 <wob_jonas> although mind you, maybe they aren't that useful, because for some reason maths terminology barely has any acronyms, while computing has a ton
00:31:26 <shachaf> If you need to invent a word, there are much better ways to explore word-space than taking the first letter of a bunch of other words.
00:32:53 <wob_jonas> shachaf: yes, that might be true
00:34:17 <wob_jonas> gnite
00:34:20 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
00:34:32 <shachaf> I think one of the reasons people use acronyms is to -- oh, never mind.
00:36:36 -!- arseniiv has quit (Ping timeout: 260 seconds).
00:38:57 -!- grumble has quit (Quit: If we're putting dbus in the linux kernel, I want a java rmi registry there too.).
00:39:03 -!- grumble has joined.
00:42:50 -!- bradcomp has joined.
00:44:47 <Sgeo_> shachaf,
00:44:49 <Sgeo_> "● Mainframe experience shows an established
00:44:49 <Sgeo_> market for hardware decimal arithmetic"
00:44:51 <Sgeo_> what?
00:48:59 <shachaf> I don't know?
00:51:54 -!- [n0mad]21 has joined.
00:52:49 -!- [n0mad]21 has quit (Killed (Sigyn (Spam is off topic on freenode.))).
01:05:54 -!- MDude has quit (Remote host closed the connection).
01:08:36 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:18:00 -!- nfd9001 has joined.
01:18:57 -!- Hoolootwo has changed nick to Hooloovo0.
01:25:43 -!- en7ropy has joined.
01:27:07 -!- MDude has joined.
01:29:42 -!- bradcomp has quit (Ping timeout: 252 seconds).
01:30:30 -!- en7ropy has quit (Remote host closed the connection).
01:55:23 <pikhq> Sgeo_: I dunno, but mainframes do *do* BCD arithmetic natively.
01:55:46 <pikhq> Not decimal floats, mind, but certainly decimal fixed-point.
02:19:42 <zzo38> Which mainframes?
02:20:35 <Sgeo_> I don't know, that was a claim from Mill people
02:20:46 <Sgeo_> https://web.archive.org/web/20160303233450/http://www.ac.usc.es/arith19/sites/default/files/SSDAP3_ArithmeticOnTheMillArchitecture.pdf
02:21:46 <zzo38> I know some computers have BCD, not only mainframe computers though
02:23:21 -!- zgrep1 has joined.
02:25:08 <zzo38> Someone who wrote a game for NES used base 100 to score the score (rather than base ten). Some implementations of MIX also use base 100 (although it includes the instruction to display the numbers anyways)
02:25:28 <izabera> >score the score
02:26:56 <pikhq> zzo38: It's a typical feature of the System Zs.
02:27:18 <pikhq> (and its ancestry)
02:27:29 <zzo38> OK
02:28:03 <pikhq> It's also exposed (and indeed, is kinda the default arithmetic type) in COBOL.
02:28:06 -!- zgrep1 has quit (Remote host closed the connection).
02:28:19 <pikhq> So, I'd expect it to be around on any environment where running COBOL was considered important.
02:41:54 -!- oerjan has joined.
02:44:33 -!- MDead has joined.
02:46:41 -!- MDude has quit (Ping timeout: 260 seconds).
02:46:45 -!- MDead has changed nick to MDude.
02:52:43 <Sgeo_> COBOL for the Commodore 64 exists.
02:53:01 <Sgeo_> Abacus Software apparently implemented a lot of languages on C64
03:05:54 -!- bradcomp has joined.
03:21:08 -!- sebbu has quit (Read error: Connection reset by peer).
03:21:38 -!- sebbu has joined.
03:23:54 -!- pimlu has joined.
04:08:48 -!- bradcomp has quit (Ping timeout: 245 seconds).
04:20:36 -!- pimlu has quit (Ping timeout: 260 seconds).
04:30:48 -!- bradcomp has joined.
04:49:53 -!- pimlu has joined.
04:59:36 -!- xkapastel has quit (Quit: Connection closed for inactivity).
05:00:55 -!- nyuszika has joined.
05:01:48 -!- nyuszika has quit (Killed (Sigyn (Spam is off topic on freenode.))).
05:25:18 -!- nfd9001 has quit (Ping timeout: 252 seconds).
05:26:01 -!- nfd9001 has joined.
05:28:37 -!- sebbu2 has joined.
05:32:09 -!- sebbu has quit (Ping timeout: 252 seconds).
05:52:02 -!- bradcomp has quit (Ping timeout: 252 seconds).
06:02:56 -!- scorche|1h25 has joined.
06:05:25 -!- scorche|1h25 has quit (Remote host closed the connection).
06:18:47 <Hooloovo0> base 100 is sort of a thing on a lot of byte-size cpus with support for a bcd-adjust instruction
06:19:04 <Hooloovo0> such as the z80 and I think 6502
06:20:08 <shachaf> Sgeo_: That seems like one of the less interesting things about the Mill, whether or not it's true.
06:20:29 <Hooloovo0> but the HP saturn is one of my favorite CPUs because its native state is BCD
06:21:00 <Hooloovo0> it's a 64-bit cpu designed around 4-bit values
06:21:14 <Hooloovo0> or a 4-bit cpu? idk how this works
06:22:53 -!- bradcomp has joined.
06:23:05 <zzo38> But z80 and 6502 are still binary computers, even though it has BCD
06:24:35 <Hooloovo0> right, I was looking at your reference to a NES game which used base 100
06:24:41 <Hooloovo0> which is 6502
06:25:10 <zzo38> NES doesn't have BCD though
06:25:26 <Hooloovo0> it's been a very long time since an acutal native BCD computer has been around
06:25:53 <Hooloovo0> I had an HP nixie tube time counter for a while until I broke it
06:26:18 <Hooloovo0> but that doesn't quite qualify as a computer
06:26:36 -!- nfd9001 has quit (Ping timeout: 260 seconds).
06:27:14 -!- bradcomp has quit (Ping timeout: 252 seconds).
06:27:48 -!- XorSwap has quit (Ping timeout: 252 seconds).
06:46:15 -!- Zic21 has joined.
06:48:01 -!- Zic21 has quit (Killed (Sigyn (Spam is off topic on freenode.))).
06:49:57 -!- Mayoi has joined.
06:51:30 -!- Mayoi has quit (Remote host closed the connection).
06:51:43 -!- erkin has quit (Ping timeout: 245 seconds).
06:51:51 -!- erkin has joined.
06:52:54 -!- erkin has quit (Remote host closed the connection).
06:53:14 -!- erkin has joined.
07:24:03 -!- bradcomp has joined.
07:28:18 -!- bradcomp has quit (Ping timeout: 252 seconds).
07:35:17 -!- oerjan has quit (Quit: Nite).
07:37:06 -!- pimlu has quit (Ping timeout: 252 seconds).
07:49:12 -!- erkin has quit (Ping timeout: 252 seconds).
07:52:39 -!- erkin has joined.
08:49:31 -!- Skainet has joined.
08:51:06 -!- Skainet has quit (Remote host closed the connection).
08:52:43 -!- AnotherTest has joined.
08:55:29 -!- Inge-21 has joined.
08:57:58 -!- Inge-21 has quit (Killed (Sigyn (Spam is off topic on freenode.))).
09:09:49 -!- hypercube32 has joined.
09:12:34 -!- bradcomp has joined.
09:15:04 -!- hypercube32 has quit (Remote host closed the connection).
09:16:56 -!- bradcomp has quit (Ping timeout: 260 seconds).
09:45:55 -!- TinyTimmyTokyo14 has joined.
09:46:47 -!- TinyTimmyTokyo14 has quit (Killed (Sigyn (Spam is off topic on freenode.))).
09:53:11 -!- survietamine18 has joined.
09:55:43 -!- survietamine18 has quit (Remote host closed the connection).
10:05:15 -!- Phantom_Hoover has joined.
10:12:44 -!- moei has quit (Ping timeout: 252 seconds).
10:35:54 -!- di0_13 has joined.
10:36:10 -!- di0_13 has quit (Remote host closed the connection).
10:37:07 -!- Essadon has joined.
10:40:07 -!- nosomebodies has joined.
10:53:37 <esowiki> [[Math++]] https://esolangs.org/w/index.php?diff=57715&oldid=57487 * SuperJedi224 * (+0) /* Boolean AND */
10:54:17 <esowiki> [[Math++]] https://esolangs.org/w/index.php?diff=57716&oldid=57715 * SuperJedi224 * (-2) /* Boolean AND */
11:01:04 -!- bradcomp has joined.
11:05:28 -!- bradcomp has quit (Ping timeout: 245 seconds).
11:32:10 -!- xkapastel has joined.
11:42:19 -!- moei has joined.
12:06:00 -!- baiguai has joined.
12:07:42 -!- baiguai has quit (Remote host closed the connection).
12:18:34 -!- sebbu2 has quit (Quit: reboot).
12:19:45 -!- nosomebodies has quit (Ping timeout: 256 seconds).
12:27:50 -!- arseniiv has joined.
12:49:39 -!- bradcomp has joined.
12:53:45 -!- bradcomp has quit (Ping timeout: 244 seconds).
12:58:43 -!- trango26 has joined.
12:58:50 -!- trango26 has quit (Remote host closed the connection).
12:59:33 -!- nellicus_23 has joined.
13:03:38 -!- nellicus_23 has quit (Remote host closed the connection).
13:16:47 <esowiki> [[Special:Log/newusers]] create * Micnap818a * New user account
13:18:17 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
13:38:34 -!- nfd9001 has joined.
13:40:30 -!- sebbu has joined.
13:42:17 -!- sebbu has quit (Remote host closed the connection).
13:42:44 -!- sebbu has joined.
13:43:03 -!- nfd9001 has quit (Ping timeout: 252 seconds).
13:50:38 -!- holtmann5 has joined.
13:53:15 -!- holtmann5 has quit (Remote host closed the connection).
14:07:48 -!- GeekDude has quit (Ping timeout: 252 seconds).
14:20:05 -!- SopaXorzTaker has joined.
14:30:57 -!- uncle-wan12 has joined.
14:32:42 -!- uncle-wan12 has quit (K-Lined).
14:38:09 -!- bradcomp has joined.
14:43:01 -!- bradcomp has quit (Ping timeout: 260 seconds).
14:47:07 -!- sn0w12 has joined.
14:48:05 -!- sn0w12 has quit (Remote host closed the connection).
15:19:34 -!- SopaXorzTaker has quit (Remote host closed the connection).
15:24:51 -!- SopaXorzTaker has joined.
15:37:00 -!- pimlu has joined.
16:07:54 -!- pimlu has quit (Read error: Connection reset by peer).
16:08:38 -!- pimlu has joined.
16:26:10 -!- smokeysea has joined.
16:31:04 -!- smokeysea has quit (Remote host closed the connection).
16:32:33 -!- ep100 has joined.
16:40:36 -!- qgTG12 has joined.
16:42:17 -!- qgTG12 has quit (Killed (Unit193 (Spam is not permitted on freenode.))).
16:47:51 -!- pimlu has quit (Ping timeout: 260 seconds).
16:48:03 -!- nfd9001 has joined.
16:52:42 -!- nfd9001 has quit (Ping timeout: 264 seconds).
16:53:54 -!- empty_string11 has joined.
16:56:28 -!- empty_string11 has quit (Remote host closed the connection).
17:16:08 -!- LD_19 has joined.
17:22:58 -!- LD_19 has quit (Ping timeout: 245 seconds).
17:24:46 -!- pimlu has joined.
17:58:32 -!- Fire-Dragon-DoL2 has joined.
18:02:43 -!- S_Gautam has joined.
18:07:04 -!- Fire-Dragon-DoL2 has quit (Ping timeout: 240 seconds).
18:18:56 -!- pimlu has quit (Ping timeout: 252 seconds).
18:21:32 -!- XorSwap has joined.
18:21:56 -!- bylzz9 has joined.
18:26:39 -!- bylzz9 has quit (Ping timeout: 252 seconds).
18:57:37 -!- SopaXorzTaker has quit (Remote host closed the connection).
19:06:37 <moony> Probably not new at all, but i figured out a pretty trival way to compile Befunge, if g and p are not used to modify code.
19:07:59 <moony> just build "strings" out of each possible program direction, and compile those individual conditional free strings
19:10:37 <moony> aww
19:10:49 <moony> someone already thought of that. Eh, like i said, probably wasn't new
19:13:27 -!- syd has joined.
19:15:59 <Sgeo_> "Furthermore, our TI columnist, C. Regena, suggests using RANDOMIZE before each call to RND to insure total randomness."
19:16:03 <Sgeo_> https://archive.org/stream/1983-12-compute-magazine/Compute_Issue_043_1983_Dec#page/n49
19:20:01 -!- sebbu2 has joined.
19:20:55 <int-e> good to know
19:22:28 -!- syd has quit (Ping timeout: 246 seconds).
19:22:45 <Sgeo_> That seems weird, redoing a seed?
19:22:53 <Sgeo_> But I don't know TI-99 basic
19:23:12 -!- sebbu has quit (Ping timeout: 252 seconds).
19:24:35 <moony> i just realised how fun a SIMD language could be for codegolf.
19:24:38 <moony> Time to make one!
19:38:02 -!- sebbu2 has quit (Read error: Connection reset by peer).
19:38:31 -!- sebbu has joined.
19:40:14 <int-e> Sgeo_: I was joking
19:41:29 <int-e> Sgeo_: of course it could be that that particular RANDOMIZE incorporates the old seed at least, in which case it likely won't do any actual harm.
19:49:57 -!- wob_jonas has joined.
19:52:34 <wob_jonas> I just had a revelation
19:53:15 <wob_jonas> you know how D&D has some of these class-alignment restrictions, where you can't use certain class abilities if you're not in the favored alignment(s) for the class?
19:53:56 <wob_jonas> I thought of them as stupid, mostly because of the Paladin class. That class seemed bad to me because of the striking popular image of the white knight and the black knight, I didn't know why a knight could only fight for good.
19:54:14 <wob_jonas> I still don't know about Paladins, but at least I realized why some class-alignment restrictions actually make sense.
19:54:34 <wob_jonas> There are some in the real world too. And I always knew about them, I just didn't put the two together until this weekend.
19:55:08 <wob_jonas> A leading politician or a leading businessman must be Evil.
19:56:06 <wob_jonas> You can still start a political or business carrer without being Evil, that is, you can take the class, but if you don't turn yourself to truly Evil, then you really won't be able to use the most powerful tools of those trades, and you almost certainly won't rise to the top.
19:56:39 <wob_jonas> That's why all the most successful politicians (presidents, etc) you see are Evil, though some are good at hiding it.
19:57:07 <wob_jonas> At least after the second world war in Europe. Maybe the situation was different back when Ghandi lived, I really don't know.
19:57:50 -!- clayg10 has joined.
19:58:04 <wob_jonas> And the same is true for web designers at the big commercial sites like Facebook. The people developing eg. Facebook and Google must be Evil, or else they lose their best tools and their websites will never be one of the most successful ones.
19:58:45 -!- clayg10 has quit (Remote host closed the connection).
19:58:52 <wob_jonas> And all this started to make sense to me this weekend, when I saw the thoroughly Evil web design team of a big website do a Good redesign of the site.
19:59:16 <wob_jonas> That's normal, they're still Evil. Even many Evil politicians sometimes do Good things, and I won't go into the details in politics, but I can tell about the web design case if you want.
20:00:27 <wob_jonas> And the problem is that in this case, their Good act came off as unpopular in the established community of the website, perhaps because of the gut reaction that a redesign of a website must be bad (that's natural), or perhaps because they don't realize
20:01:20 <wob_jonas> how, while this particular redesign takes away some shinies they were used to, it also really helps some potential new users, especially ones with vision problems who use a highly zoomed browser (but not a screened reader), who previously couldn't use the website through no fault of their own.
20:02:06 <wob_jonas> And now there are some new browser capabilities widely available that can help on this, and although web designers usually misuse those new tools for Evil, THIS TIME these particular Evil web designers actually did something Good with them,
20:02:27 <wob_jonas> and used the so-called "responsive design" tools for good and made a website that people with a zoomed browser can actually use.
20:02:50 -!- zenethian17 has joined.
20:03:14 -!- zenethian17 has quit (Remote host closed the connection).
20:03:42 <wob_jonas> They made a website that when zoomed to an effectively narrow window, still has all functionality availble, rather than hiding elements essential for navigation or making them inaccessible by having them disappear to outside the bounding boxes or overlap with other controls.
20:05:22 <wob_jonas> And they did it for a totally Evil reason too: in this case the potential gain of new users who'll now be able to use the site is bigger for them, and they don't care about losing a few regulars who are upset about losing their shiny toys like "custom vote buttons" or "starry background" or "fancy header font" (I'm not kidding).
20:05:36 -!- Gathis has joined.
20:05:59 -!- Gathis has changed nick to Guest10237.
20:06:05 <wob_jonas> So I wrote a writeup that is mostly true but very selective about what it tells where I try to convince the established users that this one change is Good, while I'm silent about the web designers being Evil because I don't have to tell everything to them.
20:10:20 -!- Guest10237 has quit (Remote host closed the connection).
20:12:15 -!- S_Gautam has quit (Quit: Connection closed for inactivity).
20:16:54 -!- XorSwap has quit (Quit: the creeping crawling chaos will return.).
20:25:42 <zzo38> Some users could perhaps use programs such as Stylish and GreaseMonkey to alter it on their own computer if they want to do
20:30:13 -!- S_Gautam has joined.
21:13:31 -!- sebbu2 has joined.
21:13:57 -!- Gibheer23 has joined.
21:14:49 -!- Gibheer23 has quit (K-Lined).
21:17:03 -!- sebbu has quit (Ping timeout: 252 seconds).
21:47:14 <zzo38> Do you know how to address a ARRL radiogram if the intended recipient is not expected to be at home?
21:51:32 <wob_jonas> zzo38: yes, that's what I did
21:52:03 <wob_jonas> zzo38: in https://scifi.meta.stackexchange.com/q/12100/4918 I share a user-style that you can use in your browser to regain one of those lost features,
21:53:03 <wob_jonas> zzo38: and in https://scifi.meta.stackexchange.com/q/12103/4918 (cross-posted to https://scifi.meta.stackexchange.com/a/12102/4918 ) I explain how the new design is good for the community because it will allow some users to join,
21:53:42 <wob_jonas> specifically I argue that people who are using large zoom in browser but no screen reader because of one of various vision problems will now be able to use the site.
21:54:14 <wob_jonas> This is the part that some new browser features have made possible, like the @media thing and the grid and flex layouts.
22:06:33 <wob_jonas> zzo38: ARRL radiogram => is that a HAM thing? I don't know anything about HAM, and I don't recall anyone on this channel discussing it.
22:08:22 <zzo38> Yes it is a HAM thing, I think.
22:08:39 <shachaf> zzhello38
22:08:43 <shachaf> Oops.
22:08:47 <shachaf> Gotta break that habit.
22:09:43 <zzo38> (I do not need to post such a message at this time, but still would like to know how such thing would be work)
22:09:57 <wob_jonas> hi schachaf
22:10:17 <shachaf> hi wob_njonas
22:11:14 <zzo38> (I am also not sure how someone who is not a amateur radio operator would post such a message. I do know the format, although some fields will have to be filled in by the radio operator)
22:12:06 <wob_jonas> zzo38: are you sure you even need that sort of message?
22:12:47 <shachaf> So are lvalues a good idea?
22:12:55 <shachaf> What languages have something else?
22:13:03 <wob_jonas> couldn't you use some non-HAM thing, such as some postal service thing like a registered letter, a registered letter with returned receipt of delivery, a telegram, a telegram with a return receipt of delivery, etc?
22:13:07 <shachaf> Other than ML and ALGOL 68 and assembly.
22:13:26 <wob_jonas> shachaf: sorry, I don't have time for that discussion now.
22:13:39 <shachaf> The question was for the channel in this case.
22:13:52 <shachaf> Maybe zzo38 has an opinion.
22:17:25 <zzo38> BLISS needs a . operator to read from the specified address, but for writing you do not use that (unless it is a pointer you want to write through).
22:18:18 <zzo38> In Forth, normally a variable name is a constant which represents the address of the variable, and you then use @ to read and ! to write, although it is also possible to do something more like lvalues in C, with some tricks.
22:19:30 -!- bradcomp has joined.
22:19:42 -!- AnotherTest has quit (Ping timeout: 264 seconds).
22:20:30 <shachaf> Aha.
22:20:51 <shachaf> Is there anything with the convenience of C lvalues but also the simplicit of explicit addresses?
22:21:56 <shachaf> Maybe .X isn't so bad...
22:22:33 <shachaf> Of course, in practice these aren't real addresses becuase they might just refer to registers.
22:22:39 -!- Kelsar16 has joined.
22:23:36 <zzo38> That may be the reasonable reason to have lvalues, I suppose, due to because sometimes they might be registers.
22:25:30 <shachaf> I don't think it's much of a reasonable reason.
22:25:38 <shachaf> Even in C things with lvalues have addresses.
22:25:58 -!- Kelsar16 has quit (Killed (Unit193 (Spam is not permitted on freenode.))).
22:26:00 <shachaf> But as long as you don't use those addresses the compiler is free to keep them in registers. So you could do the same thing here.
22:28:27 <wob_jonas> zzo38: Some implementations of MIX also use base 100 (although it includes the instruction to display the numbers anyways) => the original intention for that was decimal arithmetic, but you can actually easiliy implement that in binary arithmetic with a 7-bit binary byte backing it too
22:29:50 <wob_jonas> zzo38: the NUM and CHR instructions only need to divide by a *constant*, that can actually be implemented very efficiently at the gate level, or at software level on a modern computer with multiplication, and compilers do the latter routinely. it's even easier for an unsigned number like this is.
22:30:33 <wob_jonas> This took me a while to understand. When I read that the NUM and CHAR instructions take so few cycles, I was surprised because I thought they'd have to do like ten divisions on a base-64 MIX. They don't.
22:30:43 <wob_jonas> They can really be that fast in a base-64 or base-anything MIX.
22:32:30 <zzo38> MIXPC always uses one 8-bit byte to store one MIX byte, regardless of what base is used for the MIX program (it supports any number from 64 to 100 for the base)
22:32:54 <wob_jonas> zzo38: regardless
22:33:08 <wob_jonas> zzo38: 7 bits are practical because then you can put the 63 bits of a word in a 64-bit integer
22:33:12 <zzo38> shachaf: Ah, OK, although C also has a "register" command (although optimizing compilers will decide itself to use a register or not instead)
22:33:14 <wob_jonas> no wait
22:33:18 <wob_jonas> that's with 6 bits per byte
22:33:25 <wob_jonas> or ... um, I can't count today
22:33:42 <wob_jonas> a 32-bit integer, 31 of its bits for 5 bytes of 6 bits each
22:33:47 <wob_jonas> and 1 byte of sign
22:33:51 <wob_jonas> sorry, that was dumb of me
22:34:28 <wob_jonas> you can use the remaining bit as a warning for cells that have active IO in them, to warn about IO conflicts, or a warning for debugging tracepoints, or anything like that
22:34:49 <wob_jonas> basically a warning that the simulator has to look up in an external table whatever the hell is special about that cell and what it has to do when you access it
22:35:06 <zzo38> Yes, it can be done that way.
22:35:15 <zzo38> I wanted to implement MIX in MMIX some time, too
22:35:36 <wob_jonas> zzo38: nice
22:36:09 <shachaf> zzo38: I don't think "register" affects the semantics of a program, though?
22:36:40 <esowiki> [[User talk:Qwertyu63]] https://esolangs.org/w/index.php?diff=57717&oldid=52302 * Ais523 * (+376) /* Unused image */ new section
22:37:28 <zzo38> shachaf: I think you are right it does not (actually, I don't know if it interacts with inline assembly code in any way; well, it might depend on the compiler)
22:44:15 <shachaf> zzo38: SML works the same way as BLISS, I think.
22:44:20 <shachaf> Is this way of programming annoying?
22:44:43 <zzo38> I do not think so, but I don't know
22:48:08 <shachaf> I guess you have an assignment operator like = : (Ref A,A) -> ()
22:48:56 -!- bradcomp has quit (Ping timeout: 260 seconds).
22:50:38 <zzo38> Yes, I would suppose so (or to have like in C where the value is also the result value from the operator)
22:50:57 <shachaf> Sure, that's an option.
22:51:12 <wob_jonas> `? ance
22:51:14 <HackEso> Spelling of -ance/-ence words: advance, science, conference, experience, finance, insurance, licence, performance, reference, assistance, balance, defence, difference, distance, evidence, acceptance, appliance, audience, compliance, importance, influence, instance, intelligence, maintenance, preference, presence, sentence, sequence, substance, violence, absence, accordance, alliance, appearance, assurance, attendance, circumstance, clearance, confidence, c
22:51:22 <wob_jonas> `2 ? ance
22:51:23 <HackEso> 2/2:e, consequence, entrance, excellence, existence, fragrance, governance, guidance, independence, offence, refinance, residence, resistance, romance.
22:58:14 <wob_jonas> base 100 is sort of a thing on a lot of byte-size cpus with support for a bcd-adjust instruction => also the x86_16, and technically still possible on x86_32, but no longer on x86_64
22:59:30 <wob_jonas> x86_16 has SIX decimal adjust instructions, four for one digit in a byte, two for two digits in a byte, for which there's a special flag storing the carry from bit 3 to bit 4 in byte additions and subtractions
22:59:51 <wob_jonas> x86_32 inherited these, but by the time x86_32 got popular, people no longer used them much I think
23:00:04 <wob_jonas> also the 8087 has a decimal float format
23:13:12 -!- arseniiv has quit (Ping timeout: 252 seconds).
23:25:04 <wob_jonas> shachaf: re "they're going to have to do the thing with the thing",
23:25:12 <wob_jonas> only just read OOTS #1141, I was so busy. Now I see why some people were so excited about the current OOTS storyline. Some of them effectively guessed the ending of #1141 a few strips before. And someone asked exactly about whether that statement in the last but one panel was true. I thought it wasn't. It is, or so the guy in this strip claims.
23:25:37 <wob_jonas> s/ only just/I&/
23:26:25 <wob_jonas> shachaf: I don't understand what thing you say they'll have to do
23:26:52 <shachaf> "the thing" = the dark one
23:26:57 <shachaf> the second thing
23:27:02 <wob_jonas> yes
23:27:08 <wob_jonas> that part is clear
23:27:25 <wob_jonas> either him or the one they don't speak of
23:28:31 <wob_jonas> but what's the first thing? reinforce?
23:28:56 <wob_jonas> tear down this one and make a new with him?
23:29:21 <wob_jonas> I really can't guess
23:29:42 <wob_jonas> can you give a hint of what you're thinking?
23:30:25 <wob_jonas> without spoilers, there are other o fans here, or in priv
23:34:15 <shachaf> Which one they don't speak of?
23:34:22 <shachaf> I don't know if I really had anything coherent in mind.
23:34:45 <wob_jonas> shachaf: also, is his ity supposed to be the shortest wavelength one, or are they actually more like equal strength and combining to a more powerful whole, like the five colors of M:tG (but without the different moralities implied), or like Captain Planet from the five rings, or
23:35:37 <wob_jonas> even guaranteed to be symmetric by some physics invariance law like the three colors of quarks, or perhaps were originally symmetric but the field of the one they don't speak of caused spontaneous symmetry breaking by banning all the green ity?
23:36:02 <wob_jonas> shachaf: the gods don't speak of the tangly one to mortals. the guy said that a few strips ago.
23:37:12 <shachaf> I don't know why you expect quarks or even wavelengths to exist in this world.
23:37:33 <wob_jonas> shachaf: #1137 seventh panel
23:38:09 <wob_jonas> shachaf: not quarks specifically, I'm just asking if the ities are equal, or were equal until the tangly one killed them, or if they were originally ranked by strength
23:38:41 <wob_jonas> the quark colors is just a stupid analogy, I only said that because it's clear that these aren't really about the visible colors either, just like the M:tG colors aren't either
23:38:56 <wob_jonas> the colors are just a convenient representation for the comic strip
23:39:41 <wob_jonas> you know, as in "pretty pictures" #13
23:40:16 <wob_jonas> the guy is also doing the pretty pictures thing for plot exposition in #1141
23:40:51 <wob_jonas> I'm not saying that he's using the same bard ability, just that he also creates pretty pictures for plot exposition
23:42:03 <wob_jonas> and, you know, the dark one has different origins, so maybe his ity is different
23:42:26 <wob_jonas> even if the original four ities were equal, this one could be different
23:42:54 <wob_jonas> the analogy with the purple color Mark says he was trying for M:tG Future Sight is hard to avoid too
23:43:24 <wob_jonas> ah no
23:43:28 <wob_jonas> it's probably not that
23:43:41 <wob_jonas> http://www.giantitp.com/forums/showsinglepost.php?p=23383311 is a more plausible explanation of the purple ity
23:44:25 <wob_jonas> still, the spontaneous symmetry breaking analogy is real
23:44:38 <wob_jonas> I don't think the tangly one actually cared which color he killed
23:44:40 <wob_jonas> it was random
23:45:13 <wob_jonas> it really sounds like the lack of green ity was like spontanous symmetry breaking in physics
23:45:30 <wob_jonas> because it's hard to believe that the four itites weren't equal, regardless what the fifth is and whether there could be more than five
23:52:15 -!- S_Gautam has quit (Quit: Connection closed for inactivity).
23:58:38 <wob_jonas> Oh! Another SMBC that plays on the same thing as xkcd. http://www.smbc-comics.com/comic/vas https://www.xkcd.com/644/
←2018-09-21 2018-09-22 2018-09-23→ ↑2018 ↑all