←2019-06-21 2019-06-22 2019-06-23→ ↑2019 ↑all
00:07:25 <ski> conversion ?
00:11:04 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:12:20 <shachaf> ski: Presumably this is what the ! operator I mentioned the other day does.
00:14:35 <zzo38> I thought though it could be done automatically so you do not need a operator for that, in this case.
00:15:23 <shachaf> That might be a good idea but I'm reluctant to have automatic "casting" between types that happen to have fields with the same name. I don't know.
00:16:20 <shachaf> Another thing: An "overloaded" function is one that dispatches at compiletime based on the struct literal it gets.
00:16:49 <zzo38> Maybe you are correct, but still I think in the case described like f(g(x)) the type is presumably already correct at the source language level, but a conversion may be needed when compiling it into a LLVM code or native code or however it is done
00:16:51 <shachaf> Another thing: The same literals can perhaps be used for matching as well as construction.
00:17:21 <shachaf> Oh, well, for code generation you can just do whatever.
00:19:19 <shachaf> I'm not quite sure how sum types should work (if they exist at all -- should they?). There are a few ways to do it.
00:34:12 <zzo38> What program language are you trying to make?
00:34:51 <shachaf> I don't know yet.
00:46:44 -!- limbo__ has changed nick to limbo_.
01:03:49 <esowiki> [[Iota]] M https://esolangs.org/w/index.php?diff=63600&oldid=63599 * A * (+53)
01:04:21 <esowiki> [[Iota]] M https://esolangs.org/w/index.php?diff=63601&oldid=63600 * A * (+21) /* External resources */
01:40:41 <int-e> shachaf: so... MD5 differential paths are tricky
01:48:55 <int-e> shachaf: One element is this: For unsigned 32 bit integers d, x, y, if you know d = x - y but neither x nor y, what possible values can (x <<< s) - (y <<< s) have, where <<< is bit rotation and 0 < s < 32 is fixed?
02:09:25 <shachaf> Seems like not very many?
02:10:09 <shachaf> That's (x <<< s) + ((x + ~d) <<< s) + 1, I guess?
02:15:42 <int-e> (x <<< s) + ((~x + d) <<< s) + 1 ?
02:15:49 <int-e> but not sure how that helps
02:16:15 <int-e> (And no, there aren't that many possible values.)
02:16:47 <shachaf> Er, yes, that one.
02:18:55 -!- uplime has quit (Remote host closed the connection).
02:21:33 <int-e> shachaf: there are up to four different values: http://paste.debian.net/1088823/
02:23:10 -!- uplime has joined.
02:26:27 <shachaf> That seems convincing.
02:51:06 <zzo38> Is there a command in Linux (or in vim) to sort blocks separated by blank lines by the first line of the block?
02:56:00 -!- b_jonas has quit (Ping timeout: 248 seconds).
02:56:55 -!- b_jonas has joined.
03:19:59 -!- MDude has quit (Quit: Going offline, see ya! (www.adiirc.com)).
03:20:02 -!- Guest5238 has quit (Changing host).
03:20:02 -!- Guest5238 has joined.
03:20:04 -!- Guest5238 has changed nick to lizzie.
03:26:48 -!- nfd9001 has joined.
03:28:20 <zzo38> I found a way to do it: first using s/^$/^@/ (the ^@ must be an actual null character, not the two symbols ^@) and then sort -fz and then s/^@// to get rid of the null characters.
03:29:20 -!- nfd has quit (Ping timeout: 244 seconds).
03:52:22 -!- dingwat has quit (Ping timeout: 252 seconds).
03:56:38 -!- dingwat has joined.
03:57:48 -!- imode has quit (Ping timeout: 268 seconds).
04:06:23 -!- dingwat has quit (Ping timeout: 250 seconds).
04:08:04 -!- dingwat has joined.
04:22:52 -!- FreeFull has quit.
04:50:05 -!- xkapastel has quit (Quit: Connection closed for inactivity).
04:51:25 <Sgeo> I think I understand that convert code better. The magnetic vector is somehow tilted alongside the headset, and the rotations effectively show the real direction of the vector
04:51:50 <Sgeo> I still don't know what the vector is supposed to mean, though? Direction the headset is pointed except tilted?
04:52:00 <Sgeo> *relative to the pitch&roll?
04:59:10 -!- Frater_EST has joined.
05:03:26 <shachaf> What? Who?
05:03:35 <zzo38> Do you like the idea of "register forwarding format" in a format like SSA with basic blocks? That is an alternative to using phi nodes.
05:04:29 <shachaf> What is this idea?
05:04:35 <kmc> if it's what I think it is, then yes
05:04:41 <kmc> and I started making a SSA backend using that format
05:07:12 <Sgeo> https://gist.github.com/Sgeo/4c58d69fa4375e4f2f3592e1f9c6eb0e
05:07:29 <Sgeo> I should sleepp
05:11:28 <shachaf> I like the form of SSA described in https://www.cs.cmu.edu/~fp/courses/15411-f13/lectures/06-ssa.pdf
05:11:33 <kmc> zzo38: is it the one where basic blocks are like functions that you tail-call?
05:11:34 <shachaf> And also https://www.cs.princeton.edu/~appel/papers/ssafun.pdf
05:11:44 <shachaf> And also by kmc just now.
05:12:01 <kmc> yeah, I think that is a much more elegant way to represent SSA than phi nodes
05:13:09 <shachaf> I agree.
05:13:16 <kmc> :)
05:13:34 <kmc> i'm having a good day, I hope you are having a good day too
05:13:37 <kmc> happy solstice
05:15:59 -!- imode has joined.
05:20:27 -!- Lord_of_Life has quit (Ping timeout: 245 seconds).
05:22:03 -!- Lord_of_Life has joined.
05:35:10 <zzo38> kmc: Yes, it is like that
05:37:44 <shachaf> good days are tg
05:45:45 <zzo38> In northern hemisphere this will be summer solstice. Did you figure out what time of day? I tried with Swiss Ephemeris it seem to be at approximately 15:54 UTC
05:45:57 <zzo38> They also call summer solstice as "Litha"
07:01:04 <ski> (hm, i've seen that "`goto's with parameters to parameterized basic blocks" idea in Andrew W. Appel's book "Modern Compiler Implementation in (ML|Java|C)" in 1998 at <https://www.cs.princeton.edu/~appel/modern/>)
07:04:00 <shachaf> Presumably the same kind of thing as the Appel paper I linked?
07:09:42 * ski . o O ( "Compiling without continuations" by Luke Maurer,Paul Downen,Zena M. Ariola,Simon Peyton Jones in 2016-11-17 at <https://www.microsoft.com/en-us/research/wp-content/uploads/2016/11/compiling-without-continuations.pdf> )
07:10:37 <ski> (cf. title of book "Compiling with Continuations" by Andrew W. Appel in 1992 at <https://www.cs.princeton.edu/~appel/papers/cwc.html>)
07:10:56 -!- uplime has changed nick to lime[_].
07:12:16 * ski . o O ( "The anatomy of a loop: A story of scope and control" by Olin Shivers in 2005-09 at <https://www.ccs.neu.edu/home/shivers/citations.html#loop>,<https://www.ccs.neu.edu/home/shivers/papers/loop.p(s|df)> )
07:12:22 <ski> shachaf : yes
07:14:54 -!- imode has quit (Ping timeout: 258 seconds).
07:19:12 <ski> (thinking of the "Binders (control-)Dominate (uses /) References" scope idea)
07:24:52 -!- Frater_EST has left.
07:51:24 -!- AnotherTest has joined.
08:59:20 <b_jonas> zzo38: what if there's a custom structure for the argument suite of each function you define, but the only way to construct an instance of such a struct is implicitly from the arguments when you call that function, and the only way to deconstruct it is when the function matches it to its formal parameter list
09:32:07 -!- zzo38 has quit (Ping timeout: 245 seconds).
09:34:44 <ski> and similarly for the results of a function ?
09:37:50 <b_jonas> no, functions have just one result
09:37:55 <b_jonas> plus side effects
09:40:46 <ski> why just one result ?
09:42:29 <b_jonas> so that you can write proper tree-shaped expressions, with function calls where you want a value
09:42:52 <b_jonas> rather than having to assign each return value to a temporary variable like you do in prolog
09:48:34 <b_jonas> if you want two results, then make the function save the second one through a writable reference where the caller allocates space, so you can still use the first result in an expression. that makes the code more readable.
09:48:50 <b_jonas> that that's a good design is proven by time (sorry, bad joke)
09:49:38 <b_jonas> time has two results, so you pass a pointer to it for where it should save the second result
09:49:48 <b_jonas> but you can still call time in an expression and use the first result rightaway
10:12:58 <ski> i'm not sure an out-parameter of a function makes code more readable
10:14:12 <ski> and i'm not sure i see why wanting to allow nested trees, for single (unnamed) result, should preclude also allow multiple results
10:14:32 <ski> hmm .. perhaps one should allow an expression to bind variables
10:34:40 -!- moei has quit (Ping timeout: 246 seconds).
10:35:47 <b_jonas> yes, I know the problem with passing the output address as an argument is that (unless you're ais523 with his fancy linear type systems) you can't prove with the type system that the function will assign to that address,
10:36:04 <b_jonas> so sometimes you want a struct return value instead if you really want to be sure that the output is valid
11:28:29 <ski> i think something like Mercury's instantiation checking system could be used
11:29:38 <ski> (i suppose i was more thinking about symmetry, and about ergonomics, though)
11:33:28 <b_jonas> what Mercury?
11:38:18 <ski> a logic programming language, with a modern static type system, similar to the MLs or Haskell, and with a static mode, instantiation and determinism checker
11:39:56 <ski> it keeps track of which parts of data structures are instantiated (you may think "initialized"), has support for input and output parameters of "procedures" (really predicates, which can be thought of as procedures overloaded on in&out parameter patterns)
11:41:20 <b_jonas> ski: what's the relation to the Oz logic programming language?
11:44:29 <ski> not related, apart from both being LPLs ?
11:57:15 <b_jonas> ok
12:13:20 -!- Frater_EST has joined.
12:13:30 -!- Frater_EST has left.
12:27:43 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
12:40:02 -!- Lord_of_Life has joined.
12:59:51 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
13:03:15 -!- MDude has joined.
13:04:19 -!- Lord_of_Life has joined.
13:04:23 -!- xkapastel has joined.
14:16:13 <b_jonas> my hon. and learned friend fungot, when does the SGDQ of this year start?
14:16:13 <fungot> b_jonas: mr president, and that is what we really wanted to help, as well as strengthening the links between the west and who have actually sought to lever out manufacturer responsibility and environmental protection are concerned.
14:16:46 <b_jonas> yeah, typical politician, never gives precise dates
14:16:55 <b_jonas> just weasel phrases about how much he cares
14:29:44 <int-e> real soon now
14:40:44 <b_jonas> my hon. and learned friend fungot, how many rarities does the Yu Gi Oh trading card game have?
14:40:44 <fungot> b_jonas: mr president, mr graefe zu baringdorf may very well be people who are its victims in eu states as low as they are worded. there are risks, undoubtedly, by the events of recent weeks, but today i am again disappointed with the sluggish and begrudging progress to date in other respects of relevance to safety. but having said that, and with it air pollution.
14:42:36 <b_jonas> mind you, M:tG has many different rarities too, it just doesn't give names to most of them.
14:43:28 <b_jonas> there are expansions in which all packs have one of a certain set of cards, such as double-sided,
14:43:29 -!- atslash has quit (Quit: This computer has gone to sleep).
14:43:45 <b_jonas> expansions with extra cards that don't appear in packs,
14:44:28 <b_jonas> cards with two or three or four different art variants at the same rarity of the same set, and even that trick with limited Islands
14:44:46 <b_jonas> un-sets also do some crazy stuff
14:48:09 <b_jonas> also cards that are available in theme decks only, either not at all from boosters or less easily from boosters, such as Sol Ring reprinted in Commander sets, or Snow Islands reprinted in Coldsnap theme decks
14:54:14 <b_jonas> that reminds me, there are now two permanent cards with {S} in their mana cost. let me check if they remembered to patch the offering rules to account for that.
14:54:45 <b_jonas> yes they did
14:55:10 <b_jonas> ``` grep -E "^117\.7g" share/mtg/rules.txt
14:55:11 <HackEso> 117.7g If a cost is reduced by an amount of mana represented by one or more snow mana symbols, the cost is reduced by that much generic mana.
14:57:06 * int-e exiles b_jonas to a snow-covered island.
15:09:41 -!- Sgeo_ has joined.
15:12:32 -!- Sgeo has quit (Ping timeout: 248 seconds).
15:34:02 <esowiki> [[Celsee]] N https://esolangs.org/w/index.php?oldid=63602 * FAKE1007 * (+2330) Created page with "{{infobox proglang |name=Celsee |paradigms=Imperative |author=[https://esolangs.org/wiki/User:FAKE1007 FAKE1007] |year=[[:Category:2019|2019]] |memsys=:Category:Queue-based|..."
15:38:02 <esowiki> [[Language list]] M https://esolangs.org/w/index.php?diff=63603&oldid=63586 * FAKE1007 * (+13)
15:47:41 <esowiki> [[Celsee]] https://esolangs.org/w/index.php?diff=63604&oldid=63602 * FAKE1007 * (-2)
16:17:57 -!- tromp has quit (Remote host closed the connection).
16:35:29 -!- tromp has joined.
16:56:55 <b_jonas> A single precision floating point number is one that uses the same number of significant digits in the mantissa regardless what the exponent is.
16:57:14 <b_jonas> A multiple precision floating point number can trade off space between the mantissa and the exponent.
17:05:06 -!- tromp has quit (Remote host closed the connection).
17:05:32 -!- FreeFull has joined.
17:06:48 -!- john_metcalf has joined.
17:09:25 -!- zzo38 has joined.
17:11:49 <b_jonas> oren: In less common japanese delimiter punctuation characters, I know you already have "・" and "〜" and " ", but can you also add "゠" to your font?
17:13:00 <zzo38> If some sets do not have random packs then I should think, rarity is not applicable.
17:18:04 <b_jonas> zzo38: sort of. the rarity as printed on the cards isn't quite applicable, but in some cases it's still a helpful guide: cards in From the Valut products are printed with all mythic expansion symbol, which makes sense because they're of a low print run;
17:18:28 <b_jonas> extra cards in core set are printed with a common exp symbol, which makes sense becuase they tend to be cheap and in enough supply
17:20:46 <zzo38> Yes, but it is not applicable to draft/sealed formats, usually. (If you play a cube, then you can put whatever cards you want, so again rarity is not applicable. If you define your own set to use for a draft/sealed, whether it is with official cards or custom cards or both, then you can define your own rarities, too.)
17:21:33 <b_jonas> sure, in draft/sealed formats you usually get cards from a booster packs
17:21:46 <b_jonas> so there the rarity symbols are usually appropriate
17:21:49 <b_jonas> with some stupid exceptions
17:24:17 <b_jonas> so there's a big range of variance within rarities, but in general for typical cards rarities are somewhat indicative
17:24:42 <b_jonas> the stupid exceptions could be handled better, but having rarities is better than not having the rarity printed on the card like old sets do
17:26:24 <zzo38> I think a database should be having another field for the effective rarities from the printed rarities; if it cannot appear in random packs at all then "hidden" rarity is specified, for example. You can then use this data to make up random packs by computer, too, as well as information for strategy for drafts even if you are not playing on the computer.
17:30:02 -!- MDude has quit (Ping timeout: 245 seconds).
17:30:26 <b_jonas> zzo38: but that wouldn't be enough. the prices depend on demand too, not just supply, which is why say Black Lotus is more expensive than Mox Emerald even though they were printed in the same numbers originally
17:31:20 <b_jonas> and it's not just with such old cards, although obviously newer cards won't be as expensive as those
17:31:47 <b_jonas> but still, cards that are printed only as rares in the same one recent expert expension can vary in value
17:31:58 <b_jonas> because one is one that lots of people want, and another is one that few people want
17:32:03 <b_jonas> and that happens with uncommons too
17:32:32 <b_jonas> eventually it's just a market where you only know the price if you buy the card
17:32:48 <b_jonas> and maybe not even then
17:34:18 <zzo38> OK, although I am not concerned about prices, but only the distribution in random packs of a specific set.
17:36:28 -!- tromp has joined.
17:36:58 <b_jonas> for old sets, you just have double and triple and quadruple commons and uncommons and rares, those you can mostly guess from the number of different art
17:37:33 <b_jonas> in modern sets, when they differ from the usual recipee of uniform probabilities in three rarities, plus mythics replacing the rare sometimes, then it's something tricky that isn't just a card doubled
17:37:44 -!- Melvar has quit (Quit: WeeChat 2.4).
17:38:05 -!- tromp has quit (Remote host closed the connection).
17:38:07 <b_jonas> it's crazy stuff like every pack having one double-faced card but in varying rarities, or pairs of cards sometimes distributed together, or even more crazy stuff
17:38:22 <b_jonas> yeah, it's actually four rarities becuse there's also basic lands which are sometimes replaced by other cards in sets
17:38:31 <zzo38> If I can know what all of that stuff is, then perhaps a format can be done for that.
17:42:07 <b_jonas> sadly I don't know what all that stuff is
17:42:13 <b_jonas> heck, I don't even know how it works in the time spiral block
17:42:27 <b_jonas> I don't care too much though, because I just play constructed
17:42:32 <b_jonas> so pack distributions don't matter much
17:42:33 <esowiki> [[Celsee]] https://esolangs.org/w/index.php?diff=63605&oldid=63604 * FAKE1007 * (+188)
17:42:44 <b_jonas> it's just that in general, rare cards are more expensive and common cards are more cheap
17:43:04 <b_jonas> like I said it's not totally uniform, there are bad rares cheaper than good uncommons
17:43:23 -!- tromp has joined.
17:45:48 <zzo38> In a SQL database, one table could be indexed by Multiverse ID, and then references set, card (indexed by name, perhaps), and then specifies printed rarity, effective rarity, and printed text.
17:47:44 <zzo38> If needed, the table of sets could also include the SQL codes for a random pack; SQLite has no built-in way to execute queries using that, but it is possible to do by the use of virtual tables, or alternatively a view could be used with several parts, and one part is selected by the set table
17:57:17 <esowiki> [[Celsee]] https://esolangs.org/w/index.php?diff=63606&oldid=63605 * FAKE1007 * (+273) /* Examples */
17:58:02 <esowiki> [[Celsee]] https://esolangs.org/w/index.php?diff=63607&oldid=63606 * FAKE1007 * (+54) /* Examples */
17:59:49 <esowiki> [[Celsee]] https://esolangs.org/w/index.php?diff=63608&oldid=63607 * FAKE1007 * (+2) /* 2 numbers kills */
18:00:44 <esowiki> [[Celsee]] https://esolangs.org/w/index.php?diff=63609&oldid=63608 * FAKE1007 * (-28) /* 2 numbers kills */
18:04:22 <esowiki> [[Celsee]] https://esolangs.org/w/index.php?diff=63610&oldid=63609 * FAKE1007 * (+100)
18:12:14 -!- moei has joined.
18:26:57 <b_jonas> `welcome
18:26:58 <HackEso> Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <https://esolangs.org/>. (For the other kind of esoterica, try #esoteric on EFnet or DALnet.)
18:27:00 <b_jonas> no wait
18:27:51 <b_jonas> ``` echo $IRC_TARGET
18:27:52 <HackEso> ​#esoteric
18:31:13 -!- Melvar has joined.
18:38:40 -!- heroux has quit (Ping timeout: 244 seconds).
18:42:26 -!- imode has joined.
18:45:28 -!- MDude has joined.
18:54:16 <zzo38> Now in this game, we have to protect everyone who is being attacked by their kingdom, including the goblins, elves, kobolds, illithids, dwarves, and also the human priests, too.
19:06:39 -!- Phantom_Hoover has joined.
19:06:39 -!- Phantom_Hoover has quit (Changing host).
19:06:39 -!- Phantom_Hoover has joined.
19:06:58 <zzo38> Maybe SQLite should have a function sqlite3_str*sqlite3_context_str(sqlite3_context*) which can sometimes be convenient, and might also sometimes make it a bit more efficient if the user function is called on the right of a SQL || operator
19:09:14 <zzo38> (Maybe also a new flag is needed for sqlite3_create_function() so that it can generate the proper VDBE code to deal with sqlite3_context_str().)
19:09:31 -!- atslash has joined.
19:12:14 -!- lime[_] has changed nick to uplime.
19:32:42 <zzo38> One idea I have that could be used in a compiler in a programming language is something like "base zero floating numbers" at compile time; it consists of X and Y (both integers, except X must be nonzero), and represents the number X times zero to the power of Y. If used in a context where a integer is expected (including any number used at run time), then it is automatically converted, resulting in a compile error if Y is negative.
19:33:43 <b_jonas> what...
19:33:54 <b_jonas> what is the use of that?
19:36:31 <zzo38> For example if it has a sizeof operator like C, then if you make sizeof a zero length array, or sizeof a array of elements all having a size of zero, then it it will be able to multiply by zero without forgetting the original numbers. There may be other uses too, maybe.
19:37:46 <b_jonas> so you just want compile-time types, like you can name and manipulate in C++ with templates?
19:38:40 -!- imode has quit (Ping timeout: 248 seconds).
19:39:21 <zzo38> I don't know how that works in C++, but that doesn't seem quite same because then presumably it will not work with ordinary numbers used in compile time calculations.
19:43:33 -!- atslash has quit (Quit: This computer has gone to sleep).
19:44:00 <b_jonas> you can use ordinary numbers, at least fixed size integers
19:45:29 <zzo38> But then what if you use sizeof, I would expect it would not use your own template then, isn't it?
19:45:45 <b_jonas> sizeof on what?
19:45:58 <zzo38> On anything
19:46:14 <b_jonas> sizeof tells how many bytes the compiler would use for an object type
19:46:44 <b_jonas> it's always a compile-time constant, because you can't have types vary in runtime
19:46:50 <b_jonas> at least not the compile-time types
19:46:57 <b_jonas> the dynamic types can vary, but sizeof doesn't know about that
19:47:12 <b_jonas> it only knows the type of expressions and variables and such like
19:47:35 <zzo38> Yes, but it won't work if you try to divide by zero by compile time, in case the size is zero.
19:47:48 <b_jonas> yes, if you try to divide by zero that's an error
19:48:04 <b_jonas> but you can get the type of an element of an array type at compile time
19:48:16 <b_jonas> like sizeof(a[0]) where a is an array
19:48:18 <b_jonas> that works in C too
19:48:31 <b_jonas> you can also get the size of a struct member, like sizeof(a.x) and sizeof(a.y)
19:48:40 <b_jonas> you can't compute those from the size of a
19:49:03 <zzo38> Yes, but that doesn't work if the element size or array size are zero (which is possible in GNU C, but I think not in C++)
19:49:44 <b_jonas> you can also do that if you only have a type, not a value of that type, as in what sizeof(*(T *)0) would do if it was allowed
19:50:19 <b_jonas> zzo38: yes, no types have zero size, and you can't have zero sized built-in arrays
19:50:41 <b_jonas> you could have a custom array type that supports arrays of length zero, but it won't have a sizeof 0 either
19:51:12 <b_jonas> you could make it so it has sizeof of 1, by not storing an actual array if the length is 0
19:52:13 <b_jonas> rust allows you to have actual 0 size types
19:52:23 <b_jonas> it's too late to allow them in C++, breaks some existing programs
19:52:39 <b_jonas> rust allows to have both 0 sized types and 0 length arrays
19:52:54 <zzo38> Yes, and so does GNU C also allows it.
19:52:54 <b_jonas> it even has a few rare special cases for how 0 sized types are special
19:53:20 <zzo38> Do those special cases allow you to ever divide by zero?
19:53:36 <b_jonas> yes, GNU C started to allow them before C implementations got close to each other with standardization, so there are programs using GNU C that depend on zero-length arrays
19:53:57 <b_jonas> so it's best not to change that either now, even if it makes the rules a bit too complicated
19:54:11 <b_jonas> now you have to use arrays of _negative_ size rather than 0 size if you want a guaranteed assertion error in C
19:54:14 <b_jonas> compile time
19:54:26 <b_jonas> zzo38: no, it doesn't allow you to divide integers by zero
19:54:50 <zzo38> Yes, I sometimes use zero-length arrays, mostly at the end of structs, but not always
19:56:19 <zzo38> It is possible to divide by zero in a "wheel", but what I defined above is not a wheel; although multiplication and division always work, addition and subtraction will not work if the two Y parts are different and at least one of them is negative.
20:00:57 <b_jonas> If you want to have a pair of numbers and special arithmetic on them, you could define such a type, and manipulate them in compile time in recent C++ or in future rust
20:01:38 <b_jonas> and of course you can always manipulate them in runtime in most languages
20:06:17 <zzo38> A notation like [x,y] can be used to define it (not the actual syntax in the programming language though); 0 means [1,1] but otherwise a literal x means [x,0]; [a,z]+[b,z] is [a+b,z]; [a,z]-[b,z] is [a-b,z]; [a,b]*[c,d] is [a*c,b+d]; [a,b]/[c,d] is [a/c,b-d]l in other cases of + and - you must first convert to a ordinary integer, and then convert back afterward. x-x is always [1,1].
20:06:36 <b_jonas> zzo38: if you want pairs of numbers where one number can vary in runtime but the other only in compile time, that's been done in C++ for various things including tracking units of measure at compile time, or tracking exponents for fixed point numbers, or tracking widths etc
20:06:58 <zzo38> If a/c rounds to zero in [a,b]/[c,d] then you also must convert to a integer, I suppose, to figure out the result
20:07:06 <zzo38> This is not a wheel; what is it called?
20:07:11 <b_jonas> you can also have pairs of numbers completely at compile time
20:08:23 <zzo38> (If the first component is a fraction rather than a integer, then division is always defined.)
20:34:35 <esowiki> [[Special:Log/newusers]] create * Tux1 * New user account
20:38:20 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=63611&oldid=63575 * Tux1 * (+358)
20:52:02 <ski> zzo38 : so `Y = 0' is allowed ?
20:52:20 <ski> b_jonas : VLAs ?
20:52:30 <ski> zzo38 : "wheel" ?
20:54:02 <ski> b_jonas : reminds me of partially static, partially dynamic integers, where the remainder wrt some specific (static) modulus `m' is static, but the quotient is dynamic
20:54:04 <zzo38> ski: Yes, for ordinary nonzero numbers, it should be Y=0
20:54:45 <zzo38> ski: "Wheel" is described on Wikipedia, at "Wheel theory"
20:58:48 <ski> (see e.g. "Automatic Program Specialization for Interactive Media" (diss.) by Scott Draves at <http://draves.org/cmu-research/diss/main.html>, talking about how to automatically specialize a generic algorithm on e.g. RGB data to an efficient version that takes word bit size into account)
20:58:55 <ski> (in 1997)
20:59:25 <kmc> C++17 constexpr is probably powerful enough that you could make a type that represents the bizarre form of integers zzo38 described
20:59:51 <ski> zzo38, mhm
21:00:21 <kmc> data ZZOInt = NormalInt Int | ZeroPower Nat?
21:00:41 <ski> zzo38 : hm, for some reason, your strange "base zero floating numbers" reminds be slightly of dual numbers
21:00:43 <kmc> . o O ( should we allow negative powers of zero? )
21:01:17 <ski> zzo38 : instead of "x-x is always [1,1]", it seems to be you want some equivalence relation ?
21:02:48 <zzo38> kmc: No; that is a sum type but what I meant means always both parts, so like: data ZZOInt = ZZOInt Int Int; (negative powers of zero are specifically allowed too)
21:03:07 <kmc> what does 0^x * 2^y mean
21:03:12 <kmc> also how about powers of 1
21:03:31 <kmc> I suppose you could have a y-dimensional array of x-dimensional arrays of a zst?
21:03:32 <zzo38> Powers of 1 are irrelevant. It is always x * 0^y.
21:04:34 <zzo38> So, 0^x * 2^y still works; if x is positive then the result is zero but it remembers the values of x and 2^y, so that if you divide by 0^x you will recover 2^y.
21:04:35 * ski . o ( rig `b^(|N)' (`b' a natural number), isomorphic to the naturals `|N', when `b > 1' )
21:05:11 * ski doesn't understand "then the result is zero but it remembers ..."
21:06:42 <zzo38> In terms of the components I mentioned, you will have [2^y,x]. If x is positive then it corresponds to the integer zero (but conversion to an integer will be lossy, since that forgets the original numbers), while if x is negative then it does not correspond to any integer, and if x is zero then it corresponds to the integer 2^y.
21:07:07 <b_jonas> aki: you know, it's like homeopathy. you dilute the solution until you underflow its concentration so it comes to contain zero of whatever was solved in, but it still remembers
21:07:16 <b_jonas> s/aki:/ski:/
21:08:01 <zzo38> Yes, it is like homeopathic numbers, I suppose.
21:08:15 <ski> oic
21:08:19 <esowiki> [[Deadfish 2]] https://esolangs.org/w/index.php?diff=63612&oldid=49595 * Tux1 * (-53) Replaced missing github link with personal interpreter link
21:12:19 -!- imode has joined.
21:17:55 -!- budonyc has joined.
21:26:13 <b_jonas> `cat wisdom/XQELEKCTHZVBDBQR
21:26:14 <HackEso> Who told you this?
21:26:16 <b_jonas> `? XQELEKCTHZVBDBQR
21:26:17 <HackEso> XQELEKCTHZVBDBQR? ¯\(°​_o)/¯
21:26:23 <b_jonas> how does this work? is there a special case in wisdom?
21:26:51 <zzo38> I don't know; I suppose you can look it up.
21:27:55 <b_jonas> whoa, wisdom looks strange now
21:28:47 <b_jonas> `wisdom XQEL
21:28:48 <HackEso> XQELEKCTHZVBDBQR//Who told you this?
21:29:03 <b_jonas> oh
21:29:09 <b_jonas> bin/? lowercases its argument
21:29:22 <b_jonas> or something
21:29:26 <b_jonas> I don't really understand what it does
21:33:02 <esowiki> [[Celsee]] https://esolangs.org/w/index.php?diff=63613&oldid=63610 * FAKE1007 * (+7) /* Overview */
21:35:07 <b_jonas> USB is supposed to be stable for up to how long cable length? is 10 meters ok?
21:35:23 <b_jonas> or how about 5 meters?
21:35:55 <b_jonas> I'm wondering if I could lead a USB extension cable from my computer to my bed so I can pause and resume movies with a keyboard in the bed
21:36:51 <b_jonas> though it's not quite clear where I could lead it that doesn't get into the way
21:37:07 <b_jonas> unless it goes all around everything
21:38:03 <zzo38> You could also try to add a IR receiver and put a program to assign the buttons on remote control to the keys, so that the pause button will work, and also whatever other buttons you need it to work; the ones you don't need, you can ignore.
21:38:51 <b_jonas> if it goes all around everything then it need like 10 meters of cable. the more reasonable way would be to just have it go to the left hand side of the desk, and from there go straight but I leave it there only when I want to use it, and roll it up otherwise so I don't trip over it
21:38:59 <b_jonas> that way it would be, let me see
21:39:09 <b_jonas> zzo38: or one of these modern bluetooth keyboards
21:39:34 -!- moei has quit (Quit: Leaving...).
21:39:41 <b_jonas> the more straight way it would need about 6 meters
21:40:05 <b_jonas> a bluetooth keyboard would probably be more reasonable
22:06:42 <kmc> b_jonas: I have some 10 meter USB extensions that work great
22:06:48 <fizzie> I think 10 metres is probably okay.
22:07:03 <kmc> it's an active extension; it has some electronics in the female end
22:07:39 <fizzie> Apparently the USB FAQ says a passive cable can be 5 metres for full-speed devices, and 3 metres for low-speed ones.
22:07:55 <kmc> you can also get boxes that allow 100 meters or more, using Cat5/6 cable
22:08:07 <kmc> I'm not sure about speed but it would be enough for a keyboard certainly
22:08:16 <kmc> wireless keyboard would be the obvious solution though
22:08:20 <b_jonas> fizzie: I don't need full-speed for a keyboard
22:08:25 <kmc> in my experience, everything bluetooth is flaky af
22:08:34 <kmc> and you'll be better off with a keyboard that has a dedicated USB receiver dongle
22:08:52 <int-e> cute... "No innocent party ever does more than 2^64 of anything!"
22:09:09 <b_jonas> kmc: why is that so? can't they just standardize bluetooth so that it just works and you don't need separate dongles for everything?
22:09:12 <fizzie> I had a Microsoft Bluetooth keyboard, and it worked pretty well with my phone. But I think that's about the only good Bluetooth pairing.
22:09:28 <fizzie> (Not that I've tried many.)
22:09:30 <b_jonas> I don't want to use a bluetooth keyboard as primary really
22:09:31 <kmc> b_jonas: yes, and they kept adding complexity so that it could do everything, and now almost nobody can implement it right
22:09:44 <b_jonas> I might want to use a bluetooth mouse though, because for a mouse the cord does pose some mechanical problems in moving it
22:10:14 <zzo38> If you have a television set and computer machine and IR remote control with IMIDI, then you can use IMIDI, but I think none of them do.
22:10:24 <fizzie> The Bluetooth headphones we got at work have been pretty okay. I mean, as far as "work fine for 1-3 flights to MTV a year" goes.
22:10:26 <b_jonas> I don't want a television set
22:10:28 <b_jonas> only a PC
22:10:56 <kmc> I have a full-ish size wireless keyboard/trackpad combo that I use for my HTPC, and a miniature one that I use for digital stuff with ham radio out in the field
22:11:06 <kmc> honestly the former might be better with a mini keyboard too
22:11:12 <fizzie> For your use case, you could probably use a portable computing device that can speak wifi as well.
22:11:29 <kmc> oh to control the HTPC? sure
22:11:33 <kmc> I control mine over VNC sometimes
22:11:35 <zzo38> You would still have a display for the computer, even if it isn't a television set
22:11:51 <kmc> and the ham radio box (raspberry pi based) is also controlled from vnc, if i don't have my laptop with me I use my phone
22:11:58 <kmc> but the hardware keyboard is nicer for typing of course
22:12:22 <b_jonas> currently I have problems with bluetooth, but I'm pretty sure that's because my current mobile phone has a buggy bluetooth implementation
22:12:29 <kmc> b_jonas: see above
22:12:52 <b_jonas> kmc: but I think that's a case of "all phones suck" rather than a case of "bluetooth always sucks"
22:13:04 <kmc> well bluetooth in practice sucks
22:13:12 <b_jonas> possible
22:13:19 <kmc> if the vast majority of implementations are buggy then it calls the whole design into question, no?
22:13:19 <b_jonas> but phones also suck sadly
22:13:24 <kmc> ayway i don't really care
22:13:24 <kmc> yeah :(
22:13:26 <b_jonas> I'll re-evaluate that position in about a year
22:13:30 <fizzie> I had one of these https://www.amazon.com/Microsoft-U6R-00001-Wedge-Mobile-Keyboard/dp/B008OEHPKM and it didn't suck with the less-than-three Android devices I habitually used it with.
22:13:40 <b_jonas> I gave up for some time because I don't want to spend all my free time looking for a good phone
22:13:43 <kmc> today is ARRL Field Day so I could be in a field somewhere making ham radio contacts but I decided to stay home and take acid instead
22:14:00 <fizzie> (After some batteries leaked into it, it started sucking pretty badly, but that's hardly the fault of Bluetooth.)
22:14:31 <kmc> but I did build a spiffy solar chargable battery box for next time https://imgur.com/a/DzmexuZ
22:14:52 <b_jonas> _solar chargable_? wtf
22:15:00 <kmc> yes, I can plug a solar panel into it
22:15:10 <b_jonas> but... why?
22:15:31 <kmc> because it's fun to use radios out in the park or the desert or somewhere there isn't AC power
22:15:36 <kmc> and useful in disasters as well
22:15:46 <kmc> I can also charge my phone, run LED lights, etc
22:15:47 <b_jonas> do you want to take a long journey to somewhere far from civilization where you can't find electric network and want to travel lightweight?
22:16:05 <kmc> well this isn't very lightweight
22:16:09 <kmc> since it has a big lead acid battery in it
22:16:13 <b_jonas> out in the park sure, but you can just carry enough batteries that they last all day
22:16:27 <kmc> it's the principle of the thing!
22:16:40 <kmc> in an emergency, power may not be available for days or weeks
22:16:54 <b_jonas> well for me, I don't like being far from cities for a long time anyway, regardless of baterries
22:16:59 <kmc> ah
22:17:02 <kmc> whereas I love camping
22:17:05 <b_jonas> I want to be able to access other services too, not just the electric grid
22:17:10 <kmc> and have gone out to the middle of nowhere desert for fun many times
22:17:48 <b_jonas> camping is fine, but in a place where there's a bathroom and showers and electric outlets, and a town within two hours of distance
22:17:53 <kmc> also renewable energy is just cool
22:17:56 <kmc> not depending on the grid
22:18:36 <b_jonas> if there's no town, where would I buy fresh vegetables to eat?
22:18:47 <kmc> with this box and a solar panel and a shoulder bag of radio stuff, I can set up anywhere and talk to people around the world with no infrastructure in between us
22:19:07 <kmc> if you don't see why that's cool then whatever, it's not everyone's cup of tea :)
22:19:24 <b_jonas> "anywhere" hehe
22:19:54 <kmc> fresh vegetables are pretty good
22:20:11 <b_jonas> tomatos especially
22:20:14 <kmc> yeah
22:20:41 <kmc> the longest i've been away from civilization was 12 days
22:21:32 <kmc> and i was at a festival for the middle 4, about 800 people camping in the woods
22:21:46 <kmc> so a kind of civilization
22:21:51 <kmc> a very friendly kind
22:22:06 <b_jonas> that helps, that means if you're in trouble you can ask other people to help
22:22:13 <kmc> yeah
22:22:17 <kmc> also we went through towns and stuff
22:22:22 <kmc> I guess it wasn't really away from civilization
22:22:34 <kmc> but we were camping and I didn't get on the Internet or use any motorized transportation for 12 days
22:22:45 <kmc> I made one phone call about a train that I didn't end up taking
22:23:03 <kmc> actually I bricked my smartphone on day 1 so I had to use my wife's phone for that
22:23:06 <b_jonas> I would ask what the longest time is that you've been in places without mobile phone coverage, but you're not that young
22:23:28 <b_jonas> oh, I do the no internet thing on vacations usually
22:23:55 <b_jonas> but I'm still in a city and could get on the internet should I need to, and I make phone calls or send SMSes
22:24:13 <b_jonas> to tell my family that I'm ok, because they'd worry otherwise
22:24:20 <b_jonas> and I take photos and stuff
22:25:38 <b_jonas> with a digital camera, to be clear
22:26:20 <b_jonas> only since about 2008, I've done skiing vactions before that, when I didn't yet have access to a digital camera, and I didn't bring a chemical one
22:26:25 <b_jonas> s/bring/take/
22:26:36 <b_jonas> but I did already have a mobile phone then
22:26:48 <b_jonas> plus were with other people who have a mobile phone too
22:27:06 <b_jonas> now mind you, during skiing, you're still often in places on the mountain with no mobile phone coverage
22:31:17 -!- AnotherTest has quit (Ping timeout: 245 seconds).
22:39:06 <kmc> when i go on hikes with my wife we bring our ham radios to stay in contact
22:39:12 <kmc> it's very useful
22:39:30 <b_jonas> stay in contact with each other, or with other people?
22:39:32 <kmc> the handheld ones function like walkie-talkies, but with a bit better performance and the possibility to do other things besides point-to-point
22:39:40 <kmc> with each other, plus whoever else might be nearby
22:39:51 <kmc> if there's an emergency i could call for help on one of the local repeaters
22:39:55 <kmc> i always program them in before I go
22:40:08 <b_jonas> makes sense
22:40:22 <b_jonas> though you can want contact outside of emergencies too
22:40:26 <kmc> right
22:40:36 <kmc> but for that we do simplex (no rpeater)
22:40:58 <kmc> because it's a bit rude to monopolize some ham club's repeater for your hiking trip that is of no interest to anyone else
22:41:21 <kmc> this is one of the limitations of analog voice radio
22:41:30 <b_jonas> me, these days I take a mobile phone, a spare mobile phone, and various forms of money that I could use to buy mobile phones and cards or phone boothe or internet cafe fees or other forms of communication
22:41:30 <kmc> each repeater can support a single conversation at once
22:42:33 <kmc> in the old days several businesses would share a repeater by transmitting different subaudible tones, which would cue the receiving radio
22:42:36 <b_jonas> I only started carrying a spare mobile phone one and a half years ago. I'm paranoid.
22:42:46 <kmc> (the first implementations of the tone generation/detection were electromechanical!)
22:43:08 <kmc> this means you wouldn't hear the other guy's conversations, but you could still only have one conversation at a time
22:43:57 <kmc> then trunking systems were developed, which have a digital control channel that dynamically allocates users among a set of analog voice channels
22:44:42 <b_jonas> are there multiplexers that work by rapid shot time slices synchronized between pairs of parties, like there used to be in old telephone line equipment twentyfive years ago?
22:44:44 <kmc> and then you have the modern systems where everything's digital and encrypted (aside from hams) and linked over the Internet etc
22:44:52 <b_jonas> or thirty years ago or something
22:45:03 <b_jonas> not in the endpoint telephones, but in telephone exchanges
22:45:18 <kmc> b_jonas: for digital yes
22:45:35 <b_jonas> for telephones, this existed without digital technology
22:45:41 <kmc> for example DMR and P25 have alternating time slots which transmit audio packets
22:45:44 <kmc> that is cool
22:45:46 <kmc> do you have links about that?
22:45:47 <b_jonas> by time-slicing analog voice signals
22:45:54 <kmc> I know of frequency-division multiplexing for analog phone signals
22:45:55 <b_jonas> I don't sadly... let me try to google it
22:46:09 <kmc> but not time-division
22:46:11 <b_jonas> and I could be misinformed, I'm not the electric engineer here
22:46:18 <kmc> seems like it would produce a lot of annoying artifacts
22:46:27 <kmc> especially with primitive, electromechanical equipment
22:46:45 <b_jonas> I didn't say it has to be electromechanical
22:46:58 <b_jonas> they already had transistors and integrated circuits
22:47:11 <kmc> ok
22:47:22 <kmc> i was thinking earlier
22:47:29 <kmc> I think that FDMA was the earliest way to do this
22:47:48 <kmc> because it's relatively easy to shift a signal up or down by an arbitrary frequency using only analog parts
22:48:01 <kmc> vacuum tubes, even
22:48:55 <b_jonas> it's possible that I misunderstand this and it actually involves taking digital samples
22:49:26 <kmc> and a voice call occupies a small bandwidth relative to the usable bandwidth on a decent quality phone line
22:49:46 <b_jonas> https://en.wikipedia.org/wiki/Time-division_multiplexing#Multiplexed_digital_transmission mentions only digital
22:50:59 <b_jonas> yeah, that article says I was mistaken
22:51:07 <b_jonas> it was digital, but pretty early:
22:51:36 <b_jonas> https://en.wikipedia.org/wiki/Time-division_multiplexing#History
23:18:02 <kmc> 15:23 < b_jonas> I would ask what the longest time is that you've been in places without mobile phone coverage, but you're not that young
23:18:13 <kmc> well supposing we start at the year 2000
23:18:19 <kmc> then I think it would have been burning man in 2008
23:18:24 <kmc> for a week or 8 days or so
23:18:53 <kmc> (though i've gone longer without access to a phone personally, either because mine broke or because I was in countries where I couldn't / didn't want to roam and didn't have a SIM, etc)
23:19:14 <kmc> there is LTE on the playa now (one of many things contributing to Burning Man totally jumping the shark) but wasn't back then
23:19:52 <kmc> I think they had a wifi mesh with some sort of backhaul. it is close enough to Gerlach that you could do a wifi backhaul using consumer gear
23:20:07 <kmc> (and perfect line of sight, since it's on a dry lake bed and Gerlach is on the shore of that lake)
23:20:30 <kmc> anyway they had wifi on some experimental basis but i didn't use it
23:20:32 <kmc> and of course they had
23:20:33 <kmc> H A M
23:20:35 <kmc> R A D I O
23:20:45 <kmc> but I wasn't licensed then and wasn't particularly interested
23:22:38 <kmc> 15:40 < kmc> because it's a bit rude to monopolize some ham club's repeater for your hiking trip that is of no interest to anyone else
23:22:42 <kmc> ^ right, so I was going to mention
23:22:50 <kmc> the other thing I can do with this battery box + some other equipment I have
23:23:05 <kmc> is set up a temporary repeater for myself and my friends
23:23:13 <b_jonas> nice
23:23:25 <b_jonas> what kind of repeater?
23:23:39 <kmc> analog FM voice repeater
23:23:49 <kmc> so it will receive on (for example) 146.430 MHz
23:23:58 <kmc> and simultaneously retransmit what it hears on 445.430 MHz
23:24:17 <b_jonas> nice
23:24:40 <kmc> so that provides communication between handheld radios in the area which might otherwise not be able to talk to each other
23:24:46 <kmc> especially if the repeater is in a good location
23:24:53 <b_jonas> and you can set that up and still have enough equipment for a device that can send to that and one that can receive from that?
23:25:01 <kmc> yeah
23:25:07 <kmc> I have a bunch of radios...
23:25:08 <b_jonas> even better
23:25:10 <kmc> I might have a problem
23:25:24 <b_jonas> no, you can't have too much electronics
23:25:29 <kmc> "once you get locked into a serious radio collection, the tendency is to push it as far as you can"
23:25:39 <b_jonas> they always break down or happen to not work for what you want, so you want a lot of them
23:25:45 <kmc> it's true
23:25:54 <b_jonas> or you unexpectedly need more than you thought
23:26:15 <kmc> I have a bunch of those Baofeng radios, $30 handheld radio from China that's a bit crap but basically works
23:26:26 <kmc> there was talk that the FCC would ban them so I impulse bought 3
23:27:14 <b_jonas> hehe
23:27:31 <kmc> the main problem is that they are purchased by people with no ham license or knowledge, and they also allow transmitting outside the ham bands, so clueless users just program in whatever frequencies they pull out of their ass and end up interfering with business, public safety, whatever else
23:27:57 <kmc> there are few restrictions on selling equipment to hams, but when you start marketing something to the general public then the FCC gets much more interested
23:28:05 <kmc> and the claim is that they are doing that
23:28:20 <kmc> somewhat similar situation has existed for a long time on CB
23:28:45 <b_jonas> unrelated: a few days ago I ordered a nice book about geometry that I think will be a good complement to the three references that I already have on my shelf. it will arrive some time next month, the hard part will be understanding it of course, but I'm sure I'll learn a lot from it.
23:29:02 <kmc> CB radio is limited by law to just 4 watts AM (12 watts SSB), however you can buy radios that claim to be for the 10 meter ham band but are clearly meant to be modified and used on CB illegally, at 100W or more
23:29:08 <kmc> ooh
23:29:09 <kmc> whic book?
23:30:10 <b_jonas> the book is Jürgen Richter-Gebert, "Perspectives on Projective Geometry"
23:30:56 <b_jonas> kmc: yes, that happens for wifi too, there are wifi transmitters sold that can be easily unlocked to transmit with a power higher than they're allowed in equipment sold
23:31:35 <fizzie> This is a book I wouldn't necessarily get just because, but it's one that has what I think is a lovely name: https://www.amazon.co.uk/generatingfunctionology-Third-Herbert-S-Wilf/dp/1568812795
23:31:48 <fizzie> We had it as the textbook on a course way back when.
23:32:31 <b_jonas> fizzie: do you have a copy of Concrete Mathematics yet? just wondering
23:33:09 <fizzie> I don't have many reference works here. But we did have that as a textbook as well.
23:33:26 <fizzie> I pruned down the bookshelf a lot when relocating FI-UK. This is a smaller flat.
23:33:53 <fizzie> In Concrete Mathematics, I like how the cover is made to look like a block of concrete.
23:34:09 <b_jonas> fizzie: not in the translated copy that I have
23:34:21 <b_jonas> the cover is yellow and not like any kind of concrete
23:34:36 <fizzie> Aw. The one I've seen looks like the Amazon picture, https://www.amazon.co.uk/Concrete-Mathematics-Foundation-Computer-Science/dp/0201558025
23:34:37 <b_jonas> not uniform yellow, has a pattern, but that pattern isn't like what you see in concrete
23:34:57 <b_jonas> hmm
23:35:05 <b_jonas> well it's hard to tell from such a photo whether it looks like concrete
23:35:18 <b_jonas> you'd have to see how light shines on it and how it changes color when it becomes wet
23:35:26 <b_jonas> neither of which you can do on a photo
23:35:28 <fizzie> It doesn't look *that* much like concrete.
23:35:54 <fizzie> I think I kept TAOCP, and that Schneier's three-book set, and the Prolog book, and SICP. And a few others.
23:37:27 <b_jonas> I have an ebook copy of TAOCP volumes 1, 2, 3, 4 now, and gave away my old translated volumes 1, 2, 3.
23:37:36 <b_jonas> what Scheier's three-book set?
23:38:29 <fizzie> It's just a box of three of his books.
23:38:56 <b_jonas> I have Concrete Mathematics but it's currently lent to my father so it's not on the shelf next to me; I have three geometry reference books, the Cormen, Leiserson, Rivest, Stein algorithms book,
23:39:01 <fizzie> I think probably Applied Cryptography, Secrets & Lies, and one more, maybe Practical Cryptography.
23:39:08 <fizzie> Oh, I did keep the CLRS as well.
23:39:12 <fizzie> And the APUE.
23:39:40 <fizzie> And Tanenbaum's OS book.
23:39:45 <b_jonas> the Lovász exercises in graph theory book in translation, Hajnal's introductory graph tehory book, the Rónyai-Ivanyos-Szabó algorithms textbook though that's not really useful,
23:40:09 <b_jonas> the Erdős, Surányi introd number theory book
23:40:36 <b_jonas> and that's about all that could count as maths reference books I think (the TAOCP included)
23:40:41 <b_jonas> oh wait
23:40:54 <b_jonas> I also have Warren's Hacker's Delight second edition
23:41:03 <fizzie> The only actual maths book I have is the generic Kreyszig's Advanced Engineering Mathematics, 8th edition.
23:41:19 <b_jonas> I have some more maths books here, but I don't count them as reference books
23:41:27 <b_jonas> like there's a few of Smullyan's books
23:41:42 <b_jonas> all three pop science books by Rényi Alfréd
23:42:00 <fizzie> I've also got three machine learning books that have some amount of math in them, but I wouldn't exactly count them as maths books.
23:43:56 <b_jonas> oh, I also have digital copies of the ed. Iványi algorithms book that are freely available as a download from the internet
23:44:00 <b_jonas> that should count
23:44:06 <b_jonas> I don't have a physical copy of any of the volumes
23:44:44 <fizzie> Looks like there's also one DSP book, that's probably relatively mathy.
23:45:51 <fizzie> I think we culled about one half to two thirds of all books we had, and it wasn't particularly easy.
23:46:52 <b_jonas> fizzie: yeah, this is why I am now afraid to buy new books
23:47:00 <b_jonas> because even if I could fit them here, what will I do when I move?
23:47:05 <fizzie> If you need a copy of my thesis, and are okay with picking it up in London, I think I'd be happy to donate one -- I think I've got something like 10-20 copies, and there's absolutely no use for them.
23:52:10 <b_jonas> fizzie: don't you have electronic copies on the internet?
23:52:25 <fizzie> Yes, it's available there as well.
23:52:30 <b_jonas> link?
23:53:06 <b_jonas> I don't know what your thesis is about so I can't tell if I want one or not
23:53:12 <fizzie> If you just get the PDF, you don't get a cheaply bound paperback copy where rubbing the cover the wrong way around leaves streaks in it.
23:53:22 <b_jonas> I will be in London some time near 2019-07-28 though
23:53:34 <fizzie> https://aaltodoc.aalto.fi/handle/123456789/19777
23:53:58 <b_jonas> though for only a short time so I might not want to fit picking up a thesis into it
23:54:21 <b_jonas> ooh, fancy
23:54:45 <fizzie> Fair enough, I might actually be in MTV around that time as well.
23:56:57 <fizzie> I don't know if there's enough US-CA #esoteric people to warrant organizing something. I do have a free weekend though.
←2019-06-21 2019-06-22 2019-06-23→ ↑2019 ↑all