code logs -> 2021 -> Sun, 08 Aug 2021< code.20210807.log - code.20210809.log >
--- Log opened Sun Aug 08 00:00:56 2021
00:20 catalyst_ [catalyst@Nightstar-ejd4sd.cable.virginm.net] has quit [[NS] Quit: -a- Connection Timed Out]
00:20 catalyst [catalyst@Nightstar-ejd4sd.cable.virginm.net] has joined #code
01:47 catalyst [catalyst@Nightstar-ejd4sd.cable.virginm.net] has quit [[NS] Quit: -a- Connection Timed Out]
01:47 catalyst [catalyst@Nightstar-ejd4sd.cable.virginm.net] has joined #code
02:04 Degi [Degi@Nightstar-3rnbf3.pool.telefonica.de] has quit [Operation timed out]
02:04 gnolam_ [quassel@Nightstar-j9ajs0.priv.bahnhof.se] has quit [Connection closed]
02:05 Degi [Degi@Nightstar-0cs6p7.pool.telefonica.de] has joined #code
02:28 McMartin [mcmartin@Nightstar-i80eaa.ca.comcast.net] has quit [[NS] Quit: Kernel upgrade time]
02:34 McMartin [mcmartin@Nightstar-i80eaa.ca.comcast.net] has joined #code
02:34 mode/#code [+ao McMartin McMartin] by ChanServ
02:49 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection closed]
05:23 Vorntastic [uid293981@Nightstar-h2b233.irccloud.com] has joined #code
05:24 mode/#code [+qo Vorntastic Vorntastic] by ChanServ
09:16 macdjord is now known as macdjord|slep
12:15 abudhabi [abudhabi@Nightstar-69k137.adsl.tpnet.pl] has joined #code
12:18 abudhabi_ [abudhabi@Nightstar-4ra97c.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds]
14:57 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
14:57 mode/#code [+qo Vornicus Vornicus] by ChanServ
16:26 gnolam [lenin@Nightstar-j9ajs0.priv.bahnhof.se] has quit [[NS] Quit: Thunderbolts and lightning]
17:39 Vorntastic [uid293981@Nightstar-h2b233.irccloud.com] has quit [[NS] Quit: Connection closed for inactivity]
18:49 Netsplit Deepthought.Nightstar.Net <-> Krikkit.Nightstar.Net quits: @PinkFreud
18:52 Netsplit over, joins: @PinkFreud
18:59 gnolam [lenin@Nightstar-j9ajs0.priv.bahnhof.se] has joined #code
18:59 mode/#code [+o gnolam] by ChanServ
19:13 Netsplit Deepthought.Nightstar.Net <-> Krikkit.Nightstar.Net quits: @PinkFreud
19:22
<@celticminstrel>
I wonder if there exists some person I could poke somewhere in order to get Lua 5.4 into MacPorts…
19:25 Netsplit over, joins: @PinkFreud
19:25 mode/#code [+o ErikMesoy] by ChanServ
19:33 Kindamoody[zZz] is now known as Kindamoody
19:44 Netsplit Traal.Nightstar.Net <-> Krikkit.Nightstar.Net quits: @PinkFreud
19:52 Netsplit over, joins: @PinkFreud
20:04
< Yossarian>
<@celticminstrel> I wonder if there exists some person I could poke somewhere in order to get Lua 5.4 into MacPorts…
20:05
< Yossarian>
Maybe because of my writer's block but I haven't really seen any lua written that didn't invoke outside functions in C.
20:06
< Yossarian>
Or perhaps I simply haven't read enough lua... I find that reading source code seems to be how a lot of coders spend their time.
20:12
<@celticminstrel>
The REPL can be useful for quick checks on how things work. I don’t write actual code for it, it’s just a useful tool.
20:12
<&McMartin>
Lua is designed to be embedded in other systems, but it does include a moderately reasonable standard library
20:13
<@celticminstrel>
I can get the same effect by launching up Wesnoth but that’s a bit more, uh, heavy-weight if the thing I’m testing isn’t Wesnoth-specific.
20:21
< Yossarian>
I wonder how flexible lua_state *L objects are in C and C++, guess I have some reading to do. I was thinking, determined upon how accessible the lua states were from C and C++ that lua might make a fine way to write markov chains or any sort of automaton, although regular interpreted lua is probably a bit slow, I think there is a LuaJIT compiler which I wonder... if the bytecode is as
20:21
< Yossarian>
easily reversed as java bytecode.
20:29
<@celticminstrel>
LuaJIT is fairly outdated FTR.
20:29
<@celticminstrel>
I honestly have no idea what you’re wondering about here. What does it even mean for the Lua thread to be “flexible” or “accessible” in this context?
20:30
<@celticminstrel>
What does any of that have to do with markov chains?
20:37
<&McMartin>
LuaJIT is, IIRC, 5.1
20:37
<&McMartin>
One nasty thing about Lua is that it does not use semantic versioning
20:37
<&McMartin>
5.1, 5.2, 5.3, and 5.4 are best considered 6, 7, 8, 9
20:40
< Yossarian>
<@celticminstrel> LuaJIT is fairly outdated FTR.
20:40
< Yossarian>
?FTR?
20:41
< Yossarian>
<&McMartin> One nasty thing about Lua is that it does not use semantic versioning
20:41
< Yossarian>
Thanks, that bit of info makes life a bit easier.
20:42
<@celticminstrel>
“for the record”
20:43
<@celticminstrel>
Oh, I see what McM means. Each of 5.2, 5.3, 5.4 adds new features, after all, and in some cases deprecates or even removes stuff.
20:44
<@celticminstrel>
I guess 5.1 too.
20:44
<&McMartin>
Right, and specifically, you can't rely on 5.1 code running in 5.2
20:44
<&McMartin>
Which by semver means that needs to be a major version bump
20:46
< Yossarian>
I see. Not just markov chains but for formally defined stochastic automatons with Markov decision process - pet project of mine is developing a client side AI but it's quite a lofty project.
20:47
< Yossarian>
I think there are some client side bots/AI already handcrafted for such processes, I think there is one that plays League of Legends?
20:48
< Yossarian>
But I was thinking of developing a client side AI/bot for a more complex game like IL-2 Sturmovik: 1946
20:50
< Yossarian>
or any given flight sim, the benefit of which is that the replays can be analyzed if the client side bot/AI has a method to be trained, the replays can be sed as training sets... it's just the mathematics behind such a project is... I'm a bit rusty in my maths, is what I will say.
20:55
< Yossarian>
and maybe not so much as a bot that takes complete control client side but gives advice to the player or can be switched on to take over input, the semantics of playing WWII flight sims is relatively well known with concepts as energy states and such, but for the bot to play by itself, you'll need OpenCV along with analyzing sound output. The former for identifying enemies at long to
20:55
< Yossarian>
close range and the latter to help identify position of enemy at closer range
21:00
< Yossarian>
generally speaking though, I just wish AI for turn-based and real time games were better. Video games usually tap out the CPU and GPU, depending on how modern it is... hence my interest in client side AI, dedicate a whole workstation to playing as a 'player', multiple GPU, one for rendering of the game and the other(s) for any AI computational tasks
21:04
< Yossarian>
but even for the most basic of games, there is commonly the problem of perfect information vs. imperfect information -- the latter of which is a problem forCivilization, any RTS, etc... humans are pretty amazing when it comes to identifying patterns.
21:11
<@ErikMesoy>
Also the Civ AI is pretty bad even in the parts where it has perfect information.
21:14
< Yossarian>
Yeah, I haven't played Civ 6 but they changed their design philosophy from Civ 4 going into what becamse Civ 5. There are limited unit stacks, for example, which is OK I guess, depends on how many units are in the stack.
21:14
<@ErikMesoy>
I've been replaying Civ3 recently, in particular, and the AI *cannot* manage its workers to make its own cities productive.
21:14
<@ErikMesoy>
IRR-I-GATE. IRR-I-GATE.
21:14
< Yossarian>
Prior to Civ 5, I remember it was a unit stack vs. unit stack type thing.
21:15
<@ErikMesoy>
Civ3 let you stack multiple units on a tile, but they fought one at a time.
21:15
< Yossarian>
<@ErikMesoy> I've been replaying Civ3 recently, in particular, and the AI *cannot* manage its workers to make its own cities productive.
21:15
< Yossarian>
The workers build the wrong improvements?
21:16
<@ErikMesoy>
On a good day, the workers build the wrong improvements (irrigation/farm everywhere, almost no mines).
21:17
<@ErikMesoy>
On a bad day, there's unimproved terrain in AI territory in the last era of the game (the transition between Flight and Rocketry).
21:17
<@ErikMesoy>
And this is when I'm on a harder difficulty level where the AI gets free workers at the start, and discounted worker production cost.
21:17
< Yossarian>
Civ3 is a bit hazy to me on improvements, Civ5 I know that depending upon city location you're going to need to make up for the lack of food but you want to take advantage of nearby resources (Civ5 though and probably all the civ games, the AI does know where all strategic resources are before researching the tech to actually see it)
21:18
< Yossarian>
or if you have a city with great food tiles you need to make up for the lack of hammers
21:18
<@ErikMesoy>
TLDR: most tiles can get either Irrigation (aka Farm) +1 food, or Mine +1 production.
21:18
<@ErikMesoy>
Mountains can only get mines, jungles have to be cut down before building either improvement.
21:19
<@ErikMesoy>
The Civ3 AI grossly over-irrigates.
21:19
< Yossarian>
s/mountains/hills ; I don't recall mountains ever being passable or to have workable tiles but I might be wrong in the pre-Civ5 games.
21:21
<@ErikMesoy>
The AI will get a 50% discount on unit costs on high difficulty level, and then have their capital with 1/3rd my capital in production in the lategame, because no mines.
21:24
<@ErikMesoy>
It's sort of an imperfect information problem - do I get more Food so my city grows faster, or more Production to build units faster? But it's not a *hidden* information problem.
21:28
<@ErikMesoy>
I may not have the terminology quite right here.
21:28
<@ErikMesoy>
The AI knows exactly what tiles it has available near a city, is that perfect information enough?
21:45
<&[R]>
<McMartin> 5.1, 5.2, 5.3, and 5.4 are best considered 6, 7, 8, 9 <-- so basically an even more drunk Java versioning
21:46 catalyst [catalyst@Nightstar-ejd4sd.cable.virginm.net] has quit [The TLS connection was non-properly terminated.]
21:48
<&McMartin>
I'm torn
21:48
<&McMartin>
My respect for semver has dropped over the past ten years
21:48
<&[R]>
Because of misuse, or?
21:48
<&McMartin>
So violating it isn't automatically a mistake
21:49
<&McMartin>
Let me see if I can find the quote
21:49
<&McMartin>
Eh, it's basically the entire FAQ
21:50
<&[R]>
I dislike stuff that looks like semver, but isn't
21:50 * [R] glares at Ruby
21:50
<&McMartin>
I now read semver as attempting to smuggle in an entire set of software engineering values into something they are otherwise pretending is a objective notation for releases
21:50
<&[R]>
Well, I guess my beef with that is more that it looks like semver+distro patch
21:51
<&[R]>
To be fair, Linux's dynamic library system kind of relies on libraries following semver rules
21:52
<&McMartin>
That is a very different statement from "Having to bump major versions to release incompatible changes means you’ll think through the impact of your changes, and evaluate the cost/benefit ratio involved."
21:54
<&[R]>
Sure, but being able to assume that would hold true is kind of how the system works
21:54
<&[R]>
With the versioned symlinks and all
21:55
<&McMartin>
Oh, I misread you at first as saying the *kernel modules* did somehow
21:55
<&[R]>
Oh, no
21:56
<&McMartin>
In that case: I disagree; the symlink system is flexible enough that it doesn't truly require it
21:56
<&McMartin>
(as a somewhat simplistic example, the difference between python3.6 and python3.8 needs to be treated as a major version difference and Debian handles this fine)
21:57
<&McMartin>
(I don't remember exactly why other than "if you use etc/alternatives to make 3.8 standard on Bionic, GNOME broke because of course it fuckin' does" but that does still mean you can work around it simply)
21:59
<&McMartin>
The part that rankles is that the FAQ makes it clear that this isn't "hey you should use this notation system" it's "when I say 'use this notation system' I'm saying 'you are an irresponsible software developer and need to change your entire development methodology'"
22:01
<&McMartin>
As I've gotten older I've gotten less patient with framing craft/ideology arguments as if they're not those things
22:04
<&McMartin>
I am personally a fan of semver as a tech and I do *agree* with the ideology behind it, mostly
22:04
<&McMartin>
As an application developer though I've often found that minor revisions end up being essentially as important as major versions
22:05
<&McMartin>
And that semver rapidly becomes nonsense when you try to apply it to applications themselves.
22:06
<&McMartin>
UQM never bothered releasing a 1.0 so it's technically automatically compliant, but if it had, should the complete rework of the savegame format be a "minor revision" since older versions can't load it (but it would still understand earlier saves) or a "major revision" because savegame editors would stop working?
22:16
<&McMartin>
For something like an emulator, is it even theoretically possible for anything after it to be anything but a patch revision? etc.
22:18
<&McMartin>
Mmm. Thinking on it, I guess there's still a close but not exact match. Patch revision is "we fixed bugs", minor revision is "we added features"
22:19
<&McMartin>
Major revision would be "we removed features" though, and thinking a little bit about it I'd guess that I'd think of major revisions representing something like "we refactored the entire codebase", which semver considers a "patch" :D
22:21
<&[R]>
That's a little silly
22:22
<&[R]>
I'm not seeing where refactoring is mentioned on semver.org?
22:22
<&McMartin>
It's not.
22:22
<&McMartin>
That's why it'd be a patch.
22:23
<&McMartin>
It needs a new revision -- it's not the *same code*, after all -- but the change is both forwards and backwards compatible (since it was a refactoring and thus did not change behavior)
22:23
<&McMartin>
Thus: a complete clean-room reimplementation is a "patch"
22:23
<&McMartin>
Well, not clean-room, I suppose
22:23
<&McMartin>
It is the same team doing the rewrite
22:40
< Yossarian>
Oh god, please let me break my writer's block.
22:41
< Yossarian>
People are only playing X4 because it has an interactive map unlike X3 where you have a map but you have to click into each sector to see what is going on... A mod or hack can be introduced to make an interactive map for X3 in the same way there is for X4.
22:57
<&[R]>
Yossarian: just write whatever
22:57
<&[R]>
Even if it's nonsense, just write something
23:30 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [The TLS connection was non-properly terminated.]
23:30 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code
23:30 mode/#code [+ao ToxicFrog ToxicFrog] by ChanServ
23:30 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: WeeChat 3.1]
23:40 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code
23:41 mode/#code [+ao ToxicFrog ToxicFrog] by ChanServ
23:41 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: WeeChat 3.1]
23:53 catalyst [catalyst@Nightstar-ejd4sd.cable.virginm.net] has joined #code
--- Log closed Mon Aug 09 00:00:57 2021
code logs -> 2021 -> Sun, 08 Aug 2021< code.20210807.log - code.20210809.log >

[ Latest log file ]