<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:06:33] ⇦ Quits: immibis_ (~hexchat@62.156.144.218) (Remote host closed the connection)
L2[00:55:57] <Amanda> Izaya: I was thinking it was you thinking you were assigning a tuple as a value, though you can't do that in lua
L3[00:56:12] ⇦ Quits: ben_mkiv|afk (~ben_mkiv@2001:16b8:1ef6:9a00:fe34:97ff:fea9:75f2) (Quit: Leaving)
L4[00:56:18] <Izaya> returning a table would also make sense
L5[00:56:28] * Izaya shrugs
L6[00:56:44] <Izaya> I'll grep for software that uses that function and see if it would break anything
L7[00:56:49] <Izaya> ... at some point
L8[00:57:20] <Michiyo> %tonk
L9[00:57:20] <MichiBot> Goshhawk! Mic​hiyo! You beat Forec​aster's previous record of <0 (By 8 hours, 46 minutes and 23 seconds)! I hope you're happy!
L10[00:57:21] <MichiBot> Michiyo's new record is 8 hours, 46 minutes and 23 seconds! Michiyo also gained 0.00877 tonk points for stealing the tonk. Position #3. Need 0.39459875 more points to pass Forec​aster!
L11[00:57:26] <Michiyo> Damn.
L12[01:05:22] <Mic​hiyo> oh, neat.. avatars are broken
L13[01:05:23] <Mic​hiyo> why though
L14[01:08:41] <Michiyo> test
L15[01:09:00] <Mic​hiyo> :/ hmm
L16[01:10:56] <Michiyo> .
L17[01:11:07] <Mic​hiyo> Ah.. I broke it because of an SSL change
L18[01:38:25] * Amanda replaces dequbed 's universe access terminal with a different universe's model
L19[01:38:45] * Amanda goes around pushing stars off the galactic plane
L20[01:44:43] * Amanda tucks back in around elfi, did a heccen zzzmew
L21[03:08:44] <Ant​heus> So after a many year hiatus
L22[03:08:49] <Ant​heus> I found out about OC2
L23[03:10:35] <Ocawes​ome101> >Antheus: So after a many year hiatus
L24[03:10:36] <Ocawes​ome101> Been 6 years it looks like
L25[03:10:55] <Ocawes​ome101> A lot has changed/improved even in OC1 in that time
L26[03:11:28] <Ant​heus> I think last I truly messed around with OC1 was like 1.7.10 MC era.
L27[03:12:12] <Ant​heus> I want to say it was on a sever that either Lizzy, Michiyo or Izaya (SKS?) ran
L28[03:23:37] <Mic​hiyo> All 3 of us ran servers roughly then, so it coulda been any of us :P
L29[03:24:38] <Ant​heus> Ah memories of being young
L30[03:24:59] <Ant​heus> by that I mean me being like 16 and younger
L31[03:30:54] <Mic​hiyo> oof.
L32[03:31:12] <Ant​heus> it's ok. Now i'm 23 and not where I thought I would be back then
L33[03:31:18] <Ant​heus> I mean 22
L34[03:31:20] <Ant​heus> I think
L35[03:31:21] <Ant​heus> yes
L36[03:32:49] <Mic​hiyo> I'm very much not 22... :P
L37[04:23:27] <Forec​aster> 21 then, definitely the right direction
L38[04:31:40] <Va​ur> %sip
L39[04:31:42] <MichiBot> You drink a sedimented bavarium potion (New!). Vaur has a sudden desire to run around in a circle until Sozin's Comet returns.
L40[05:22:44] <Forec​aster> %sip
L41[05:22:45] <MichiBot> You drink a fluffy black potion (New!). Forecaster turns into a citrus bear turtle until they say the phrase "Awesome Awesome".
L42[05:24:54] <Forec​aster> Citrus is not very awesome awsome.
L43[05:25:29] <Forec​aster> bear turtle sounds like something from avatar though
L44[05:25:35] <Va​ur> %sip
L45[05:25:35] <MichiBot> You drink a smelly redstone potion (New!). The next remote Vaur looks for is extra hard to find.
L46[05:52:25] ⇨ Joins: ben_mkiv (~ben_mkiv@2001:16b8:1ef6:9a00:fe34:97ff:fea9:75f2)
L47[06:28:32] ⇦ Quits: Hawk777 (~chead@2607:c000:827f:f200:b4c1:351d:73c2:5975) (Quit: Leaving.)
L48[07:02:53] ⇨ Joins: TPG24 (~ThePiGuy2@host-92-17-122-20.as13285.net)
L49[07:04:15] ⇦ Quits: ThePiGuy24 (~ThePiGuy2@host-92-17-122-20.as13285.net) (Ping timeout: 186 seconds)
L50[07:31:58] ⇨ Joins: Bitheral (~Bitheral@89.238.143.235)
L51[08:16:04] ⇦ Quits: dustinm` (~dustinm@static.38.6.217.95.clients.your-server.de) (Quit: Leaving)
L52[08:17:52] ⇨ Joins: dustinm` (~dustinm@static.38.6.217.95.clients.your-server.de)
L53[08:22:00] <Va​ur> %sip
L54[08:22:00] <MichiBot> You drink a stirring tomato potion (New!). Vaur shrinks by a negligible amount until they find a lamp.
L55[09:05:33] ⇨ Joins: Vexatos (~Vexatos@port-92-192-99-179.dynamic.as20676.net)
L56[09:05:33] zsh sets mode: +v on Vexatos
L57[09:10:51] <Forec​aster> %sip
L58[09:10:52] <MichiBot> You drink a thick aether potion (New!). Forecaster doesn't seem to have any research points. (Rem. uses: 0)
L59[09:11:00] <Forec​aster> dang
L60[09:12:23] <Va​ur> %sip
L61[09:12:23] <MichiBot> You drink a liquid crimson potion (New!). Vaur's skin turn pink but with a transparent glow until their next sip of water.
L62[09:27:55] ⇦ Quits: hnOsmium0001 (uid453710@id-453710.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
L63[09:47:16] <Michiyo> %tonkout
L64[09:47:16] <MichiBot> Eh! Mic​hiyo! You beat your own previous record of 8 hours, 46 minutes and 23 seconds (By 3 minutes and 32 seconds)! I hope you're happy!
L65[09:47:17] <MichiBot> Mic​hiyo has tonked out! Tonk has been reset! They gained 0.008 tonk points! plus 0.014 bonus points for consecutive hours! Current score: 1.4579975, Position #3 Need 0.37259875 more points to pass Forec​aster!
L66[09:47:24] <Michiyo> %sip
L67[09:47:25] <MichiBot> You drink a smooth copper potion (New!). Michiyo turns into a toad unicorn girl until they have some bacon.
L68[09:47:34] <Va​ur> damn, you had the timer on that xD
L69[09:47:37] <Va​ur> %sip
L70[09:47:37] <MichiBot> You drink a salty emerald potion (New!). Vaur reboots for an update for 2 minutes.
L71[10:58:45] <Forec​aster> Pointy toad
L72[11:15:56] <Va​ur> %sip
L73[11:15:56] <MichiBot> You drink a ripe dirt potion (New!). Vaur: Nothing seemed to happen...
L74[11:30:31] * Amanda sits up, meows and looks around
L75[11:31:06] <Forec​aster> Hide the catnip!
L76[11:33:10] * Amanda 's ears perk up "whose trafficking catnip!?"
L77[11:33:45] <Amanda> It's a class M controlled substance, you shouldn't have it!
L78[11:40:19] <Forec​aster> Hence the hiding! I mean, have what?! I don't know nuthin
L79[11:57:05] * Amanda dispatches the interoogater kittehs to Forecaster's location
L80[13:27:09] <Forec​aster> Time to prepare the distracting toy mice
L81[13:48:58] <Va​ur> %tonk
L82[13:48:58] <MichiBot> Potzblitz! Va​ur! You beat Mic​hiyo's previous record of <0 (By 4 hours, 1 minute and 42 seconds)! I hope you're happy!
L83[13:48:59] <MichiBot> Vaur's new record is 4 hours, 1 minute and 42 seconds! Vaur also gained 0.00403 tonk points for stealing the tonk. Position #1.
L84[13:49:06] <Va​ur> %sip
L85[13:49:06] <MichiBot> You drink a solid currentcorn potion (New!). Vaur turns into a tomato golem pig until they see a bird.
L86[14:00:32] <Kristo​pher38> @Ocawesome101 I remember you fiddled with oc's plan9 for a bit, any knowledge whether this worked and whether you could pull the ssh script out and try porting it to openos?
L87[14:00:33] <Kristo​pher38> https://github.com/MightyPirates/OpenComputers/blob/master-MC1.7.10/src/main/resources/assets/opencomputers/loot/plan9k/usr/bin/ssh.lua
L88[14:40:41] ⇦ Quits: ben_mkiv (~ben_mkiv@2001:16b8:1ef6:9a00:fe34:97ff:fea9:75f2) (Ping timeout: 192 seconds)
L89[14:54:36] ⇨ Joins: Hawk777 (~chead@2607:c000:827f:f200:e6d6:d666:419e:8aef)
L90[14:55:48] <Fe​ris> >Ocawesome101: <@736682166527852687> I think I've fixed the installer issue - but I sti…
L91[14:55:48] <Fe​ris> yeah i used this and it worked for me, but can i use same terminal or other accounts on each monitor?
L92[15:20:37] <Ocawes​ome101> @Kristopher38 I have not messed with it and at a glance it looks like it _might_ be possible if you pull a couple of the libraries too
L93[16:35:01] ⇨ Joins: meekrsim (~meekrsim@cpc103558-stkn17-2-0-cust644.11-2.cable.virginm.net)
L94[16:35:07] <meekrsim> hi
L95[16:35:51] <meekrsim> Fortnite battle pass
L96[16:36:02] <meekrsim> i just shit out my ass
L97[16:36:05] ⇦ Quits: meekrsim (~meekrsim@cpc103558-stkn17-2-0-cust644.11-2.cable.virginm.net) (Client Quit)
L98[17:32:24] <фанат груп​пы Sabaton> Can lua calculate definitive integrals? I searched for such a function, but found absolutely nothing
L99[17:37:07] <Kristo​pher38> that's oddly specific
L100[17:37:57] <Kristo​pher38> you gotta do that yourself, look into numerical integration if you want to do it for any function
L101[17:44:44] <Fe​ris> @Ocawesome101 then can i somehow use two or more screens as terminal?
L102[17:45:19] <Ocawes​ome101> @Feris as in screen mirroring?
L103[17:45:23] <Fe​ris> yup
L104[17:45:26] <Fe​ris> something like that
L105[17:46:22] <Ocawes​ome101> ULOS doesn't natively support that, unfortunately, but in a bit I can write a wrapper script that'll do it for you
L106[17:46:44] <Fe​ris> if u can i will be grateful
L107[17:46:53] <Fe​ris> for use two or more screens
L108[17:46:57] <Ocawes​ome101> tl;dr create a faux io-compatible file that writes to every TTY
L109[17:47:10] <Fe​ris> hm?
L110[17:47:12] <Fe​ris> tl;dr
L111[17:48:47] <Fe​ris> btw why microcontrollers cant use external components
L112[17:49:25] <Amanda> That's just how they were balanced for having a lot of slots in a small space
L113[17:49:45] <Amanda> They can have networking connections, but not component connections
L114[17:50:01] <Fe​ris> thats bad for me because i like to use rolldoors
L115[17:50:10] <Fe​ris> and everytime i need to make new computer
L116[17:50:34] <Amanda> I think ben or Michio made it so that they can be put inside microcontrollers
L117[17:52:03] <Fe​ris> then i can use rolldoors with microcontrollers?
L118[17:52:30] <Amanda> Put the rolldoor inside the middle slots when you make the uC
L119[17:54:17] <Fe​ris> I don't understand you a bit
L120[18:01:07] <Ocawes​ome101> uC = microcontroller
L121[18:01:35] <Ocawes​ome101> tl;dr = too long; didn't read
L122[18:01:45] <Fe​ris> >Amanda: Put the rolldoor inside the middle slots when you make the uC
L123[18:01:45] <Fe​ris> it doesnt get in
L124[18:02:49] <Fe​ris> https://tinyurl.com/25f8mv85
L125[18:03:26] <Fe​ris> @Ocawesome101 in ur system `tle` and `flash` are broken or there is something with this ARM version
L126[18:03:40] <Ocawes​ome101> a bunch of stuff ULOS does requires Lua 5.3
L127[18:03:48] <Fe​ris> how to check lua version?
L128[18:04:09] <Ocawes​ome101> mouse over the CPU and check what the `Architecture` field says
L129[18:04:25] <Fe​ris> https://tinyurl.com/22p4x5fb
L130[18:05:00] <Ocawes​ome101> hm, it should be Lua 5.3
L131[18:05:10] <Ocawes​ome101> what error(s) do `tle` and `flash` throw?
L132[18:05:26] <Fe​ris> tle: https://tinyurl.com/2blvxxal
L133[18:05:52] <Fe​ris> https://tinyurl.com/2xso5q29
L134[18:06:09] <Ocawes​ome101> run `upm update` and then `upm upgrade -f`
L135[18:06:16] <Ocawes​ome101> which should fix TLE
L136[18:06:20] <Ocawes​ome101> as for `flash`, i'll investigate
L137[18:06:32] ⇨ Joins: hnOsmium0001 (uid453710@id-453710.hampstead.irccloud.com)
L138[18:06:38] <Ocawes​ome101> oh
L139[18:06:45] <Ocawes​ome101> that's the OpenOS `flash`
L140[18:07:04] <Fe​ris> same https://tinyurl.com/29d3tvoh
L141[18:07:14] <Ocawes​ome101> did `upm` do that? did you reboot?
L142[18:07:46] <Fe​ris> yup i updated and rebooted
L143[18:07:50] <Ocawes​ome101> hm
L144[18:08:03] <Fe​ris> oh wait
L145[18:08:04] <Fe​ris> my bad
L146[18:08:06] <Fe​ris> i
L147[18:08:15] <Fe​ris> i typed upm update -f instead upgrade
L148[18:09:56] <Fe​ris> buttt https://tinyurl.com/2axdtnro
L149[18:10:36] <Ocawes​ome101> yeah that's odd.
L150[18:10:49] <Ocawes​ome101> oh
L151[18:11:23] <Ocawes​ome101> `upm install bsh` then `passwd --shell=/bin/bsh.lua` and reboot
L152[18:12:23] <Fe​ris> after reboot xd https://tinyurl.com/2cek8wqe
L153[18:12:34] <Ocawes​ome101> dw about that
L154[18:12:40] <Fe​ris> same https://tinyurl.com/2xt9h7r5
L155[18:12:46] <Ocawes​ome101> hmm
L156[18:13:34] <Fe​ris> and what about your program for screen mirroring?
L157[18:22:44] <Fe​ris> >Feris: and what about your program for screen mirroring?
L158[18:22:45] <Fe​ris> @Ocawesome101
L159[18:22:51] <Ocawes​ome101> working on it
L160[18:23:31] <Fe​ris> okay
L161[18:27:22] ⇨ Joins: itsBitheral (~Bitheral@cpc77653-ely08-2-0-cust68.5-1.cable.virginm.net)
L162[18:28:29] ⇦ Quits: Bitheral (~Bitheral@89.238.143.235) (Ping timeout: 192 seconds)
L163[18:35:29] ⇨ Joins: larehtiB (~Bitheral@86.106.136.219)
L164[18:36:55] ⇦ Quits: itsBitheral (~Bitheral@cpc77653-ely08-2-0-cust68.5-1.cable.virginm.net) (Ping timeout: 189 seconds)
L165[18:37:42] <Fe​ris> >Ocawesome101: working on it
L166[18:37:43] <Fe​ris> how is it going?
L167[18:37:58] <Ocawes​ome101> i think there's a bug _somewhere_ but i'm not sure where. currently working on it.
L168[18:38:04] <Ocawes​ome101> in the process i've fixed one or two other bugs :)
L169[18:44:30] <Ocawes​ome101> yeah ok so i've got no idea what's causing it to not work @Feris
L170[18:44:36] <Ocawes​ome101> but it isn't working
L171[18:44:37] <Ocawes​ome101> so uh
L172[18:44:40] <Ocawes​ome101> that's a dead end
L173[18:45:16] <Fe​ris> then no screen mirroring?
L174[18:45:37] <Ocawes​ome101> not on ULOS :(
L175[18:45:49] <Fe​ris> do u know some other OS that support this?
L176[18:45:51] <Ocawes​ome101> if ULOS 2 was in a better state i'd recommend it, but, uh, it isn't
L177[18:46:16] <Ocawes​ome101> PsychOS does multiscreen in a manner similar to ULOS - you could try that, though it's on the insane side
L178[18:46:44] <Fe​ris> psychos or psychos 2?
L179[18:46:48] <Ocawes​ome101> 2
L180[18:49:08] <Fe​ris> how do i install this xD?
L181[18:54:48] <Fe​ris> hm?
L182[18:55:10] <Fe​ris> no installer or smth?
L183[18:57:14] <Va​ur> %tonkout
L184[18:57:15] <MichiBot> Holy ultimate guide to killing all humans Batman! Va​ur! You beat your own previous record of 4 hours, 1 minute and 42 seconds (By 1 hour, 6 minutes and 33 seconds)! I hope you're happy!
L185[18:57:16] <MichiBot> Va​ur has tonked out! Tonk has been reset! They gained 0.005 tonk points! plus 0.008 bonus points for consecutive hours! Current score: 2.04063625, Position #1
L186[18:57:26] <Fe​ris> >Feris: how do i install this xD?
L187[18:57:26] <Fe​ris> @Ocawesome101 could u help me please?
L188[18:57:32] <Ocawes​ome101> there is indeed no installer
L189[19:00:16] <Fe​ris> then how do i install this
L190[19:00:39] <Fe​ris> on openos or what?
L191[19:00:46] <Ocawes​ome101> good question
L192[19:00:56] <Ocawes​ome101> Izaya: what's the preferred method of installing PsychOS?
L193[19:01:15] <Ocawes​ome101> (it's about 5AM for him - you may have to wait a few hours)
L194[19:01:22] <Z0id​berg> https://www.gringogoose.com/goose-poop-confessionals
L195[19:01:23] <Z0id​berg> LOLOLOL
L196[19:04:08] <Fe​ris> can i connect all servers to use as one computer in rack?
L197[19:06:27] <Ocawes​ome101> no
L198[19:16:57] <Fe​ris> how tf can i install this poopyos
L199[19:18:29] <Ocawes​ome101> well, name-calling doesn't help
L200[19:20:33] <Forec​aster> maybe you're better of just using multiple computers
L201[19:20:46] <Ocawes​ome101> here's PsychOS as a CPIO - you'll need to `uncpio` it onto your target drive. https://tinyurl.com/2bx2amtk
L202[19:20:47] <Ocawes​ome101> also that.
L203[19:22:36] <Ocawes​ome101> does the internet card support any methods other than GET and POST?
L204[19:26:31] <Fe​ris> how i can get this file into computer?
L205[19:26:33] <Fe​ris> wget not working
L206[19:28:06] <Ocawes​ome101> right click -> copy link -> `wget` it and it doesn't work?
L207[19:28:21] <Fe​ris> https://tinyurl.com/2dkkdlta
L208[19:28:35] <Ocawes​ome101> hm
L209[19:29:17] <Ocawes​ome101> use http://0x0.st/ouzs.cpio then
L210[19:29:58] <lunar_sam> woohoo cpio
L211[19:31:08] <lunar_sam> luv muh cpio
L212[19:35:58] <Fe​ris> >Ocawesome101: use http://0x0.st/ouzs.cpio then
L213[19:35:58] <Fe​ris> what is this
L214[19:37:19] <Va​ur> just download it, it'll be fine, promess 😼
L215[19:37:43] <Fe​ris> hm?
L216[19:40:01] <Ocawes​ome101> It's a link
L217[19:40:07] <Ocawes​ome101> To a cpio archive
L218[19:40:31] <Forec​aster> It will definitely eat your favourite goldfish if you download it, resist the temptation
L219[19:45:48] <lunar_sam> yeah, ya just extract the cpio with`uncpio`
L220[19:46:07] <Fe​ris> but this is not the psychos 2
L221[19:46:09] <lunar_sam> also i should eventually start work on lcpio again
L222[19:46:48] <lunar_sam> for a full featured implementation of cpio for OpenOS *and* Linux
L223[19:47:32] <lunar_sam> although i need to get statx in lua, which is annoying
L224[19:48:03] <lunar_sam> and not everyone will wanna grab the extra modue for statx support
L225[19:48:15] <lunar_sam> so i'll probably make it optional
L226[19:48:53] <lunar_sam> fall back to normal stat
L227[19:49:01] <lunar_sam> else fall back to pure lua stuff
L228[19:49:09] <lunar_sam> for linux, at least
L229[19:49:31] <lunar_sam> wonder if i could make a win32 version :v
L230[19:49:52] <Ocawes​ome101> ULOS 2 could probably run lcpio unmodified
L231[19:50:02] <lunar_sam> i hope so
L232[19:50:18] <lunar_sam> i'll be using luaposix for everything
L233[19:50:31] <lunar_sam> not even lfs, just luaposix
L234[19:50:35] <Ocawes​ome101> And ULOS 2's goal is very high luaposix compatibility :)
L235[19:50:48] <lunar_sam> though for win32 i'll be using a win32 module
L236[19:51:08] <lunar_sam> lol
L237[19:51:23] <lunar_sam> if i ever make tsuki
L238[19:51:24] <Ocawes​ome101> (Plus luafilesystem and maybe luasocket (but probably not luasocket))
L239[19:51:32] <Kristo​pher38> legend says that lunar_sam will appear if you mention cpio, velx or tsuki
L240[19:51:40] <lunar_sam> i'll probably have a luaposix layer
L241[19:51:48] <lunar_sam> also yes
L242[19:51:51] <lunar_sam> i will
L243[19:52:06] <lunar_sam> i have yet to work on my lua in lua vm
L244[19:52:16] <lunar_sam> as work is soul sucking
L245[19:52:56] <lunar_sam> tsukinet is also cool
L246[19:53:09] <lunar_sam> i should finish my implementation of it
L247[19:53:22] <lunar_sam> use it over LoRa
L248[19:53:28] <Ocawes​ome101> It's been 3 years and tsuki still hasn't even really begun :|
L249[19:53:57] <Ocawes​ome101> Meanwhile I've written { n | n is many } OSes and two or three of them are decent
L250[19:54:32] <Kristo​pher38> It seems like a bad case of masturbating over project ideas that never take shape
L251[19:54:40] <Kristo​pher38> i'm guilty of it myself
L252[19:54:46] <Kristo​pher38> so i can't really judge
L253[19:55:04] <Z0id​berg> >Ocawesome101: It's been 3 years and tsuki still hasn't even really begun :|
L254[19:55:04] <Z0id​berg> I mean look at TW
L255[19:55:12] <Z0id​berg> I myself have just been busy
L256[19:55:13] <lunar_sam> it's more of a case of
L257[19:55:24] <Ocawes​ome101> Fair enough
L258[19:55:25] <lunar_sam> "i want to do this but i have no drive"
L259[19:55:32] <Z0id​berg> heh
L260[19:55:50] <lunar_sam> the closest i got was TNv1
L261[19:56:02] <Z0id​berg> I mean Trotwood does run
L262[19:56:02] <lunar_sam> where i found out it's AWFUL for OC networking
L263[19:56:06] <Z0id​berg> it just has zero support
L264[19:56:13] <Z0id​berg> meaning none of the cool stuff is done
L265[19:56:22] <Ocawes​ome101> I work on ULOS 2 for a month or two and then drop it for a month pretty consistently lol
L266[19:56:23] <Z0id​berg> Trotwood is currently a scheduler for actors.
L267[19:56:32] <Z0id​berg> you could use it as an actor model
L268[19:56:42] <Kristo​pher38> I'm still waiting for trotwood
L269[19:56:52] <lunar_sam> thus i would need to redo the socket system
L270[19:56:57] <lunar_sam> among other things
L271[19:57:02] <lunar_sam> for TNv2
L272[19:57:20] <Ocawes​ome101> Cynosure 2's networking will probably use bang paths
L273[19:57:25] <lunar_sam> also need to make a big wordy technical doc
L274[19:57:47] <Z0id​berg> Just use latex + doxygebn
L275[19:57:51] <Ocawes​ome101> It's nice and simple and doesn't tie me to https
L276[19:57:56] <lunar_sam> anyways, all TN needs is a link layer and it's happy
L277[19:58:10] <Z0id​berg> Doxygen can generate latex manuals
L278[19:58:27] <Ocawes​ome101> Because I want to transparently be able to host U2PM packages in-game _and_ outside of it
L279[19:59:23] <lunar_sam> yea
L280[19:59:28] <lunar_sam> i getcha
L281[19:59:44] <lunar_sam> i wanna be able to use TN inside and outside game :v
L282[19:59:53] <Z0id​berg> TN?
L283[20:00:12] <Ocawes​ome101> I also want to make u2pm more efficient and probably more decoupled from the cli program so it can be more easily used in scripts
L284[20:00:19] <lunar_sam> eventually, if i have a working spec for TNv2, i might even work on a kernel modue
L285[20:00:28] <lunar_sam> TN = tsukinet
L286[20:00:31] <Z0id​berg> There are some serious problems with Lua that makes Trotwood annoying to write
L287[20:00:34] <Z0id​berg> but I have a plan for it
L288[20:00:43] <lunar_sam> the only part of tsuki i've made lol
L289[20:00:54] <Z0id​berg> The first and foremost is a fast byvalue table copy.
L290[20:01:21] <lunar_sam> unless you count the core of the VELX system i made in Zorya
L291[20:01:32] <Kristo​pher38> that problem has already been solved @Z0idberg
L292[20:01:57] <Kristo​pher38> inb4 i want to roll my own solution
L293[20:01:59] <Z0id​berg> Yeah but I just haven't sat down to actually do it.
L294[20:02:09] <lunar_sam> zorya is black magic to me again
L295[20:02:11] <Z0id​berg> I was going to use metatables to create persistent data structures
L296[20:02:15] <lunar_sam> i forgot why and how it works
L297[20:02:19] <Z0id​berg> then just transfer those
L298[20:02:19] <lunar_sam> and why i made it how i did
L299[20:02:35] <lunar_sam> why do i have a scheduler in the bios
L300[20:02:40] <Ocawes​ome101> ULOS v1 is kind of like that at this point - ULOS 2 is at least somewhat sanely structured (I think)
L301[20:03:27] <Z0id​berg> Trotwood also needs a partition table if we want the native filesystem to work
L302[20:03:45] <Z0id​berg> The idea is to make something that is combination partition / filesystem
L303[20:03:51] <Z0id​berg> kind of like ZFS without the RAID
L304[20:04:16] <Z0id​berg> It's not needed to function
L305[20:04:16] <Z0id​berg> but was an end goal
L306[20:04:19] <lunar_sam> oh yeah
L307[20:04:25] <lunar_sam> foxfs
L308[20:04:28] <Kristo​pher38> I'm just waiting for the distributed OS part in trotwood
L309[20:04:36] <lunar_sam> that was a thing
L310[20:04:43] <lunar_sam> i still wanna make
L311[20:04:43] <Z0id​berg> Yeah that part is mostly just schuler + modem support in the VFS itself
L312[20:04:47] <Kristo​pher38> that seems to be the main selling point
L313[20:04:53] <Kristo​pher38> for me anyway
L314[20:05:20] <Z0id​berg> Right. the actor model stuff currently works. It's the multi node part that isn't ready yet. I need to make the scheduler protocol work over the modem
L315[20:05:46] <Z0id​berg> Once that is done, distributed process messaging can be used to create applications that run decentralized
L316[20:06:43] <Z0id​berg> I think we also get 8K per packet
L317[20:06:49] <Z0id​berg> so we need to figure out if fragmentation is needed.
L318[20:06:59] <Z0id​berg> processes can be used to buffer that
L319[20:13:29] <Z0id​berg> You know interrupts would be nice
L320[20:13:36] <Z0id​berg> if we had some kind of interrupt
L321[20:23:42] <Z0id​berg> so here's some thoughts. Some of this is already done
L322[20:23:51] <Z0id​berg> Code Block pastebined https://paste.pc-logix.com/ulequcigin
L323[20:24:58] <Z0id​berg> I should draw a concept map
L324[20:26:41] <Kristo​pher38> please don't use fp for PIDs
L325[20:26:54] <Kristo​pher38> one project already did that mistake
L326[20:27:30] <Kristo​pher38> just use two numbers, it won't hurt, really
L327[20:27:49] <lunar_sam> or use high and low 32 bits
L328[20:29:17] <lunar_sam> lua 5.3's int type is cool
L329[20:29:35] <Kristo​pher38> I wonder about the bullet point on tasks, how limiting does it make them
L330[20:32:26] <Z0id​berg> >Kristopher38: please don't use fp for PIDs
L331[20:32:26] <Z0id​berg> They have always been fp. Lua automatically uses fp for all numbers until 5.3, so there's no performance hit.
L332[20:32:55] <Z0id​berg> I have also thoroughly tested that feature
L333[20:32:58] <Z0id​berg> it's quite fast
L334[20:33:25] <Z0id​berg> It's how Trotwood indexes remote and local processes
L335[20:33:53] <Kristo​pher38> I know, but using them specifically for putting sub-identifiers after the dot should be a crime
L336[20:33:54] <Fe​ris> guys do u know some got ideas for microcontrollers?
L337[20:33:56] <Z0id​berg> otherwise you would need to use a linear non closeish to O(1) algorithm for finding nodes to route messages to.
L338[20:34:29] <Z0id​berg> The alternative was to use binary encoded process IDs.
L339[20:34:57] <Z0id​berg> Which pretty much either means weird bitwise operations or strings
L340[20:36:24] <Kristo​pher38> either of those would've been better
L341[20:36:58] <Z0id​berg> If I played the safe route I could do something like this
L342[20:37:03] <lunar_sam> bitwise ops are easy
L343[20:37:08] <Z0id​berg> They are easy yes
L344[20:39:34] <Z0id​berg> If I played the safe route I could do something like,:
L345[20:39:35] <Z0id​berg> Code Block pastebined https://paste.pc-logix.com/melovabolu
L346[20:39:37] <Z0id​berg> Seem a bit better?
L347[20:40:38] <Z0id​berg> 4095 nodes should technically be enough, I would think
L348[20:40:57] <Z0id​berg> After that you really should be routing between them as separate clusters.
L349[20:43:31] <Z0id​berg> I would have no problem implementing this.
L350[20:44:17] <Z0id​berg> On 64 bit compiled versions of Lua you would have 32 wasted bits, but honestly, why the heck do you need more than 65535 processes?
L351[20:44:30] <Z0id​berg> Just use two clusters at that point
L352[20:45:25] <Z0id​berg> 4095 * 65536 = 268369920 PIDs in a single cluster.
L353[20:45:32] <Z0id​berg> all maxed out
L354[20:45:48] <Z0id​berg> Which is two hundred sixty-eight million.
L355[20:45:48] <Z0id​berg> three hundred sixty-nine thousand.
L356[20:45:48] <Z0id​berg> nine hundred twenty.
L357[20:45:59] <Z0id​berg> (I threw it in number)
L358[20:46:21] <Z0id​berg> Yeah that's enough.
L359[20:47:34] <Z0id​berg> The node ID is only stamped on a process by the network router code anyways.
L360[20:47:44] <Z0id​berg> most of the times those bits will be blank
L361[20:55:15] <Kristo​pher38> do you have some background in scheduling theory btw?
L362[20:58:37] <Z0id​berg> Yes but this isn't x86 or anything, and I'm skipping a lot of ideas that have been in practice like the use of prioritization trees, etc. I mean this is Lua we're talking about. I am instead scheduling based on message queues, since I am more concerned about IPC than I am about process time.
L363[21:01:26] <Z0id​berg> It's more similar to BEAM scheduling
L364[21:02:42] <Kristo​pher38> i wish i knew what you're talking about
L365[21:03:48] <Forec​aster> A scheduler with a laser attached obviously
L366[21:04:01] <Izaya> Ocawesome101, Feris: usually one has OpenOS so grab the cpio from the page and uncpio from the forums and extract it to an empty disk
L367[21:06:32] <lunar_sam> i love how often `uncpio` gets used :v
L368[21:06:59] <Izaya> it's the simplest and lowest effort option availab
L369[21:07:02] <Izaya> le
L370[21:07:11] <Z0id​berg> @Kristopher38 Okay so schedulers typically have a prioritization queue of some sort, depending 100% on the OS and the CPU architecture and everything else. Lua doesn't have anything similar to hardware context switching, so we rely on coroutines to be nice and yield. Now, BEAM is the VM used for Erlang, and Trotwood's actor model is based on some principles from Erlang. With Lua, we give up a lot of cool stuff, so we simply scheduling more into
L371[21:07:11] <Z0id​berg> a trotwood friendly design where it is all about message queues. Simply put: If a process is waiting to receive a message, it does absolutely nothing until a message arrives. This has its own problems, but Trotwood can handle these.
L372[21:07:44] <lunar_sam> yeah
L373[21:07:46] <Z0id​berg> We could throw a priority scheduler in there, but for most tasks in Minecraft especially having a FIFO message triggered scheduler is perfctly fine.
L374[21:07:57] <lunar_sam> the cpio format and uncpio are both dead simple
L375[21:08:03] <lunar_sam> shrimple, even
L376[21:08:48] <Z0id​berg> We still need to be hopeful that users are nice and yield() though.
L377[21:09:00] <Z0id​berg> To help with this I have made it so that all messaging system calls yield anywyas.
L378[21:09:20] <lunar_sam> oh i had a priority scheduler for tsuki (and zorya'a scheduler might have priority iirc?)
L379[21:09:45] <lunar_sam> i think i ripped the tsuki sched and used it in zorya, but not sure
L380[21:09:46] <Z0id​berg> since most Trotwood processes rely heavily on messaging / Inter Process Communication, I have basically trapped users into forcing themselves to be nice and yield() by messaging other processes since you can't really do anything useful without doing that.
L381[21:09:56] <Z0id​berg> so it's kind of an abuse of the users
L382[21:10:06] <Z0id​berg> to trick them into being nice
L383[21:10:19] <Z0id​berg> somebody could still be a dick and just do while true do..
L384[21:10:26] <Z0id​berg> and just infinite loop
L385[21:10:36] <Z0id​berg> but that wouldn't benefit anyone would it
L386[21:10:43] ⇨ Joins: ben_mkiv (~ben_mkiv@2001:16b8:1ef6:9a00:fe34:97ff:fea9:75f2)
L387[21:11:05] <Z0id​berg> In order to message another process you have to ask the system to do it for you, and the system calls coroutine.yield() when you do that
L388[21:11:14] <Z0id​berg> forcing you to yield
L389[21:13:15] <Z0id​berg> The entire OS API is a yield based call too, so the argument to coroutine.yield() is actually a system call to perform.
L390[21:13:37] <Z0id​berg> It theoretically sends a message to process 0 behind the scenes
L391[21:13:41] <Z0id​berg> which is the scheduler itself.
L392[21:17:02] <Ocawes​ome101> both Cynosures do load-time yield injection
L393[21:17:06] <Z0id​berg> Basically, instead of iterating over processes it iterates over messages.
L394[21:17:07] <Z0id​berg> yeah
L395[21:18:03] <Ocawes​ome101> Though it does slow down loading somewhat and Cynosure 2's system calls yield (if necessary - either because the timeout was exceeded or the syscall is blocking) so it's less needed there
L396[21:18:14] <Kristo​pher38> i like the programming model
L397[21:18:17] <Z0id​berg> In Lua though
L398[21:18:22] <Z0id​berg> Does it really matter
L399[21:18:55] <Izaya> PsychOS just expects the user to be competent :^)
L400[21:18:56] <Z0id​berg> As a computer engineer if this was a realtime STM32 system or something I would be horrified
L401[21:19:28] <Z0id​berg> The downside though is that if you have a task process
L402[21:19:43] <Z0id​berg> lets say you want to create a task that reads from a socket and prints to the screen
L403[21:20:45] <Ocawes​ome101> See <https://github.com/oc-ulos/oc-cynosure-2/blob/dev/src/scheduler/preempt.lua&gt; for how cynosure 2 does preemption
L404[21:21:02] <Z0id​berg> Code Block pastebined https://paste.pc-logix.com/rabecuzeze
L405[21:21:02] <Z0id​berg> You may, depending on what getting data from the socket entails, need to yield() manually
L406[21:21:17] <Z0id​berg> however if the API is wrotten correctly then reading from the socket might just yield anyways
L407[21:21:23] <Z0id​berg> Depends
L408[21:21:42] <Z0id​berg> I may allow asyncronous filehandle and syncronous filehandle reading at the same time
L409[21:22:01] <Z0id​berg> and if syncronous filehandle reading is needed you may want to have a yieldless way to read it.
L410[21:22:09] <Z0id​berg> active sockets are better though
L411[21:22:25] <Ocawes​ome101> Cynosure 2 does not support asynchronous I/O
L412[21:22:52] <Z0id​berg> i.e.
L413[21:22:52] <Z0id​berg> Code Block pastebined https://paste.pc-logix.com/bocazewesa
L414[21:23:03] <Z0id​berg> then you don't have to worry about tasks and iteration
L415[21:23:07] <Z0id​berg> or yielding
L416[21:23:08] <Ocawes​ome101> For Lua / OC I didn't think it was useful enough to justify the complexity
L417[21:23:15] <Z0id​berg> Yeah
L418[21:23:31] <Z0id​berg> I much prefer asyncronous callback systems
L419[21:24:02] <Z0id​berg> You can always build syncronous on top of async anyways
L420[21:24:07] <Ocawes​ome101> True
L421[21:24:12] <Z0id​berg> and it is easier imo to do sync/async than async/sync
L422[21:24:18] <Z0id​berg> at leats less awkward
L423[21:24:22] <Z0id​berg> least*
L424[21:24:35] <Ocawes​ome101> Probably true
L425[21:25:01] <Z0id​berg> Syncronous implies issues like timeouts though
L426[21:25:33] <Z0id​berg> so perhaps then you'd have some sort of process library that watches syncronous messages for you and schedules timers
L427[21:25:54] <Z0id​berg> It gets complicated fast
L428[21:26:34] <Ocawes​ome101> Maybe. ULOS 2 is also very heavily Unix-like - even more so than og ULOS
L429[21:26:51] <Ocawes​ome101> Asynchronous stuff can just go in another thread :>
L430[21:26:57] <Z0id​berg> I personally don't like POSIX like systems so I completely avoided the unix-like chain
L431[21:27:01] <Z0id​berg> not that it has to be POSIX
L432[21:27:37] <Z0id​berg> I'll use them, but I have come to the understanding, as a developer myself that POSIX is just one standard that I see no benefit to adhere to other than being a general purpose system.
L433[21:27:44] <Z0id​berg> And I don't normally write general purpose systems
L434[21:28:16] <Ocawes​ome101> My primary goal was compatibility so having it be able to easily do LuaPosix was important - Cynosure v1's system API isn't low-level enough
L435[21:28:19] <Ocawes​ome101> Fair enough
L436[21:29:52] ⇦ Quits: lordpipe (~ba7888b72@66.109.211.50) (Ping timeout: 186 seconds)
L437[21:29:52] <Z0id​berg> I have after all this time though put tasks on the back burner and I kind of want them
L438[21:30:48] <Z0id​berg> tasks being processes that are just one shot things that get context switched instead of message queue based. They are useful for doing things on behalf of a server so that a server process can accept more messages and therefore create more tasks.
L439[21:31:07] <Z0id​berg> Problem is, you depend on a task which may not be awaiting messages to yield every so often
L440[21:31:43] <Z0id​berg> If trotwood doesn't wake up processes that have nothing to do, this has brought me to multiple ideas. One being that tasks have a custom yield that if you have no parameters passed ends up sending a blank message to itself?
L441[21:31:50] <Z0id​berg> meaning that it just gets added to the end of the queue
L442[21:32:13] <Z0id​berg> Another is to make the scheduler aware of tasks vs servers which I don't like.
L443[21:32:53] <Z0id​berg> I'd really like tasks and servers to just be end user programmer library code
L444[21:33:08] <Z0id​berg> meaning, here's some behavior and codebase framework for making processes that follow this style
L445[21:33:24] <Z0id​berg> allowing you to have processes that are effectively neither.
L446[21:47:11] <lunar_sam> i have to delve into zorya's source again one day
L447[21:47:21] <lunar_sam> but first i'll probably make either lcpio or a tsukinet implementation
L448[21:47:34] <lunar_sam> well first i have to write a sane TNv2 draft, but w/e
L449[21:48:05] <lunar_sam> so i stop having the good old "what the fuck am i doing" situation whenever i try to start this project again
L450[22:13:11] ⇨ Joins: lordpipe (~ba7888b72@66.109.211.50)
L451[22:21:57] ⇦ Quits: Vexatos (~Vexatos@port-92-192-99-179.dynamic.as20676.net) (Quit: Insert quantum chemistry joke here)
L452[23:14:11] ⇦ Quits: ben_mkiv (~ben_mkiv@2001:16b8:1ef6:9a00:fe34:97ff:fea9:75f2) (Killed (NickServ (GHOST command used by ben_mkiv|afk!~ben_mkiv@2001:16b8:1e89:1f00:fe34:97ff:fea9:75f2)))
L453[23:14:15] ⇨ Joins: ben_mkiv|afk (~ben_mkiv@2001:16b8:1e89:1f00:fe34:97ff:fea9:75f2)
L454[23:46:52] ⇦ Quits: Hawk777 (~chead@2607:c000:827f:f200:e6d6:d666:419e:8aef) (Quit: Leaving.)
<<Prev Next>> Scroll to Top