<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:00:04] <payonel> Izaya: i have this
hack_broken_rename() method i added to the fs driver to match oc
weirdness
L2[00:02:04] <payonel> specifically: // a
-> a/d should fail, but oc just deletes a
L3[00:08:01] <payonel> also,
hack_broken_dotdot() for isDirectory and exists, i think /.. on the
end of a path is ignored or dropped or something
L5[00:10:51] <Izaya> Good to see DX12 is
basically DOA
L6[02:02:20] *
Saphire licks Izaya
L7[02:02:27] <Saphire> Dead on arrival?
Yay
L8[02:02:37] <Izaya> /me nods
L9[02:02:55] <Izaya> Doesn't make much sense
to use when the performance is maybe 'as good' as vulkan and runs
on 1/10th of the platforms
L11[02:05:49] <Saphire> Izaya: ^
L12[02:07:33] <Izaya> That has to be some
of the best javascript I've seen in a while
L13[04:39:07] ⇨
Joins: Inari
(Inari!~Pinkishu@p4FC1E91C.dip0.t-ipconnect.de)
L14[04:43:49]
<Forecaster>
%loot
L15[04:43:49] <MichiBot> Forecaster: You
get a loot box! It contains a mermaid scale.
L16[05:02:13] ⇨
Joins: Vexatos
(Vexatos!~Vexatos@p200300C107179458567E07C489AA2DBE.dip0.t-ipconnect.de)
L17[05:02:13] zsh
sets mode: +v on Vexatos
L18[05:34:48] ⇦
Quits: Unh0ly_Tigg
(Unh0ly_Tigg!~Unh0ly_Ti@c-24-21-196-226.hsd1.or.comcast.net) (Quit:
Leaving)
L19[05:39:13] <Inari> %loot
L20[05:39:13] <MichiBot> Inari: You get a
loot box! It contains an eraser.
L21[05:47:41]
<Forecaster>
%shell
L22[05:47:41] *
MichiBot loads magic into a shell and fires it. It strikes the
ground near Keridos, greaser|q and mrkirby153. They each take 10
(8+2), 15 (13+2) and 10 (8+2) splash damage
respectively.
L23[06:34:01]
<Rami> Is it
possible to know if the wheat under the robot is fully grown or not
?
L24[06:36:55]
<Forecaster>
I don't think so
L25[06:49:43] ⇨
Joins: Dark
(Dark!~MrDark@2607:fcc8:d48b:eb00:9195:3408:2b27:30de)
L26[07:22:38]
<Forecaster>
I wonder if the aliens that supposedly come here to abduct people
ever fight over us
L27[07:23:00]
<Forecaster>
"I got here first, I get to abduct this hillbilly!"
L28[07:29:42] <S3> @Forecaster see Prey
1
L29[07:30:15] <S3> They didn't come here to
abduct us, they came here because we were ripe for the picking
after they planted us
L30[07:32:42] <S3> Izaya: it's
coming!
L32[07:32:52] <S3> Skye: ^
L33[07:32:52]
<Forecaster>
that's not really relevant
L34[07:33:19] <S3> I think it's very
relevant
L35[07:34:02] <Izaya> sounds v. similar to
uh
L36[07:34:06] <Izaya> Jupiter
Ascending?
L37[07:34:21]
<Forecaster>
my statement wasn't about why they come here
L38[07:39:39] <S3> Never seen it
L39[07:40:02] <S3> Izaya: What do you use
for your kernel builder, rememeber your little eeprom os thing?
forget the name
L40[07:40:11] <S3> I'm wondering if I
should do that to make my code cleaner
L41[07:40:24] <Izaya> For MultICE I had a
thing that would read config files and put together modules in a
specific order
L42[07:40:26] <Izaya> now I just use
cat
L43[07:40:30] <S3> oh yeah
L44[07:40:37] <S3> cat with a shell script
or something?
L45[07:40:45] <S3> I could do that
L46[07:40:53] *
Izaya nods
L47[07:40:59] <S3> @t20kdc actually has
this sort of tarball thing
L48[07:41:11] <S3> tars are huge
though
L49[07:41:15] <Izaya> shell script also
runs a minifier so I get both outputs
L51[07:41:40] <S3> I could also port
ar
L52[07:41:50] <S3> ar is an archive format
used for libraries on *nix that is extremely tiny
L53[07:41:54] <S3> the header is only bytes
really
L54[07:42:29] <S3> The challenge for ar is
that in order for an initrd to work you need to have filesystem
support
L55[07:42:36] <S3> and the filesystem stuff
are written using actors
L56[07:42:50] <S3> actors aren't part of
the kernel, the actors are loaded by the kernel
L57[07:43:09]
<Rami> Is
there any sleep function ?
L58[07:43:26] <S3> yes but it's not very
acurate
L59[07:43:37] <S3> so if you use it to
sleep miliseconds don't expect it to do very well
L60[07:43:55]
<Rami> What
is it ?
L61[07:44:17] <S3> os.sleep isn't it?
L64[07:44:41] <S3> there's also using
signals to do it
L65[07:45:00] <Izaya> Rami, do you mean in
OpenOS?
L66[07:45:35] <S3> I think it takes
seconds
L67[07:46:05] <S3> os.sleep(seconds:
number)
L68[07:46:16] <Skye> S3, CompanionCube: now
something rings a bell... x_x
L69[07:46:25] <S3> Skye: ?
L70[07:46:39] <Skye> Surnames? Idk
L71[07:47:48] <S3> surnames?
L72[07:47:56] <S3> what surnames
L73[07:54:04] <S3> Izaya: maybe I can trick
sed or something with comments in the source that are like: --[[
INCLUDE src/foo.lua ]]--
L74[07:54:15] <S3> oopsoops
L75[07:54:26] *
Izaya nods
L76[07:54:45] <Izaya> though I'd suggest
just using -- because having to type --[[ ]]-- is a pain
L77[07:54:48] <S3> more like --[[ INCLUDE
src/foo --]]
L79[07:54:58] <Izaya> I mean, both
work
L80[07:54:59] <S3> it was just a way to
prevent confusion
L82[07:55:06] *
Izaya nods
L83[07:55:08] <S3> Oh yeah I guess it
would
L84[07:55:11] <S3> because ]] works
L85[07:55:24] <Izaya> --[[ ]]-- looks nicer
to me so I use it even though you don't even need the --
L86[07:55:51] <S3> maybe something to make
it more obvious
L87[07:55:56] <S3> -- %INCLUDE
src/foo.lua
L88[07:58:17] <S3> or like I said I could
port ar and embed an initrd and a require() for it
L89[07:58:35] <S3> the nice thing about
that is better error reporting, right?
L90[08:08:13] <AmandaC> %choose code or
game or anime
L91[08:08:13] <MichiBot> AmandaC:
game
L92[08:18:19] <S3> The one thing annoying
about ar format is that it's not binary
L93[08:18:21] <S3> at all
L94[08:18:38] <S3> I have to convert ASCII
numbers into numbers
L95[08:18:57] ⇨
Joins: Thutmose
(Thutmose!~Patrick@host-69-59-79-181.nctv.com)
L96[08:24:32] ⇨
Joins: xandaros (xandaros!~xandaros@185.35.77.23)
L97[08:36:38] ⇦
Quits: Thutmose (Thutmose!~Patrick@host-69-59-79-181.nctv.com)
(Quit: Leaving.)
L98[08:40:43]
<Forecaster>
%loot
L99[08:40:43] <MichiBot> Forecaster: You
get a loot box! It contains a rosary.
L100[08:41:23]
<Forecaster>
well, at least I have 3 spirit hearts now
L101[08:53:12]
<Wuerfel_21>
yay my chair borke
L102[08:54:23]
<Wuerfel_21>
now i can't lean back because the part that holds back part will
bend so it will give in and wont come back up without bending it
back
L103[08:54:39]
<Forecaster>
I've had that happen
L104[08:55:01]
<Forecaster>
on my old chair one of the screws that anchored the backrest had
undone itself
L105[08:55:30]
<Forecaster>
as a result more weight was put on another screw, and all of a
sudden it got ripped out of the seat
L106[08:55:36]
<Forecaster>
causing me to fall backwards
L107[08:55:50]
<Forecaster>
that was fun
L108[08:56:50]
<Wuerfel_21>
The actual backrest is long broken, since it is fabric on top of
two metal bars. Me being me, i use the chair backwards sometimes,
resting my head on top of the backrest. At some point, one of the
bars started poking through the rest. mmmh
L109[08:57:09]
<Forecaster>
ohmy
L110[08:57:12] <S3> @Wuerfel_21 duct
tape
L111[08:57:32]
<Wuerfel_21>
As if i had duct tape
L112[08:57:35]
<Forecaster>
I fixed mine by buying a nearly identical chair and using the seat
from that to replace the one in mine
L113[08:57:46]
<Forecaster>
keeping the rest
L114[08:58:35] <S3> When my chair breaks
it's usually the part that holds the chair on the wheels
L115[08:58:45]
<Wuerfel_21>
i live far away from any kind of retail business and my POS dad is
to greedy to buy enough food
L116[08:58:46] <S3> so the wheels usually
go flying and I fall on the ground with the top part
L117[09:00:05] <Skye> Erk
L118[09:00:45]
<Forecaster>
I removed the wheels after I fixed it
L119[09:00:58] <S3> well I only weigh like
160 so when the chair gives it gives really bad
L120[09:01:00]
<Forecaster>
because I realized that I don't want or need the chair to
move
L121[09:01:41]
<Forecaster>
160 what?
L122[09:01:53] <S3> pounds
L123[09:02:06]
<Forecaster>
ah, that's way less than me
L124[09:09:39] <S3> I have this problem
where I can eat all day long constantly and I will always be 6 feet
160 pounds
L125[09:09:54] <S3> my mother is the same
way, metabolism never slowed down
L126[09:10:23] *
Izaya is mildly underweight
L127[09:10:32] <Izaya> apparently 6'1 and
60kg isn't something you want
L128[09:11:09] <S3> no that's like 130
lbs
L129[09:11:16] <S3> that's way too light
for 6'
L130[09:11:24] *
Izaya nods
L131[09:11:24]
<Rami> How
can I terminate a running program ?
L132[09:11:30] <Izaya> ctrl-c
L133[09:11:36] <Izaya> or ctrl-alt-c if
that doesn't work
L134[09:12:53]
<Forecaster>
I weigh about 90 right now
L135[09:13:16]
<Forecaster>
that's 198 pounds
L136[09:16:34] <S3> curious if this bot
has 5.3
L137[09:16:40] <S3> %lua
"123456" | 0
L138[09:16:40] <MichiBot> main:1:
unexpected symbol near '"123456"'
L139[09:16:43] <S3> nope.
L140[09:16:59] <S3> cool trick I was shown
in #lua
L141[09:17:12] <S3> it coerces a srring
number into an integer
L142[09:17:32] <S3> but it needs 5.3
L143[09:17:46] <S3> you can still use
tonumber but | 0 is faster
L144[09:17:56] <S3> both to type and
faster in terms of performance
L145[09:24:29] <Izaya> %lua return
_VERSION
L146[09:24:30] <MichiBot> Lua 5.2
L147[09:47:12] <AmandaC> %lua _VERSION =
"MichiLua 9001.4"
L148[09:47:19] <AmandaC> %lua return
_VERSION
L149[09:47:19] <MichiBot> MichiLua
9001.4
L150[09:47:23] <AmandaC> :D
L151[09:47:32] <Vexatos> %sel
_VERSION
L152[09:47:32] <MichiBot> MichiLua
9001.4
L153[09:48:02] <LeshaInc> %lua return
"12345" - 0
L154[09:48:02] <MichiBot> 12345
L155[09:48:38]
<Wuerfel_21>
%lua while true do _G=nil end
L156[09:48:42] <MichiBot> script took too
long
L157[09:53:26] <Inari> Hm
L158[09:53:35] <Inari> I often see anime
chars described as "gothloli"
L159[09:54:04] <Inari> But when then
actually looking at gothic lolita dresses they look quite
different. The anime chars thus look more like what I'd call
Aristocrat. But Aristocraft Lolita dresses also don't quite fit
:P
L160[09:55:09]
<Rami> How
can I make the program wait for the user to press any button
?
L161[09:55:29] <Inari> pull a keyboard
event I guess
L162[09:55:43]
<Forecaster>
event.pull("key_down")
L163[09:55:43] <Inari> ~oc signals
L165[09:55:51] <Inari> What the cat
said
L166[09:56:06]
<Rami> I
have to require the event library iirc
L167[09:56:13] <Inari> Yes
L168[09:56:38]
<Rami>
Thanks
L169[09:59:32] ⇦
Quits: jackie (jackie!~jackie@irc.chaosfield.at) (Remote host
closed the connection)
L171[10:01:30] <MichiBot> Fri May 25
07:57:20 CDT 2018 @BlakeNorthcott: Wait, I didn't know that EA was
running #MegaCon?!
https://t.co/AryelIpd1e
L172[10:26:27]
⇨ Joins: PopoCapo
(PopoCapo!webchat@85.26.165.247)
L173[10:27:23] ⇦
Parts: PopoCapo (PopoCapo!webchat@85.26.165.247) ())
L174[10:28:20]
⇨ Joins: PopoCapo
(PopoCapo!webchat@85.26.165.247)
L175[10:29:25] ⇦
Parts: PopoCapo (PopoCapo!webchat@85.26.165.247) ())
L177[11:20:55]
⇨ Joins: ben_mkiv
(ben_mkiv!~ben_mkiv@p57972184.dip0.t-ipconnect.de)
L178[11:23:42]
⇨ Joins: Cervator
(Cervator!~Thunderbi@2601:4c1:4001:1d5d:a801:1ca2:434:1aaa)
L180[11:57:20] <MichiBot>
Living with
My Voice | length:
7m 59s | Likes:
71,272 Dislikes:
1,577 Views:
1,143,579 | by
Wolfychu | Published On 20/5/2018
L181[12:07:06]
<20kdc>
someone tried and failed to ping me: S3
L182[12:07:19]
<20kdc> that
is, S3 was the one who tried and failed to ping me.
L183[12:08:12]
<20kdc>
also, S3: my solution to TARs being huge is to compress them.
L184[12:27:54]
⇨ Joins: be (be!~be@95.187.109.180)
L186[12:29:21] ⇦
Quits: be (be!~be@95.187.109.180) (Client Quit)
L187[12:31:32] <Izaya> about 1:30
L188[12:31:42] <Izaya> better than
most
L189[12:35:41] <Inari> Skye: Just gotta go
all in on it with Lolita outfits :P
L190[12:39:30] <Skye> Inari, lol(i)
L195[13:20:41] <MichiBot>
Stop
thief! | length:
1m 35s | Likes:
2,762 Dislikes:
7 Views:
19,917 | by
ArchD n'
Bacon_ | Published On 24/5/2018
L196[13:23:24] <payonel> Inari: haha, the
best is at the end: "How are you?", "Not
bad"
L197[13:23:27] <Inari> :D
L198[13:23:28] <Inari> Yeah
L199[13:23:51] <Inari> I was half waiting
for the guard to accidentally whack the khajiit, but I don't think
thats how that works in the game
L200[13:24:09] <Inari> @Wuerfel_21 Well, I
like the name
L202[13:33:50] <MichiBot>
LGR Oddware
Follow-up: "The Timer" X10 System Controller |
length:
10m 10s | Likes:
1,972 Dislikes:
11 Views:
17,824 | by
LGR |
Published On 25/5/2018
L203[13:33:52]
<Forecaster>
dat bootup
L204[13:34:36]
<MGR> I saw
LGR, and at first I thought it was me, then I thought it was
knockoff me, then I realized what it was
L205[13:57:34]
<Wuerfel_21>
The eternal king of woodgrain
L207[14:09:13] <MichiBot> XKCD Comic Name:
GDPR Posted on: 5/25/2018
L208[14:40:13] <S3> @20kdc yeah but ar is
much simpler
L209[14:42:20]
<Rami> Is it
possible to use keyboard input while no having the screen open
?
L210[14:42:40]
<Rami>
Because I want to implement somekind of a hologram editor
L211[14:43:04]
<Forecaster>
uh
L212[14:43:08]
<Forecaster>
I don't think so
L213[14:44:04] <ben_mkiv> theres
holoedit?!
L214[14:45:09] <Izaya> Paging @20kdc
L215[14:46:05]
<20kdc>
mew?
L216[14:46:16]
<20kdc> why
was I paged
L217[14:46:24]
<20kdc> and
who uses pagers nowadays
L218[14:46:28]
<20kdc> why
do I even *have this*
L219[14:46:34]
<20kdc>
%launch pager
L220[14:46:44]
<20kdc>
...randomly guessing command names does not work
L221[14:46:48]
<20kdc>
that's a shame
L222[14:46:49] <S3> cell phones don't make
sense in my state
L223[14:47:32] <S3> %inv add
hamradio
L224[14:47:32] *
MichiBot summons 'hamradio' and adds to her inventory. I could get
some good swings in with this.
L225[14:47:45] <S3> %give 20kdc
hamradio
L226[14:47:45] *
MichiBot gives 20kdc hamradio from her inventory
L227[14:47:51] <Inari> %inv add a blue
apple
L228[14:48:00] <Inari> %inv add a blue
apple
L229[14:48:05] <Inari> %inv add a blue
apple
L230[14:48:05] *
MichiBot summons 'a blue apple' and adds to her inventory. This
seems very sturdy.
L232[14:48:26] <S3> % inv add an apple
II
L233[14:48:31] <S3> %inv add an apple
II
L234[14:48:38] <S3> %inv add an apple
II
L235[14:48:38] *
MichiBot summons 'an apple II' and adds to her inventory. This
seems very sturdy.
L236[14:49:54] <S3> If MichiBot summoned
an army of Inaris
L237[14:50:02] <S3> would it be called an
Inariarmi?
L238[14:51:34] <Inari> Inarmi
L240[15:35:53]
<MGR> 100%
accurate
L241[15:41:27]
<MalkContent> that touches my soul
L243[16:00:47] ⇦
Quits: Xal (Xal!~Xal@S010664777dabacc3.vw.shawcable.net) (Ping
timeout: 202 seconds)
L244[16:01:56]
⇨ Joins: Xal
(Xal!~Xal@S010664777dabacc3.vw.shawcable.net)
L245[16:22:56]
⇨ Joins: begad (begad!~begad@95.187.109.180)
L246[16:23:51] <begad> hi
L247[16:24:13] <begad> hello???
L248[16:24:30] <begad> Bye
L249[16:24:35] ⇦
Quits: begad (begad!~begad@95.187.109.180) (Client
Quit)
L250[16:24:53]
<MGR> Sorry
I didn't respond instantly
L251[16:25:03]
<Forecaster>
no you're not!
L252[16:25:12]
<Forecaster>
you dirty dirty liar!
L253[16:26:08]
<MGR>
True
L254[16:26:17]
<MGR> I was
lying in this case ?
L255[16:52:36]
<Marcel>
Hey, what is needed to draw smth. on the monitor e. g. a diagram or
smth. similar?
L256[16:52:44]
<Marcel>
maybe a graph if this works?
L257[16:53:55]
⇨ Joins: Placid
(Placid!webchat@ip-109-40-1-90.web.vodafone.de)
L259[16:54:57] <Placid> Hey.. I have a
problem.. OpenCoputers related obviesly (not bootable medium found:
/init.lua)
L260[16:55:48] <AmandaC> Placid: that
means there's no installed OS
L261[16:56:14] <Placid> I got it out of
the creative inventory.. still nothing on it?
L262[16:57:30] <AmandaC> place a disk
drive (or use a T3 case) and place an OpenOS disk in it, then run
`install`
L263[16:58:38] <Placid> (hear_eye_emojy)
:* Thx :)
L264[17:02:51] <AmandaC> %give MichiBot
Inari's Soul with a lost and found tag stick on it
L265[17:02:51] *
MichiBot accepts Inari's Soul with a lost and found tag stick on it
and adds it to her inventory
L267[17:07:10] <AmandaC> Oh, that's why
the link didn't seem to open
L268[17:07:14] <AmandaC> It's a .ogg
L269[17:07:17] <AmandaC> I was expecting a
photo
L270[17:07:49] <Corded> *
<Wuerfel21> _would post a FLAC, but thats too big
L271[17:08:50] *
AmandaC just rm-d them from her ~/Download, as she's listening to
podcasts, and will surely forget by a hour and a half when she's
done the episode
L272[17:18:22] ⇦
Quits: Placid (Placid!webchat@ip-109-40-1-90.web.vodafone.de)
(Quit: webchat.esper.net)
L273[17:38:28] ⇦
Quits: xandaros (xandaros!~xandaros@185.35.77.23) (Read error:
-0x1: UNKNOWN ERROR CODE (0001))
L274[18:18:46]
<joaoadao>
hello ?
L275[18:20:23]
<MGR>
Hello
L276[18:20:59]
<joaoadao>
you know how to install the kitten os?
L278[18:40:58]
<joaoadao>
the correct is apu
L279[18:41:06]
<joaoadao>
but the translation is upa
L280[18:41:07]
<joaoadao>
wtf
L281[18:49:07]
<joaoadao>
@Marcel oh god this reactor generates 240eu
L282[18:58:24]
⇨ Joins: Doty1154
(Doty1154!~Doty1154@c-73-189-164-179.hsd1.ca.comcast.net)
L283[18:58:58]
<joaoadao>
hello doty
L284[19:05:22]
⇨ Joins: SF-MC
(SF-MC!~EiraIRC@131-191-86-130.as.clicknet.org)
L285[19:16:33] ⇦
Quits: Inari (Inari!~Pinkishu@p4FC1E91C.dip0.t-ipconnect.de) (Quit:
'From one thing, know tenthousand things.' - Hanzo
(Overwatch))
L286[19:33:20] <peelz> Payonel, I can't
figure out how to make threads work with the rc start() stop()
functions.
L287[19:34:03] <peelz> When I asked about
rc scripts having a process of their own, I remember you telling me
that the thread API was what I looking for.
L288[19:35:07] <peelz> Should I just wrap
the entire rc script in a thread and assign the start and stop
functions through a closure?
L289[19:48:15] <peelz> payonel, you
there?
L290[19:51:12] <peelz> actually nvm what I
said above, I have no idea how to expose start and stop functions
from another process.
L291[19:54:09]
⇨ Joins: ben_mkiv|afk
(ben_mkiv|afk!~ben_mkiv@p4FED5F1F.dip0.t-ipconnect.de)
L292[19:56:55] ⇦
Quits: ben_mkiv (ben_mkiv!~ben_mkiv@p57972184.dip0.t-ipconnect.de)
(Ping timeout: 202 seconds)
L293[19:57:02]
⇨ Joins: Thutmose
(Thutmose!~Patrick@host-69-59-79-181.nctv.com)
L294[20:15:20] ⇦
Quits: Vexatos
(Vexatos!~Vexatos@p200300C107179458567E07C489AA2DBE.dip0.t-ipconnect.de)
(Quit: Insert quantum chemistry joke here)
L295[20:50:37] <AmandaC> peelz: start()
would thread.create a thread, stop() would call :kill on the
thread, then you'd have a normal event pump inside the function you
passed to thread.create
L297[20:53:00] <peelz> Does the process
live on?
L298[20:53:41] <AmandaC> the function you
pass to thread.start *is* the "process"
L299[20:53:58] <AmandaC> It shouldn't be
returning until it's done running
L300[20:54:38] <peelz> I'm only using the
process so that I can swap its window
L301[20:55:59] <peelz> lib.start()
registers event listeners (i.e. event.listen())
L302[20:56:28] <peelz> what happens to the
process reference when the listener is called?
L303[20:57:25] <AmandaC> ... what?
L305[20:57:55] <AmandaC> Sorry, I'm
confused, my brain's off for awhile now. think I'll go back to
playing Yonder
L306[20:58:06] <peelz> my bad, probably
just bad wording lol
L307[20:58:14] <peelz> If there's no
message pump, what happens to the event listeners?
L308[20:58:36] <peelz> * when the thread
terminates
L309[21:00:06] <peelz> do I need to
convert my event listeners into a "blocking" event.pull()
loop?
L310[21:00:36] <AmandaC> When the thread
teminates the events are un-listened
L311[21:00:44] <peelz> ah
L312[21:01:38] <peelz> yeah I kinda just
solved. I guess I'll convert my event.listen()'s into a single
event.pull()
L313[21:01:44] <peelz> for the
thread
L314[21:01:59] <peelz> * it
L315[21:02:03] <peelz> holy shit I can't
English tonight
L316[21:06:03] ⇦
Quits: SF-MC (SF-MC!~EiraIRC@131-191-86-130.as.clicknet.org)
(Remote host closed the connection)
L317[21:25:01] ⇦
Quits: ben_mkiv|afk
(ben_mkiv|afk!~ben_mkiv@p4FED5F1F.dip0.t-ipconnect.de) (Ping
timeout: 194 seconds)
L318[21:32:19] ⇦
Quits: Thutmose (Thutmose!~Patrick@host-69-59-79-181.nctv.com)
(Quit: Leaving.)
L319[21:47:19] ⇦
Quits: Cervator
(Cervator!~Thunderbi@2601:4c1:4001:1d5d:a801:1ca2:434:1aaa) (Quit:
Cervator)
L321[21:50:16]
⇨ Joins: Wiiplay123
(Wiiplay123!~Wiiplay12@adsl-72-154-27-141.bna.bellsouth.net)
L322[22:43:45] <payonel> peelz: poke
L323[22:43:51] <peelz> o/
L324[22:44:05] <payonel> AmandaC: you
rock, thanks for helping out
L325[22:44:30] <payonel> peelz: just like
amanda said, when your thread returns, your daemon is
done/dead
L326[22:44:47] <payonel> and join would
block your rc start() from finished until said thread was
dead
L327[22:45:27] <peelz> right
L328[22:45:57] <peelz> The reason I was
using join there is because I expected the event listeners to
persist after the thread's termination
L329[22:46:19] <payonel> any event
registrations you make in a thread are local to that thread
L330[22:46:31] <peelz> right
L331[22:46:37] <payonel> also, if your
thread is dead, you have no process
L332[22:46:40] <payonel> which is what you
wanted
L333[22:46:51] <peelz> I think so
yeah
L334[22:46:52] <payonel> your thread
function _is_ your process
L335[22:46:59] <payonel> also exactly what
amanda said :)
L336[22:46:59] <peelz> I figured I needed
to make a couple changes to the way my daemon lib to fix that
L337[22:47:16] <payonel> once you're
inside a thread, you can pretend there is no one else to care
about
L338[22:47:22] <payonel> you can put in a
blocking loop
L339[22:47:31] <payonel> and run
forever
L341[22:48:10] <peelz> my
lib.start()/lib.stop() functions returned extra messages for the rc
methods to print, but I got rid of that since I can't possibly
return extra info with a blocking event.pull()
L342[22:48:23] <AmandaC> Meow?
L343[22:48:31] <peelz> meow
L344[22:48:38] *
AmandaC yawns, stretches, curls up for bed
L345[22:48:40] <AmandaC> night nerds
L346[22:48:43] <peelz> lol night
L347[22:48:53] <payonel> peelz: inside a
thread function you can block all you want
L348[22:49:22] <Izaya> o/
L349[22:51:43] <peelz> payonel, well not
really since if the thread doesn't yield, it blocks the entire
scheduler, right?
L350[22:52:19] <AmandaC> peelz: pretty
much anything event based will be yielding, tho
L351[22:52:31] <peelz> right
L352[22:53:50] <payonel> peelz: no
L353[22:53:52] <payonel> threads are
special
L354[22:54:02] <payonel> if you read the
thread docs.... :)
L356[22:54:12] <peelz> payonel, so yeah...
I got rid of the return values (oh well) and replaced the
event.listen() with a ̀`while running do
onEvent(event.pull())`
L357[22:54:37] <peelz> but doesn't
os.sleep(0) yield?
L358[22:55:01] <payonel> again, once you
are inside your thread function, you can stop thinking about the
rest of the system
L359[22:55:01] <peelz> kinda like
setTimeout(fn, 0) in JS?
L360[22:55:10] <payonel> pretend you are
writing code that never needs to leave the function
L361[22:55:16] <payonel> i dont know
js
L362[22:55:20] <payonel> i'm a c++
dev
L363[22:55:22] <peelz> ah
L364[22:56:33] <peelz> well setTimeout(fn,
0) makes it so that fn executes as soon as possible, but without
blocking
L365[22:56:47] <peelz> it just adds fn to
the event loop
L366[22:58:15] <payonel> from the context
of your thread, there need not be any other process in the
system
L367[22:58:23] <payonel> when your thread
function returns, your thread is dead
L368[22:58:34] <payonel> so don't return
unless you have no work to ever do again
L369[22:58:39] <peelz> yup, got that
L370[22:59:28] <payonel> as far as OC is
concerned, you have to yield (sleep, pullSignal, event.pull, etc)
in your thread function at least once every 5 seconds
L371[22:59:39] <payonel> which is no
different than writing scripts that aren't in threads
L372[23:00:17] <peelz> what happens if an
call blocks for 4 seconds?
L373[23:00:21] <peelz> Does the entire OS
freeze for 4s?
L374[23:01:24] <payonel> yes, because
threads in openos don't execute in parallel
L375[23:01:38] <payonel> but you
personally don't need to manage what process is running next, or
which thread
L376[23:01:42] <payonel> that's what the
os does for you
L377[23:02:02] <peelz> right, that's the
scheduler part
L378[23:02:08] <payonel> and just like
calling event.pull in your user program, you expect to get the next
event
L379[23:02:26] <payonel> you have the same
guarantees in a thread
L380[23:02:32] <payonel> it is as if you
have multiple sub systems
L381[23:02:47] <payonel> but ideally, you
don't think too hard about these things
L382[23:03:07] <payonel> you just write
the code as if you were writing a normal user level script. that
can use io, block for events, or anything it wants
L383[23:03:45] <payonel> but note, once
your thread is dead, anything you added to the event system is also
dead
L384[23:03:54] <payonel> just like a fully
enclosed sub system
L385[23:04:05] <payonel> that is also
detailed in the docs
L386[23:04:08] <payonel> ~w thread
L388[23:04:19] <peelz> yeah I read the
docs
L389[23:05:46] <peelz> The reason I got
stuck is because I was registering event listeners using
event.listen (without blocking) and I returned (synchronously)
various messages for the rc script to print (e.g. 'Started
[whatever] listener...'), and that worked fine for my other
projects...
L390[23:06:43] <peelz> but since I have to
run this one inside a thread, I can't really return messages from
the thread's function (not synchronously at least), unless I use
some pubsub API
L392[23:09:10] <payonel> also, the
event.listeners you create in the thread are dead once the thread
returns or joins
L393[23:09:33] <peelz> yeah I get that, so
that's why I can't do event.listen()
L394[23:09:50] <payonel> well you can :)
just don't return from the thread
L395[23:09:57] <payonel> it's almost like
you have a little os inside there
L396[23:10:00] <peelz> lol
L397[23:10:06] <payonel> once your thread
returns, your world is gone
L398[23:10:10] <peelz> yup
L399[23:10:39] <peelz> I mean it'll only
exit once I tell it to (i.e. `handle:kill()`)
L400[23:10:46] <peelz> via stop()
L401[23:11:22] <payonel> because it is a
thread, your start() is non blocking. that makes sense, yes?
L402[23:11:30] <peelz> yup
L403[23:11:42] <payonel> and your kill()
will stop your thread for you, which is also why you can use an inf
loop inside the thread
L404[23:11:54] <peelz> Yeah I get
that
L405[23:11:57] <payonel> coo
L406[23:12:02] <peelz> :P
L407[23:13:48] <payonel> well, sounds like
you've made good progress
L408[23:13:54] <payonel> i'll be gone for
a bit. good luck
L409[23:14:16] <peelz> yeah I've been
working on it a little bit a time
L410[23:14:20] <peelz> alrighty
L411[23:17:02] <peelz> %tell payonel on my
old 1.7.10 server, I used to get this weird bug where the remote
terminal would display a black screen if I were to bind it to a
different terminal server, at least until I rejoined the server. Is
that still a thing/do you know anything about that bug?
L412[23:17:02] <MichiBot> peelz: payonel
will be notified of this message when next seen.
L414[23:40:57] <peelz> Izaya: you should
consider using a different webm host. My AV really doesn't like
that website.
L415[23:41:06] *
Izaya shrugs
L416[23:41:27] <Izaya> IIRC it allows
uploading of exes, and haruhi forbid you do that!
L417[23:42:15] <Izaya> In all seriousness,
I'll be getting better home internet soon(TM) so hopefully I'll be
able to do it all myself.
L418[23:42:25] <peelz> Awesome.
L419[23:42:55] <Izaya> 50/25 for $50/month
isn't bad for here.
L420[23:43:09] <peelz> That's pretty good
actually
L421[23:43:11] <peelz> Better than what I
have lol
L422[23:43:35] <Izaya> I mean, it's a
joke.
L423[23:43:42] <Izaya> We were meant to
have gigabit fibre by now.
L424[23:43:45] <Izaya> But such is
life.
L425[23:44:00] <Izaya> Anyway, does your
AV complain similarly about mixtape.moe and pomf.cat?
L426[23:44:02] *
peelz shrugs
L427[23:44:18] <peelz> not mixtape.moe
AFAIK
L428[23:44:27] <peelz> hmm
L429[23:44:30] <Izaya> alright, I'll use
that in future
L430[23:44:37] <Izaya> it has some weird
connection issues but I'll live with that
L431[23:44:45] <peelz> it doesn't block
pomf.cat but as soon as I open pomf.cat, it complains about
a.pomf.cat lol
L432[23:45:00] <Izaya> ah, a.pomf.cat is
where the actual files go
L433[23:45:03] <peelz> lol
L434[23:45:10] <Izaya> nice
L435[23:45:40] <Izaya> man it's a pain,
pomf sites are a service to the community and all AV vendors do is
try to shut them down :|
L436[23:45:46] <peelz> :(
L437[23:46:03] <peelz> How long do they
host files for?
L438[23:46:09] <Izaya> Depends on the
host.
L439[23:46:15] ⇦
Quits: SuperCoder79
(SuperCoder79!uid276919@id-276919.brockwell.irccloud.com) (Quit:
Connection closed for inactivity)
L440[23:46:15] <peelz> what about
pomf?
L441[23:46:27] <Izaya> Some have a set
time limit like 24 hours, others like mixtape host till they run
out of space
L442[23:47:46] <Izaya> pomf.cat is no set
time limit by the looks
L443[23:47:50] <peelz> cool
L444[23:48:23] <peelz> My AV blocks
pyonpyon.moe for 'Potential phishing attempt'
L445[23:48:31] <Izaya> also notable: it
has an ad on it. the ad is a gif image linking to somewhere. no
javascript neccesary. incredible.
L446[23:48:52] <peelz> and same message
for a.pomf.cat
L447[23:49:00] <Izaya> huh
L448[23:49:08] <peelz> maybe these hosts
have been used for phising/malicious purposes before.
L449[23:49:14] <Izaya> oh definitely
L450[23:49:24] <peelz> that's probably why
they're blacklisted
L451[23:49:25] <Izaya> they're pretty much
no rules beyond no cheese pizza
L452[23:49:30] <peelz> lol
L453[23:49:43] <Izaya> and I appreciate
that significantly
L454[23:50:04] <Izaya> I wonder if
lainfile is still up...
L455[23:50:26] <Izaya> it is not
L456[23:50:30] <peelz> rip
L457[23:50:50] <Izaya> it was on a .pw
domain and I'm pretty sure that entire TLD is blacklisted by AV
vendors
L458[23:51:20] <peelz> o.o?
L459[23:51:24] <peelz> why is that?
L460[23:51:51] <Izaya> unsure
L461[23:51:55] <Izaya> perhaps it was
cheap and didn't require signficant ID to register a domain on
it
L462[23:51:59] <peelz> that's really
fucking weird
L463[23:52:17] <Izaya> perhaps there were
just more malicious sites than anything else on there
L464[23:52:33] <Izaya> vifino: Druaga1 did
a TempleOS video.
L465[23:53:47] <Xal> use teknik.io
L467[23:54:13] <MichiBot>
TempleOS
| length:
42m 11s | Likes:
134 Dislikes:
1
Views:
1,050 | by
Druaga1 | Published On
26/5/2018
L468[23:58:04] <Izaya> '98MB of 497MB
(101KB/s) - A few seconds remaining'
L469[23:58:12] <Izaya> haiku go home
you're drunk
L470[23:59:58]
<joaoadao>
hello