00:00:00 --- log: started forth/18.07.24 00:43:35 --- quit: proteusguy (Remote host closed the connection) 01:00:40 --- join: ncv (~neceve@90.207.222.160) joined #forth 01:00:41 --- quit: ncv (Changing host) 01:00:41 --- join: ncv (~neceve@unaffiliated/neceve) joined #forth 01:09:09 --- join: wa5qjh (~quassel@175.158.225.216) joined #forth 01:09:09 --- quit: wa5qjh (Changing host) 01:09:09 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 01:16:47 --- join: proteusguy (~proteus-g@14.207.1.113) joined #forth 01:16:47 --- mode: ChanServ set +v proteusguy 01:30:51 --- join: leaverite (~quassel@175.158.225.211) joined #forth 01:30:51 --- quit: leaverite (Changing host) 01:30:51 --- join: leaverite (~quassel@freebsd/user/wa5qjh) joined #forth 01:33:18 --- quit: wa5qjh (Ping timeout: 256 seconds) 01:34:40 --- join: wa5qjh (~quassel@175.158.225.197) joined #forth 01:34:41 --- quit: wa5qjh (Changing host) 01:34:41 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 01:35:15 --- quit: leaverite (Remote host closed the connection) 02:09:03 --- quit: wa5qjh (Remote host closed the connection) 02:10:54 --- join: wa5qjh (~quassel@175.158.225.197) joined #forth 02:10:55 --- quit: wa5qjh (Changing host) 02:10:55 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 03:57:46 --- join: gravicappa (~gravicapp@h178-129-126-126.dyn.bashtel.ru) joined #forth 03:58:09 So what do they like? Do they want there to be a set of user space drivers/ daemons sitting between applications and the kernel? 03:58:39 In theory it seems that *something* outside the kernel has to talk to the kernel. :-) 03:59:18 I found this list, which is pretty nice as far as it goes: 03:59:20 https://sigsegv.pl/osx-bsd-syscalls/ 04:00:22 --- quit: proteusguy (Remote host closed the connection) 04:00:46 Have you ever seen anything that documents those beyond just the call? 04:01:20 I've been able to use that list I just linked to do a number of things, but I have to be able to "infer" what the call's going to do and what the parameters must mean. 04:01:31 The more involved ones I really have no idea how to approach. 04:02:25 I've madeuse of syscall 1 (exit), 3 (read), 4 (write), 5 (open), and 54 (ioctl). 04:03:33 At the moment I'd like to figure out how to do a timer, so I can use time interval to distinguish between keystroke sequences that involve me typing Escape and the extended key codes that are strings starting with Escape. 04:05:13 Syscalls 83 and 86 look like they might be appropriate. 04:37:25 --- join: [1]MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 04:40:24 --- quit: MrMobius (Ping timeout: 256 seconds) 04:40:25 --- nick: [1]MrMobius -> MrMobius 04:53:23 --- quit: wa5qjh (Remote host closed the connection) 05:36:14 --- join: [X-Scale] (~ARM@46.50.2.28) joined #forth 05:36:35 --- quit: X-Scale (Ping timeout: 244 seconds) 05:36:42 --- nick: [X-Scale] -> X-Scale 06:01:56 --- quit: pierpal (Quit: Poof) 06:02:14 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 06:13:47 --- join: proteusguy (~proteus-g@cm-134-196-84-63.revip18.asianet.co.th) joined #forth 06:13:47 --- mode: ChanServ set +v proteusguy 06:19:26 --- quit: pierpal (Read error: Connection reset by peer) 06:19:39 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 06:26:22 --- quit: pierpal (Ping timeout: 256 seconds) 06:45:46 Xnu (macos kernel) is based on mach (microkernel) and bsd. IOKit is a framework for userspace drivers. (C++) 07:08:47 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 07:20:25 --- quit: pierpal (Ping timeout: 260 seconds) 07:37:11 I see. So they want us to work with IOKit, then. 07:37:29 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 07:41:50 --- quit: pierpal (Read error: Connection reset by peer) 07:43:04 Geez. That looks like a nightmare. 07:43:19 I started seeing "object oriented framework" before I was 30 seconds into it. 07:44:58 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 07:45:25 We've just really fouled up our "world approach" to software. 07:48:30 I have a pdf of a book that goes into detail on the macos kernel internals; I can pm a link if you’d like 07:48:59 internet piracy!!!! 07:49:19 --- quit: pierpal (Ping timeout: 264 seconds) 07:49:38 zy]x[yz: It’s out of print :( 07:52:41 crc: That would be great, thank you very much. 08:01:05 Link posted via privmsg 08:02:46 Got it, thank. 08:19:36 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 08:33:43 --- quit: pierpal (Ping timeout: 264 seconds) 08:37:19 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 08:41:13 --- quit: pierpal (Read error: Connection reset by peer) 08:56:55 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 09:03:07 --- quit: pierpal (Read error: Connection reset by peer) 09:20:55 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 09:27:34 --- quit: pierpal (Ping timeout: 248 seconds) 09:31:59 --- quit: ncv (Ping timeout: 256 seconds) 09:40:10 --- join: karswell (~user@cust125-dsl91-135-5.idnet.net) joined #forth 09:43:43 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 09:54:29 --- quit: pierpal (Read error: Connection reset by peer) 09:59:19 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 10:02:14 --- quit: pierpal (Read error: Connection reset by peer) 10:07:19 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 10:11:54 --- quit: pierpal (Ping timeout: 256 seconds) 10:22:15 --- join: dys (~dys@tmo-109-164.customers.d1-online.com) joined #forth 11:02:24 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 11:13:42 --- quit: pierpal (Ping timeout: 248 seconds) 11:17:37 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 11:21:26 --- quit: gravicappa (Ping timeout: 240 seconds) 11:22:04 --- quit: pierpal (Ping timeout: 256 seconds) 11:25:26 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 11:27:21 --- quit: pierpal (Read error: Connection reset by peer) 11:42:36 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 12:05:39 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 12:30:48 --- quit: pierpal (Quit: Poof) 12:31:06 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 12:57:19 --- quit: pierpal (Quit: Poof) 12:57:37 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 14:09:28 --- join: pierpa (570bd08d@gateway/web/freenode/ip.87.11.208.141) joined #forth 14:58:53 Ok, did some timing tests. I wrote a simple countdown loop in GForth. Starting with a count of 10 billion, it took 125 seconds. So 12.5 ns per iteration. 14:59:21 I wrote that in my Forth. I was guessing at how GForth would have compiled it - I didn't inspect it to see. But it was pretty straightforward. 14:59:39 Mine took 129 seconds -> 12.9 ns per iteration. 14:59:45 I considered that a pretty good comparison. 15:00:01 Then I re-wrote the same logic, using my "best primitives." 15:00:12 That took just 45 seconds for 10 billion, 4.5 ns/iteration. 15:04:18 --- quit: Zarutian (Ping timeout: 256 seconds) 15:07:02 --- join: Zarutian (~zarutian@173-133-17-89.fiber.hringdu.is) joined #forth 15:12:05 now write it in gcc and feel sadness 15:17:25 Oh yeah. I know. 15:17:37 But hey - why not. Give me a couple of minutes. 15:18:04 --- join: MickyW (~MickyW@p4FE8DA91.dip0.t-ipconnect.de) joined #forth 15:21:24 30 seconds. 3 ns per iteration. 15:21:29 So about 4x faster. 15:35:55 not too bad 15:43:11 Yeah, I'm pretty content with that, for a "no optimization" test. 15:44:49 --- quit: dys (Ping timeout: 240 seconds) 15:52:12 --- join: dys (~dys@tmo-109-164.customers.d1-online.com) joined #forth 16:46:40 --- quit: MickyW (Quit: Leaving. Have a nice time.) 17:17:58 --- quit: pierpal (Ping timeout: 248 seconds) 17:24:39 --- join: wa5qjh (~quassel@175.158.225.197) joined #forth 17:24:39 --- quit: wa5qjh (Changing host) 17:24:39 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 17:27:05 --- quit: dddddd (Remote host closed the connection) 18:16:53 --- quit: karswell (Read error: Connection reset by peer) 18:58:36 --- quit: WilhelmVonWeiner (Remote host closed the connection) 19:41:48 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 20:00:00 --- quit: pierpa (Quit: Page closed) 20:13:50 --- quit: wa5qjh (Remote host closed the connection) 20:15:32 --- quit: pierpal (Quit: Poof) 20:15:52 --- join: pierpal (~pierpal@host141-208-dynamic.11-87-r.retail.telecomitalia.it) joined #forth 20:24:25 --- quit: X-Scale (Ping timeout: 260 seconds) 20:25:50 --- join: [X-Scale] (~ARM@83.223.241.126) joined #forth 20:25:58 --- nick: [X-Scale] -> X-Scale 22:48:04 --- quit: Labu (Quit: WeeChat 2.0.1) 22:59:33 --- quit: epony (Quit: RELOAD) 23:15:57 --- join: epony (~nym@87-116-66-25.ip.btc-net.bg) joined #forth 23:46:01 --- join: wa5qjh (~quassel@175.158.225.197) joined #forth 23:46:02 --- quit: wa5qjh (Changing host) 23:46:02 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 23:59:59 --- log: ended forth/18.07.24