←2025-08-18 2025-08-19 2025-08-20→ ↑2025 ↑all
00:54:12 -!- FreeFull has quit (Ping timeout: 260 seconds).
01:14:59 -!- ais523 has quit (Quit: quit).
01:17:20 -!- amby has quit (Quit: so long suckers! i rev up my motorcylce and create a huge cloud of smoke. when the cloud dissipates im lying completely dead on the pavement).
02:11:26 -!- DifferentDance8 has joined.
02:29:28 -!- molson has quit (Quit: Leaving).
03:29:08 <esolangs> [[Gur yvsr]] M https://esolangs.org/w/index.php?diff=163606&oldid=163323 * Placeholding * (+15)
03:30:34 <esolangs> [[Gur yvsr]] https://esolangs.org/w/index.php?diff=163607&oldid=163606 * Placeholding * (+0)
03:44:25 <esolangs> [[User:PkmnQ/qoob derivatives]] https://esolangs.org/w/index.php?diff=163608&oldid=161082 * PkmnQ * (+466) Add example tag system
03:46:21 <zzo38> This is something I am not sure where to write this.
03:47:22 <zzo38> The TV provider changed the TV again. Some people here still want to watch TV, and now it uses the TiVo Android TV, and it cannot be connected to the VCR, and the UI is even worse than it was before, and an external caption decoder cannot be used. I was trying to see if I could make it by myself in a better way.
03:48:44 <zzo38> I found the TV guide data in XML format (the time zone is wrong, but that is easy to work around). I also found the CBC television by internet, but it is M3U file that links to the video files that are only a few seconds each; why do they do it so badly? VLC can play them, but it says the version number is wrong if I try to play the M3U file directly.
03:54:03 <zzo38> Why are the designs this bad?
03:54:32 <esolangs> [[Gur yvsr]] https://esolangs.org/w/index.php?diff=163609&oldid=163607 * Placeholding * (+82)
03:57:09 <esolangs> [[Gur yvsr]] https://esolangs.org/w/index.php?diff=163610&oldid=163609 * Placeholding * (-27)
04:00:31 <esolangs> [[Hello world program in esoteric languages (D-G)]] https://esolangs.org/w/index.php?diff=163611&oldid=162641 * Placeholding * (+200)
04:55:19 -!- FreeFull has joined.
05:02:32 -!- korvo has quit (Server closed connection).
05:27:59 -!- korvo has joined.
05:37:55 -!- rodgort` has quit (Server closed connection).
05:39:08 -!- rodgort has joined.
06:15:37 -!- moony has quit (Server closed connection).
06:16:13 -!- moony has joined.
06:30:35 -!- Sgeo has quit (Read error: Connection reset by peer).
06:50:31 <esolangs> [[Delete]] M https://esolangs.org/w/index.php?diff=163612&oldid=163551 * None1 * (+1) /* */
07:41:53 -!- Guest66 has joined.
07:42:53 <Guest66> does anyone know how to contact the admins so that i can finally have a acc i've been trying to get an acc for like two hours
07:43:19 -!- Guest66 has quit (Client Quit).
07:48:15 -!- DifferentDance8 has quit (Quit: Client closed).
07:56:02 <APic> Hi
08:11:20 <Hooloovoo> yo
08:15:29 -!- zzo38 has quit (Ping timeout: 260 seconds).
08:36:42 <esolangs> [[User:DumbEsolangsOrgUser]] https://esolangs.org/w/index.php?diff=163613&oldid=163594 * DumbEsolangsOrgUser * (+17)
08:40:58 -!- chiselfuse has quit (*.net *.split).
08:46:16 -!- chiselfuse has joined.
08:53:00 <esolangs> [[Dumbascii]] https://esolangs.org/w/index.php?diff=163614&oldid=163511 * DumbEsolangsOrgUser * (-2) /* See also */
09:02:56 <esolangs> [[Dumbascii]] https://esolangs.org/w/index.php?diff=163615&oldid=163614 * DumbEsolangsOrgUser * (+18)
09:03:07 <esolangs> [[Dumbascii-2]] N https://esolangs.org/w/index.php?oldid=163616 * DumbEsolangsOrgUser * (+838) Created page with "{{Wip}} '''Dumbascii-2''' is essentially the same as [[Dumbascii]], it just adds two commands and custom file extension. =Language Overview= Dumbascii-2, like [[Dumbascii]], works with outputting ASCII characters, but it uses .dumbascii instead of .txt
09:05:03 -!- wib_jonas has joined.
09:09:30 <wib_jonas> have you ever implemented sorting strings in an order something like libc's strverscmp function or (ls -v), which is mostly asciibetical order but sequences of digits are sorted primarily by their numeric value so "foo9" is before "foo10"? I just implemented a simple version (not equivalent to the libc function; still a total order on strings so I
09:09:30 <wib_jonas> get a consistent sort result), and I found it annoying to implement and I'm not satisfied with my implementation.
09:16:43 <wib_jonas> I'm not even trying to make it particularly efficient
09:18:02 <esolangs> [[Dumbascii-2]] https://esolangs.org/w/index.php?diff=163617&oldid=163616 * DumbEsolangsOrgUser * (+7) /* See Also */
09:21:59 <wib_jonas> https://dpaste.com/8M8Y8T7P9.txt shows my current implementation, the one that I'm not satisfied with
09:36:36 <esolangs> [[Everybody!]] N https://esolangs.org/w/index.php?oldid=163618 * Ractangle * (+1657) new lanaguge droped
09:37:28 <esolangs> [[User:Ractangle]] M https://esolangs.org/w/index.php?diff=163619&oldid=162618 * Ractangle * (+8) /* Esolangs */
09:39:14 <esolangs> [[Everybody!]] M https://esolangs.org/w/index.php?diff=163620&oldid=163618 * Ractangle * (+141)
09:40:48 <esolangs> [[@everyone]] M https://esolangs.org/w/index.php?diff=163621&oldid=156639 * Ractangle * (+105)
11:02:38 -!- MizMahem has quit (Server closed connection).
11:02:49 -!- MizMahem has joined.
11:15:02 <esolangs> [[Needle]] N https://esolangs.org/w/index.php?oldid=163622 * ChuckEsoteric08 * (+2683) Created page with "'''Needle''' is an esolang by [[User:ChuckEsoteric08]]. ==Description== The language uses wrapping tape of 3 cells and program inside an infinite loop * <code>_</code> - decrements current cell and moves right. Decrementing zero does nothing. * <code>(...)</code>
11:16:54 <esolangs> [[Needle]] https://esolangs.org/w/index.php?diff=163623&oldid=163622 * ChuckEsoteric08 * (+26)
11:18:13 <esolangs> [[User:ChuckEsoteric08]] https://esolangs.org/w/index.php?diff=163624&oldid=148998 * ChuckEsoteric08 * (+24)
11:18:52 <esolangs> [[Needle]] https://esolangs.org/w/index.php?diff=163625&oldid=163623 * ChuckEsoteric08 * (-1)
11:23:01 <wib_jonas> in current X11, is
11:23:03 <wib_jonas> argh
11:25:03 <wib_jonas> in current X11, can a program request the mouse position at a higher space resolution and time resolution as the display has? like, if I'm running the display at 1920x1024 pixels and 60 frames/s refresh, can I get the mouse position every 1/240 s and at a precision of half a screen pixel?
11:25:24 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
11:26:09 <wib_jonas> it's fine if the events are delivered to the program only 60 times per second, as long as I get four positions at that point
11:28:24 -!- Lord_of_Life has joined.
12:12:47 <esolangs> [[Free]] N https://esolangs.org/w/index.php?oldid=163626 * DumbEsolangsOrgUser * (+2870) Created page with "{{wip}} '''Free''' is a [[:Category:Joke languages|joke]] [[esoteric programming language]] created as a parody language where the syntax is based entirely on digits and a few special symbols. The idea behind Free is that "syntax is price": every command cor
12:13:51 <esolangs> [[Free]] https://esolangs.org/w/index.php?diff=163627&oldid=163626 * DumbEsolangsOrgUser * (+33) /* Examples */
12:14:27 <esolangs> [[Free]] https://esolangs.org/w/index.php?diff=163628&oldid=163627 * DumbEsolangsOrgUser * (-21) /* See also */
12:34:05 -!- integral has quit (Server closed connection).
12:34:19 -!- integral has joined.
12:35:38 -!- tetsuo-cpp has quit (Server closed connection).
12:35:52 -!- tetsuo-cpp has joined.
12:46:56 <wib_jonas> I still passionately hate how in vim, if you delete a line that a bookmarks point to then the bookmark will no longer exist rather than point to the previous or next existing line!
12:56:50 -!- amby has joined.
13:06:35 -!- ais523 has joined.
13:08:11 -!- dnm has quit (Server closed connection).
13:08:36 -!- dnm has joined.
13:50:16 <strerror> wib_jonas: XIQueryPointer seems to (in theory) return fractional pixels. `xinput --test-xi2` to see if your device actually reports it
13:54:55 <strerror> Does anyone know an existing language for the kind of geometric constraints used for CAD sketching?
13:58:09 <strerror> The closest I've found is, Solvespace (solvespace.com) saves its sketches in a plain text language, though it's not designed to be used by humans directly
14:14:42 <wib_jonas> strerror: there's metafont and metapost, but they're very limited in the kind of constraints, only linear and you have to be very careful with the precision
14:14:52 <wib_jonas> so that's probably not what you want
14:15:11 <wib_jonas> strerror: thank you, I'll look at that
14:16:10 * ais523 continues to question whether putting backspace next to newline was a sensible keyboard layout decision
14:16:24 <ais523> it makes more sense in old-fashioned typewriters where backspace doesn't correct errors anyway, so you would hardly ever have to use it
14:16:44 <int-e> and now we're stuck with this layout.... FOREVER
14:17:28 <ais523> (the intended purpose of the backspace key on typewriters was to do overstrikes, like e backspace ` to create è, but IIRC you could also do that by holding down the space key and then tapping the characters you wanted to overstrike)
14:18:26 <ais523> now I remember how some early typewriters didn't have 0 or 1 keys, you were supposed to use capital O and capital I instead
14:20:06 <APic> *nod*
14:22:27 <wib_jonas> I think some people move backspace over to the left, to either capslock or tab, I don't remember which
14:22:31 <ais523> I've read teaching manuals for typewriter operators, early typewriters had no way to correct mistakes short of retyping the entire page on a new sheet of paper, so they were very concerned with minimizing input errors
14:22:53 <ais523> caps lock is perhaps the most "competed" key on custom keyboard layouts
14:23:25 <ais523> I use it for compose, it's easier to type than shift-altgr (which doesn't even seem to work on my current OS)
14:23:37 <ais523> err, altgr-shift
14:23:43 <wib_jonas> that said, in text editors I sometimes just use control-H bound to backspace, for less hand movement
14:24:15 <ais523> Emacs bindings have ctrl-d as backspace, I think
14:24:40 <ais523> both esc and ctrl are commonly mapped over the caps lock location
14:24:52 <ais523> (esc for vim users and ctrl for Emacs users, typically)
14:25:08 <wib_jonas> emacs is a newfangled thingy, control-h preserved as backspace in text editors is at least as old as wordstar, probably older
14:25:17 <ais523> I find the caps lock feature useful occasionally but I don't use it often enough for it to have its own dedicated key, so I bind it to shift-shift
14:25:34 <ais523> (i.e. you use one shift key to modify the other shift key)
14:25:48 <APic> My Mother in her Job at the Post Office already had an electric Typewriter with a special Key that erased the last Character with Tipp-Ex-Fluid
14:25:53 <wib_jonas> yeah, I know, emacs is actually older, but I hadn't met emacs until later
14:26:19 <wib_jonas> ais523: control-D? I find that suspicious.
14:27:16 <ais523> I think the emacs documentation still has an FAQ along the lines of "I keep pressing backspace but it just makes the help menu appear" and the response is along the lines of "rebind all your other applications to no longer use backspace/Ctrl-H as a delete key then you'll stop making that mistake", which struck me as incredibly arrogant
14:27:40 <ais523> (modern terminals usually bind backspace to Ctrl-? rather than Ctrl-H, which avoids that problem)
14:27:58 <ais523> ah, Ctrl-D is delete forwards, not delete backwards
14:28:41 <ais523> at least with my bindings
14:28:46 <ais523> maybe I changed it?
14:30:14 <ais523> https://www.gnu.org/software/emacs/manual/html_node/emacs/Deletion.html implies that that is the default and there isn't a ctrl-letter combination for delete-backwards-char, which is really surprising to me
14:30:18 <wib_jonas> ais523: no, I think in emacs control-D and alt-D deletes forwards, control-? and alt-control-? delete backwards
14:30:36 <ais523> ctrl-? deletes forwards for me
14:30:41 <ais523> on the GUI version
14:30:52 <wib_jonas> huh...
14:31:01 <ais523> ah no
14:31:09 <ais523> ctrl-? is apparently an undo command in the GUI ersion
14:31:17 <ais523> but I was testing out deletions recently, so…
14:33:45 <esolangs> [[Mama,ILearnedhowto do]] https://esolangs.org/w/index.php?diff=163629&oldid=163605 * A() * (+75) /* Hello */
14:34:57 <wib_jonas> ais523: I think undo should be control-_ , maybe you have some keyboard layout confusion
14:35:15 <ais523> wib_jonas: C-? is apparently specifically an undo for undos
14:35:30 <ais523> C-_ will undo other C-_ commands if you move the cursor in between, presumably C-? means you don't have to move the cursor
14:36:33 <ais523> (in terminals, C-? presumably acts like backspace because they have the same code)
14:38:00 <wib_jonas> ais523: ok, I think you lost me. I might be wrong about anything I say about emacs, I don't really use it anymore.
14:38:20 <ais523> I am not really into deep emacs lore, even though I use it as my primary editor
14:38:24 <ais523> for programming at least
14:38:59 <ais523> I think I still use three different editors on a regular basis (there are two more that I used to use)
14:39:38 <wib_jonas> ais523: that said, vim is configured by default to accept control-H as backspace in insert mode. I've configured at least one non-emacs non-vim editor to accept control-J as newline (I think it already accepted control-H as backspace, but control-J was bound to something else)
14:40:18 <wib_jonas> "deep emacs lore" how you backspace counts as deep lore?
14:40:38 <ais523> maybe! it was historically very complicated
14:40:47 <ais523> I think early shells used a printable character as backspace, maybe #?
14:41:11 <ais523> and it just appeared on the command line and you had to remember that neither it nor the previous character counted
14:41:49 <ais523> actually I think that setting still exists on modern computers but is not normally enabled
14:42:24 <ais523> <stty -a> erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
14:44:06 <wib_jonas> ais523: I don't think that's right about the terminal, I think even early unix terminals used backspace as the backspace key, not a printable character, though they may have *echoed* it differently for hardcopy terminals (as opposed to crts), but it's possible that hash mark was used as the input character for either delete line or delete word
14:44:33 <ais523> wib_jonas: it is possible that the time I am thinking about was in the era of hardcopy terminals
14:45:23 <wib_jonas> yes, I just don't think anyone ever used a printable character to input backspace on them.
14:46:59 <esolangs> [[Mama,ILearnedhowto do]] https://esolangs.org/w/index.php?diff=163630&oldid=163629 * A() * (+60) /* Hello */
14:47:59 <wib_jonas> anyway, on vim I mostly use control-C instead of escape, also for finger movement save without having to change any layout
14:48:28 <wib_jonas> there are a few exceptions when control-C doesn't work, but they rarely come up
14:49:24 <ais523> hmm, so on old Unix, apparently the backspace key sent SIGINT (equivalent of ctrl-C in modern Unix)
14:49:58 <ais523> err, I mean the delete key
14:50:02 <ais523> or whichever one sends Ctrl-?
14:50:25 <ais523> https://retrocomputing.stackexchange.com/a/13090
14:50:40 <ais523> also specifies # to delete one character and @ to delete the line
14:51:05 <wib_jonas> ais523: I'm not saying that it's the backspace *key*, I'm saying you use a control character, not a printable character, to input a backspace on even old unix
14:51:19 <ais523> wib_jonas: I linked an answer saying that it's a printable character
14:52:21 <ais523> another source: https://unix.stackexchange.com/a/57831
14:53:22 <wib_jonas> ais523: I see. I may be mistaken about the unix history then.
14:54:49 <esolangs> [[User:A()]] https://esolangs.org/w/index.php?diff=163631&oldid=163093 * A() * (+27)
14:56:41 -!- citrons has quit (Server closed connection).
14:56:55 -!- slavfox has quit (Quit: ZNC 1.8.2 - https://znc.in).
15:00:39 -!- slavfox has joined.
15:06:50 -!- citrons has joined.
15:38:07 <esolangs> [[Special:Log/newusers]] create * Erix0815 * New user account
15:55:33 <strerror> wib_jonas: interesting, I didn't know that. (I also don't recall this being a feature in drawing languages post-TeX, like tikz…)
16:03:53 <strerror> Come to think of it, I wouldn't mind more languages having syntactic built-ins for linear equalities. And inequalities too, they're not that much slower. (It's even called linear "programming".)
16:06:16 -!- wib_jonas has quit (Quit: Client closed).
16:23:46 <ais523> some golfing languages have builtins for finding roots of polynomials, which seems related
16:44:46 <strerror> If it's the one I'm thinking of, well... that's not multivariate polynomials. That language doesn't even have variables.
16:46:56 <strerror> Multivariate is mainly interesting because it connects the program with something other than memory or control flow.
16:47:52 <strerror> The most related thing in mainstream languages might be type inference
16:56:06 <korvo> Topology ends up being an important nuance. E has both `x..y` and `x..!y` operators for ranges, and those can express inequalities and ranges.
16:59:28 <ais523> strerror: ah, you're thinking in terms of something that isn't just a library, but baked in more heavily to the language?
17:00:14 <ais523> there are Prologs with constraint solvers, that can solve equation systems at a level that feels closer to the language than that of a typical library (but in some cases it's nonetheless implemented as a library)
17:04:06 <ais523> inclusive/exclusive range syntax is interesting because languages have mostly agreed on .. for ranges nowadays, but differ in how they indicate inclusive/exclusive
17:04:21 <ais523> e.g. Perl 6 has .. inclusive ..^ exclusive and Rust has ..= inclusive .. exclusive
17:05:19 <ais523> VHDL has "to" for a forward range and "downto" for a backward range
17:06:18 <ais523> ("downto" is commonly used in VHDL because it often represents numbers as arrays of bits, and the convention is to use big-endian order for the elements but little-endian order for the indexes, so the arrays get indexed backwards)
17:08:13 <strerror> Thanks, I'm looking up the Prolog libraries. It seems they're all named CLP, like CLP(R) for reals.
17:08:24 <ais523> in SWI-Prolog, yes
17:09:00 <korvo> Also whether the range is enumerable. In E or Haskell, it always is enumerable; this leads to the fun situation where a range of Doubles has quite a few elements. ("Long iterator! Longer than you think!") I fixed this in Monte, but only by separating range queries from enumerations.
17:09:32 <ais523> in a sense, enumerating a range of doubles feels like a failure of abstraction
17:09:53 <ais523> unless you actually care about the exact set of numbers a double can represent, rather than real numbers in genral
17:10:06 <ais523> (I have seen the former case come up, but only in the context of modelling the behaviour of a program that uses floating-point internally)
17:10:08 <korvo> strerror: That's a common pattern in Prolog. The idea is that CLP is something done over a chosen domain, and the shape of the domain matters a lot. The key phrase "finite domain" will help, since CLP(FD) is a common thing too.
17:10:38 <korvo> (Another example is CHR, which has a wiki page; it requires a host language, so there's CHR(Prolog), CHR(Java), etc.)
17:11:07 <ais523> apparently there was a fork of CLP(FD) called CLP(Z) – a SWI-Prolog project I contributed to used the latter
17:11:27 <ais523> but I don't know what the difference is/was
17:12:31 <strerror> Well, solving over integers is quite a bit more difficult than reals (at least as used in CAD geometry), so I'm avoiding that
17:12:57 <ais523> I think of solving over reals as being harder simply due to the difficulty of expressing the resulting values
17:13:04 <ais523> unless you allow approximate solutions
17:13:34 <ais523> I guess for CAD, you have an acceptable tolerance and as long as the solution is within tolerance, you're OK
17:16:20 <korvo> Solving for computable reals is usually a matter of fighting with opaque libraries with bad ergonomics. FEM doesn't work right with computable reals, but that's a limitation in FEM that recent work may have fixed (search "walk on stars", currently reading http://rohansawhney.io/RohanSawhneyPhDThesis.pdf)
17:19:02 <strerror> Quadratic equations are NP-hard to solve over integers (an old result from Adleman). Though, I just looked it up for quadratic real equations, and coincidentally it's of similar complexity. https://mathoverflow.net/questions/153436/
17:27:01 <korvo> That's a clever encoding. Integers are worse because they scale all the way up to Diophantine equations, IMO, but that might be a computability-theory perspective.
17:27:02 -!- ski has quit (Server closed connection).
17:33:00 <strerror> Yes, with integers it's easy to bump into undecidability
17:35:31 <strerror> Actually CAD constraints can be quite subtle. Identifying whether a (unique) solution exists is the hard part, not expressing it to more precision. It's easy to build complicated linkages and then assert that two points can be made to coincide
17:37:55 <strerror> A fully constrained (no continuous DoFs) sketch will have no solution or disconnected point solution(s), and it might not be obvious which case applies. Also it can be hard to tell whether the solution you're converging to is unique
17:39:29 <korvo> Yeesh, yes. When I worked on automatic CAD I fortunately was only working on subtractive manufacturing processes (CNC) and so we were mostly focused on encoding subtractions as CNC motions. Whether the subtraction produces the right piece was Somebody Else's Problem.
17:40:30 <strerror> (Some CAD software even treat an under-constrained sketch as invalid, I believe earlier versions of freecad did this? So in those systems, the engine always has to deal with the discrete solutions)
17:47:16 -!- ski has joined.
17:50:20 <esolangs> [[Scurl]] N https://esolangs.org/w/index.php?oldid=163632 * WarzokERNST135 * (+173) Created page with "{{lowercase}} [[scurl]] is an esolang made by [[WarzokERNST135]]. The documentation and implementation of the esolang can be found [https://github.com/vblackmar/scurl here.]"
18:09:09 <b_jonas> "inequalities too, they're not that much slower." => have you ever looked for actual implementations of linear programming? I have, https://plato.asu.edu/sub/pns.html has a nice collection, but I have the impression that there's nothing that both has a convenient simple interface that I can easily use, and supports *sparse* linear programming (as opposed to one with a dense matrix of coefficients). and
18:09:15 <b_jonas> I'd like one. "not that much slower" is true in theory, but either I'm missing something or it's just not that easy in practice.
18:21:45 <strerror> Admittedly I have not.
18:23:38 <strerror> Sparsity would be nice, but it seems that solvers (including free ones) can cope with thousands of variables: https://plato.asu.edu/ftp/lpopt.html
18:25:25 <strerror> (Actually based on the "nonzeros" counts, most of these benchmarks are at least somewhat sparse)
18:32:05 <b_jonas> strerror: yes, for practical purposes I could probably use just a dense solver, but it's sad that I have to. and if you tried to do this in something like CAD (I had a different application in mind) then you could easily grow to the size where dense is not practical.
18:35:24 -!- zzo38 has joined.
18:42:31 <strerror> b_jonas: Hmm, what do you mean by "dense solver"? I don't know how they're implemented, but the rows × columns on that benchmark page look far too large to be stored densely. The first one is 986069 × 428032
18:45:43 <b_jonas> strerror: so a linear programming program looks like A*x<=b where A is a given real matrix and b is a given real vector, and you want to find a vector x of positive reals that satisfies this if it exists. (There are variants, like usually you also want to minimize something, but that's not important here.) Dense means that A is a dense matrix, with all elements explicitly listed. But in practical
18:45:49 <b_jonas> problems, most of the elements of A will be zero, so if both b and x are long then it's worth to represent it as a sparse matrix, storing only the nonzero elements, and solve it this way with sparse matrix operations, never representing the full matrix in memory.
18:46:07 <b_jonas> A dense solver would be one that uses a dense matrix A, a sparse solver uses a sparse matrix A.
18:46:50 <strerror> If I'm reading that page correctly, most of those benchmark A's are too large to be dense
18:47:15 <b_jonas> strerror: which benchmark page?
18:47:29 <strerror> https://plato.asu.edu/ftp/lpopt.html
18:47:32 <b_jonas> I know that sparse solvers exist, but I'd also like something that's easy to use for a toy project
18:48:24 <b_jonas> strerror: ok, it looks like that compares multiple solvers in a benchmark
18:49:21 <b_jonas> anyway, I don't *really* need a full sparse LP solver, but it would be easier to just embed one if there's something with a simple interface and easy to install
18:49:36 <b_jonas> though I admit that "sparse matrix" and "simple interface" are kind of contradictory
18:49:53 <b_jonas> and I certainly don't need high performance for this
18:52:27 <esolangs> [[User:WarzokERNST135]] https://esolangs.org/w/index.php?diff=163633&oldid=163366 * WarzokERNST135 * (-96)
18:53:07 <strerror> A sparse matrix is simple to write as coefficient-variable pairs. a1*x1 + a9999*x9999 + ...
19:16:14 <esolangs> [[A?!]] https://esolangs.org/w/index.php?diff=163634&oldid=111142 * Ractangle * (+496) /* Examples */
19:17:13 <esolangs> [[Hello world program in esoteric languages (nonalphabetic and A)]] https://esolangs.org/w/index.php?diff=163635&oldid=161757 * Ractangle * (+484) /* */
19:33:42 <ais523> plenty of languages nowadays have both arrays and maps as built-in objects
19:34:23 <ais523> a simple API for dense matrices would probably use some sort of array-of-arrays representation, if you convert those to maps instead the same API works for sparse matrices
19:34:45 <ais523> in fact, several languages, like Lua and PHP, treat dense arrays as special cases of sparse maps
19:34:56 <ais523> JS used to but I don't think it still does
19:35:32 <ais523> the problem is, those languages tend not to be the sort of systems programming languages that you would use to actually implement an efficient solver…
19:36:40 <ais523> so my guess is that the bad interfaces are caused by the libraries not bothering with trying to create ergonomic FFIs
20:15:01 <APic> G'Nite
21:38:50 -!- ais523 has quit (Quit: quit).
23:25:38 -!- ais523 has joined.
23:25:50 <ais523> !zjoust medium http://nethack4.org/pastebin/medium.bfjoust
23:25:50 <zemhill> ais523.medium: points 8.12, score 31.38, rank 5/47 (+1)
23:33:22 <ais523> !zjoust medium http://nethack4.org/pastebin/medium.bfjoust
23:33:23 <zemhill> ais523.medium: points 9.48, score 32.74, rank 5/47 (--)
23:38:00 -!- Sgeo has joined.
23:39:09 <ais523> !zjoust medium http://nethack4.org/pastebin/medium.bfjoust
23:39:10 <zemhill> ais523.medium: points 9.55, score 32.57, rank 5/47 (--)
23:44:04 <ais523> !zjoust medium http://nethack4.org/pastebin/medium.bfjoust
23:44:04 <zemhill> ais523.medium: points 9.79, score 32.83, rank 5/47 (--)
23:48:23 <ais523> !zjoust medium http://nethack4.org/pastebin/medium.bfjoust
23:48:23 <zemhill> ais523.medium: points 10.24, score 33.60, rank 5/47 (--)
23:51:05 <esolangs> [[Special:Log/newusers]] create * Mouldyair * New user account
23:55:01 <ais523> !zjoust medium http://nethack4.org/pastebin/medium.bfjoust
23:55:01 <zemhill> ais523.medium: points 10.14, score 33.46, rank 5/47 (--)
23:57:55 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=163636&oldid=163472 * Mouldyair * (+162)
←2025-08-18 2025-08-19 2025-08-20→ ↑2025 ↑all