IRC Log - 2025-05-11 - ##forth

Channel: ##forth
Total messages: 79
Time range: 00:14:41 - 03:08:04
Most active: anthk_ (33), xentrac (28), cleobuline (14)
00:14:41 ##forth <cleobuline> forthBot: EXIT
00:26:12 ##forth <cleobuline> easy to kill xentrac
00:27:27 ##forth <cleobuline> i just whant over to play with
00:27:33 ##forth <cleobuline> others
00:30:55 ##forth <cleobuline> sorry i am drunk
00:35:46 ##forth <xentrac> it's good to have others play with it!
00:35:55 ##forth <xentrac> sorry to hear you're drunk
00:36:00 ##forth <xentrac> I hope you feel better tomorrow!@
00:42:23 ##forth <cleobuline> xentrac: do you see micro-forth in assembly ?
00:43:06 ##forth <cleobuline> but i will not go foreward with it
00:44:08 ##forth <xentrac> I did visit the page
00:44:13 ##forth <xentrac> but I did not try runnign it
00:44:34 ##forth <cleobuline> it works
00:45:03 ##forth <cleobuline> i spend hours to debug save registers etc
00:45:21 ##forth <cleobuline> it'as a headake
00:45:40 ##forth <xentrac> writing things in assembly is always a bit slower
00:46:05 ##forth <xentrac> but I find it relaxing because there's no man behind the curtain
00:46:12 ##forth <xentrac> so you can be more sure that it will work
00:47:32 ##forth <xentrac> I haven't written a lot of stuff in assembly, if you don't count compiler output (in a sense when I write the compiler I'm writing the assembly that the compiler will emit, especially with the really dumb compilers I've written like https://github.com/kragen/stoneknifeforth and http://canonical.org/~kragen/sw/urscheme/)
00:47:42 ##forth <cleobuline> there are no magics in the code just save register and call primitives
00:49:22 ##forth <xentrac> but I did write a web server, the runtime support library for Ur-Scheme, a Tetris game, a simple task-switching library for C, and an interpreter for a dynamic object-oriented language with multiple dispatch
00:51:59 ##forth <anthk_> on that, I'd love a bootable and forth for x86 under a pendrive, or a floppy even
00:52:04 ##forth <anthk_> s,and,ans
00:53:12 ##forth <cleobuline> nice ...
00:54:24 ##forth <xentrac> anthk_: you can get pretty close with F-83 running under FreeDOS
00:54:43 ##forth <xentrac> if you put "@F83" in AUTOEXEC.BAT
00:54:48 ##forth <anthk_> yep, and svardos
00:54:50 ##forth <anthk_> with MINA
00:54:51 ##forth <anthk_> I tried
00:55:38 ##forth <anthk_> which is ciforth?
00:58:01 ##forth <anthk_> mmm yes, close
00:58:56 ##forth <anthk_> I would rip out the documentation (or dump the PDF into a TXT file) and that's it
01:03:39 ##forth <xentrac> nice
01:03:50 ##forth <xentrac> I'd forgotten about this
01:10:51 ##forth <cleobuline> tinyboot1.tbf1 :)
01:10:54 ##forth <cleobuline> interresting
01:11:13 ##forth <anthk_> heh https://news.ycombinator.com/item?id=43949559
01:11:36 ##forth <anthk_> .r as u.r it's because eforth under subleq lacked that :p
01:14:11 ##forth <anthk_> now I expect Don Hopkins to post some similar PostScript code for that fractal
01:24:01 ##forth <xentrac> I feel like that should be doable
01:24:14 ##forth <xentrac> thanks for the link! I posted a comment on the thread too
01:29:56 ##forth <anthk_> also
01:30:02 ##forth <anthk_> from the C code in the blog
01:30:45 ##forth <anthk_> : sier cr 32 0 do 32 0 do i j and if ." _ " else ." M " then LOOP cr LOOP ;
01:54:35 ##forth <xentrac> I did something like that just now too :)
01:54:49 ##forth <xentrac> except I think you should cr before the inner do
01:54:52 ##forth <xentrac> I even picked 32!
01:59:22 ##forth <anthk_> 32 factorial?
01:59:34 ##forth <anthk_> ah, the limit
02:00:34 ##forth <anthk_> I didn't refresh the page
02:01:02 ##forth <anthk_> and I forgot about 'bl'
02:01:33 ##forth <xentrac> well, I forgot about ."
02:01:57 ##forth <xentrac> which I think is a better approach than dup emit emit
02:08:18 ##forth <anthk_> now, otoh, mandelbrot with forth... it's possible without complex numbers
02:08:29 ##forth <anthk_> I saw it under open firmware
02:09:47 ##forth <anthk_> ah yes
02:12:32 ##forth <xentrac> yeah, it's not too hard; in https://gitlab.com/kragen/bubbleos/-/blob/master/yeso/mand.lua I just wrote out the real arithmetic
02:12:40 ##forth <wolfdog> complex numbers are just spicy pairs of floats ;)
02:12:42 ##forth <xentrac> zx, zy = zx*zx - zy*zy, 2 * zx*zy -- zᵢ₋₁²
02:12:44 ##forth <xentrac> zx, zy = zx*zx - zy*zy + x, 2 * zx*zy + y -- zᵢ = zᵢ₋₁⁴ + c
02:13:13 ##forth <xentrac> that's the quartic version though
02:13:39 ##forth <xentrac> zx, zy = zx*zx - zy*zy + x, 2 * zx*zy + y -- zᵢ = zᵢ₋₁² + c
02:13:46 ##forth <xentrac> is the usual quadratic version
02:13:46 ##forth <anthk_> i know
02:14:02 ##forth <anthk_> I have the straight implementation in tcl
02:14:07 ##forth <anthk_> yes, binoms
02:14:29 ##forth <anthk_> the math library it's plain tcl; and the forth scientific library does the same
02:15:11 ##forth <wolfdog> tcl <3
02:15:26 ##forth <wolfdog> i'm currently writing a stack lang running on top of tcl, for fun
02:15:27 ##forth <anthk_> even jimtcl can borrow tcl's complex.tcl file as is
02:16:13 ##forth <anthk_> eh, with tcl you could create a simple forth at light speed...
02:16:48 ##forth <wolfdog> i guess, yeah :) it's still fun to do though
02:32:58 ##forth <anthk_> wait, dc it's turing complete?
02:33:51 ##forth <anthk_> I always tought of dc as a crippled RPN calculator
02:34:17 ##forth <anthk_> with a stack and registers but not far more
02:36:18 ##forth <anthk_> ah, it has some input support
03:08:04 ##forth <xentrac> what makes dc Turing-complete is that you can store strings in registers and run them