02:00:00
##forth
<cleobuline>
LOAD "test.fth"
02:00:24
##forth
<cleobuline>
ForthBot: EURO
02:00:25
##forth
<ForthBot>
Unknown word: EURO
02:00:57
##forth
<cleobuline>
ForthBot: WORDS
02:00:57
##forth
<ForthBot>
DP
03:03:57
##forth
<cleobuline>
ForthBot: CLOCK .
03:03:57
##forth
<ForthBot>
1742609037
03:04:43
##forth
<cleobuline>
ForthBot: LOAD "test.fth"
03:05:12
##forth
<cleobuline>
ForthBot: LOTO
03:05:12
##forth
<ForthBot>
32 15 11 25 30 1
03:29:56
##forth
<cleobuline>
ForthBot: : years CLOCK 31536000 / . ." years since Unix epoch" ;
03:31:01
##forth
<cleobuline>
ForthBot: years
03:31:01
##forth
<ForthBot>
55
12:32:10
##forth
<cleobuline>
hello
12:39:01
##forth
<X-Scale>
be welcome, cleobuline
12:51:20
##forth
<cleobuline>
georges foreman is dead
12:51:28
##forth
<cleobuline>
sight !
13:04:37
##forth
<cleobuline>
hello-operator: X-Scale : comment va tu ?
14:12:17
##forth
<cleobuline>
ForthBot: LOAD "test.fth"
14:13:39
##forth
<cleobuline>
next should accept multilines definition in chatbot
16:04:08
##forth
<cleobuli_>
no multilines should be a garbages systèm
16:04:51
##forth
<cleobuli_>
firs of all i must transform the bot to be multiuser .. big job to adapt
16:05:56
##forth
<cleobuli_>
may be each user may have his own dictionnary too :)
23:12:03
##forth
<cleobuline>
hello
23:12:16
##forth
<cleobuline>
ForthBot: 123456789123457 PRIME? .
23:12:17
##forth
<ForthBot>
1
23:12:22
##forth
<cleobuline>
i win !
23:13:23
##forth
<cleobuline>
nice it's fast enough
23:16:54
##forth
<cleobuline>
ForthBot: 123456789123457 3 * 123456789123457 5 * PGCD .
23:16:54
##forth
<ForthBot>
123456789123457
23:25:42
##forth
<MrMobius>
how do Forths usually handle alignment? im working on a Forth for SH4 and writing an unaligned 32-bit value turns into writing each byte separately
23:26:40
##forth
<MrMobius>
@ and ! could round the pointer up if it's unaligned but then you need to copy the rounded pointer back to what generated it
23:42:45
##forth
<cleobuline>
ForthBot: : INIT-RANDOM CLOCK SEED ! ;
23:43:01
##forth
<cleobuline>
ForthBot: 1 100 RAND .
23:43:02
##forth
<ForthBot>
7
23:43:10
##forth
<cleobuline>
ForthBot: 1 100 RAND .
23:43:10
##forth
<ForthBot>
76
23:43:27
##forth
<cleobuline>
nice
23:44:36
##forth
<amby>
MrMobius: depends on the host machine, i assume
23:44:47
##forth
<amby>
x86 handles unaligned accesses transparently for you
23:45:05
##forth
<amby>
you just lose atomicity (which tbh in a forth you're probably not concerned about) and a bit of performance
23:45:28
##forth
<amby>
whereas arm shits itself and cries
23:45:33
##forth
<MrMobius>
im asking because unaligned accesses on this architecture cause an exception
23:46:12
##forth
<amby>
checking for alignment in every ! and @ is gonna be a bit slow
23:46:31
##forth
<amby>
so you could have those just fault if the address isn't aligned
23:46:44
##forth
<amby>
and then have some separate words for accessing addresses that aren't aligned
23:47:13
##forth
<amby>
as a general rule you shouldnt need misaligned accesses unless you're scraping up the last few bits of memory
23:48:06
##forth
<MrMobius>
heh im not sure "just fault" is a good solution
23:48:52
##forth
<MrMobius>
if you let the users use ! and c! and so on as they like, how do you avoid misaligned access?
23:50:01
##forth
<MrMobius>
it comes down to a contract with the user where if they dont follow they rules they pay the price which could be an exception but id like to avoid that