00:00:00 --- log: started forth/18.03.03 00:42:46 --- join: smokeink (~smokeink@59-125-75-78.HINET-IP.hinet.net) joined #forth 00:51:03 --- quit: dys (Ping timeout: 240 seconds) 01:05:59 --- join: dys (~dys@tmo-106-192.customers.d1-online.com) joined #forth 01:53:35 --- quit: smokeink (Ping timeout: 240 seconds) 02:24:38 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 02:36:59 --- quit: Darksecond (Read error: Connection reset by peer) 02:40:21 --- join: Darksecond (~darksecon@a82-94-53-70.adsl.xs4all.nl) joined #forth 02:40:21 --- quit: dys (Ping timeout: 260 seconds) 02:56:47 --- join: dys (~dys@tmo-106-192.customers.d1-online.com) joined #forth 03:01:49 --- quit: wa5qjh (Remote host closed the connection) 03:06:46 --- join: wa5qjh (~quassel@175.158.225.217) joined #forth 03:06:46 --- quit: wa5qjh (Changing host) 03:06:46 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 03:22:11 --- quit: wa5qjh (Remote host closed the connection) 03:24:29 --- join: Labu (~mik@mvice.pck.nerim.net) joined #forth 03:58:50 --- join: ncv (~neceve@90.210.228.32) joined #forth 03:58:51 --- quit: ncv (Changing host) 03:58:51 --- join: ncv (~neceve@unaffiliated/neceve) joined #forth 04:52:50 --- quit: dys (Ping timeout: 256 seconds) 05:30:14 --- join: smokeink (~smokeink@59-125-75-78.HINET-IP.hinet.net) joined #forth 05:41:30 --- join: dys (~dys@tmo-100-92.customers.d1-online.com) joined #forth 05:42:35 --- join: nighty- (~nighty@s229123.ppp.asahi-net.or.jp) joined #forth 06:01:49 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 06:37:11 --- quit: Zarutian_PI (Ping timeout: 260 seconds) 06:47:06 --- quit: smokeink (Read error: Connection reset by peer) 06:49:49 --- join: Zarutian_PI (~3.1415@173-133-17-89.fiber.hringdu.is) joined #forth 06:59:16 --- join: Gromboli (~Gromboli@static-72-88-80-103.bflony.fios.verizon.net) joined #forth 08:01:51 --- join: bingo (~annibale@net-130-25-80-161.cust.vodafonedsl.it) joined #forth 08:02:31 ciao 08:02:35 !list 08:03:45 --- part: bingo left #forth 08:56:57 --- join: dual (~bonafide@cpe-24-198-98-113.maine.res.rr.com) joined #forth 11:09:59 --- join: karswell (~user@cust125-dsl91-135-5.idnet.net) joined #forth 11:37:28 --- join: Mat4 (~Claude@ip5b409e5e.dynamic.kabel-deutschland.de) joined #forth 11:48:33 --- quit: Mat4 (Quit: Leaving) 12:16:12 --- quit: johnmark_ (Quit: Leaving) 12:22:59 --- nick: fiddlerwoaroof -> fiddlerwoaroof_ 12:23:14 --- nick: fiddlerwoaroof_ -> fiddlerwoaroof 12:41:43 --- join: Mat4 (~Claude@ip5b409e5e.dynamic.kabel-deutschland.de) joined #forth 12:46:30 After writing forth compilers for a bit I am starting to regain my faith in gforth 12:48:04 ☺ 12:49:39 Ithink when compiled with the wright settings on the master branch gforth is probably very similar to c in speeds 12:54:49 --- join: wa5qjh (~quassel@175.158.225.217) joined #forth 12:54:49 --- quit: wa5qjh (Changing host) 12:54:49 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 12:59:59 as gforth-fast implement some kind of basic JIT compiler (there call it generation of dynamic super-instructions) it is one of the fasted interpreters around. However, the performance of highly optimized code from a decent C compiler is for sure faster (probably 2-3..6 times dependent of the processor) 13:01:04 hmm it's more like AOT compilation at basic-block level 13:02:44 I think though that you never run c in interpreted mode and so o you can only compare compiled forth 13:03:16 --- quit: wa5qjh (Remote host closed the connection) 13:07:27 yes, I never used a C interpreter 13:07:55 --- join: wa5qjh (~quassel@175.158.225.217) joined #forth 13:07:56 --- quit: wa5qjh (Changing host) 13:07:56 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 13:08:49 em, with faster I meaned higher of course 13:31:56 I am pondering making an emacs clone in gforth 13:49:48 --- quit: Mat4 (Read error: Connection reset by peer) 13:50:08 --- join: Mat4 (~Claude@ip5b409e5e.dynamic.kabel-deutschland.de) joined #forth 13:51:26 Mat4: "a decent C compiler": where have you come across such a beast? 13:53:39 take a look at Intels C compiler for example 13:57:18 Mat4: that thing is craaaaap. It still emits old style FPU instructions for instance even when options specify that target must at minimum support SSE 13:58:23 sorry, have you ever take a look at the documentation ? That's just a matter of the right parameter switches 13:59:12 I havent but I know a guy who fought that thing to try to get it to behave. 14:01:35 And it is quite annoying for him to have to write an post processor so the code isnt dog slow on anything but Intel chips. 14:03:43 so, I would not say that Intels C compiler is in any way "decent" from what I have seen, read and tested. 14:06:37 I don't agree, beside the generated code of course is very processor specifc. by the way I know no other compiler with such sophisticated autoparallelization support (beside vPascal which was only available for OS/2 a long time ago) 14:07:56 probably the Gnu Fortran compiler (no experience with it) 14:07:56 Mat4: then you have not looked into scentific computing compilers for Fortran. 14:08:26 as written, I'm not a Fortran programmer 14:10:01 by the way, does someone here know if there exist a Forth interpreter written in Fortran (just curious) ? 14:11:36 --- quit: cheater (Ping timeout: 248 seconds) 14:26:52 --- quit: Mat4 (Quit: Leaving) 14:35:18 --- quit: ncv (Ping timeout: 265 seconds) 14:40:40 I bet I can write a forth in fortran 14:42:45 I don't feel like it though 14:43:07 Forth is superior to fortran I think 14:52:07 different target audiences 14:53:51 johnnymacs: Wasn't Forth originally a bunch of Fortran code and macros 14:57:18 now that i think about it, i really don't know what kind of programming system Chuck Moore's "third generation" computer had 14:57:35 https://www.forth.com/resources/forth-programming-language/ 14:57:50 --- join: Kumool (~Kumool@adsl-64-237-235-80.prtc.net) joined #forth 14:59:13 i mean *before* forth was created for it 15:00:58 That page goes into it 15:07:24 ah, thanks 15:08:47 I have this vision of my dream shell 15:09:37 is it one where you mistype `ls#` and it still runs `ls` 15:09:54 ok, even my question seems inaccurate now :) 15:14:01 --- quit: karswell (Read error: Connection reset by peer) 15:53:59 My dream shell is an emacs clone written in forth 16:07:18 Back in the old days the coolest thing you could do is have a shell and use the shell to launch an application 16:07:42 But a cool system for modern day is multitasking and hosts many applications at once 16:12:29 that's my one question about Forth, multitasking 16:13:08 So a forth can be built with multithreading in mind but I think gforth is not 16:13:12 Can a Forth "interrupt" words during execution? 16:15:10 I think it can be made to but that might not always have the desired affect 16:15:38 Basically if your are on unix a great way to multitask is run another forth in another process 16:15:53 that works as long as you don't need to share memory 16:16:45 Are you coding on a full operating system or on a chip? 16:20:42 I'm doing both at the moment, but it was more of a hypothetical question 16:21:26 (not simultaneously, I'm just working with both) 16:24:08 The way you handle multitasking is way different on a chip because many chips are more limited 16:25:49 Generally on a full operating system you just use another process 16:27:03 For my degree I wrote embedded C with ARM Cortex chips and I struggle to think how Forth would work similarly 16:27:25 "Concurrency", "parallelism" and "interruptability" are not words Forth brings to mind 16:32:15 well, the GreenArray chip is pretty parallel, but i've never worked with one, so i don't know how similar it is to "normal" forth 16:35:16 Even on the green array chips each core has a single thread of execution 16:35:36 it is by chaining the forths together that parallellism is achieved 16:37:02 I need to buy a GA144 eval board before GreenArrays goes out of business 16:37:52 Meh you could play with the greenarrays chip with a breadboard 16:49:32 I want the full sandwich, not just the meat 16:52:30 --- quit: dys (Ping timeout: 256 seconds) 16:55:23 Heh if you have the coin kajit has the wares 17:00:22 Anyway I'd like my terminal to be multitasking 17:09:33 I'd also like a full range of terminal rendering 17:17:24 WilhelmVonWeiner: "A Tiny Preemptive Multitasking Forth" http://collaboration.cmc.ec.gc.ca/science/rpn/biblio/ddj/Website/articles/DDJ/1996/9603/9603h/9603h.htm 17:19:57 I can't read that on myphone 17:29:17 I assume it is an article about multitasking in forth. Maybe I'll remember to read it when I get home 17:38:54 Emacs doesn't have true multitasking. I don't know how they achieve it 17:53:33 --- quit: dddddd (Ping timeout: 240 seconds) 17:56:53 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 18:17:32 --- join: cheater (~cheater@unaffiliated/cheater) joined #forth 18:22:06 --- quit: Labu (Quit: Leaving.) 18:41:27 --- quit: dual (Ping timeout: 248 seconds) 18:58:59 --- join: johnmark_ (~johnmark@d53-64-121-247.nap.wideopenwest.com) joined #forth 19:52:39 --- join: benselb (~benselb@li437-65.members.linode.com) joined #forth 21:19:00 --- quit: Kumool (Quit: Leaving) 21:26:24 --- quit: wa5qjh (Remote host closed the connection) 21:29:56 --- quit: proteus-guy (Remote host closed the connection) 21:56:02 --- join: brega (~kiy@58-3-167-190.ppp.bbiq.jp) joined #forth 22:01:29 --- join: smokeink (~smokeink@59-125-75-78.HINET-IP.hinet.net) joined #forth 22:07:44 --- join: proteus-guy (~proteus-g@14.207.86.145) joined #forth 22:14:54 --- quit: Gromboli (Quit: Leaving) 22:59:09 --- quit: dddddd (Remote host closed the connection) 23:37:34 --- quit: smokeink (Ping timeout: 268 seconds) 23:42:54 --- join: wa5qjh (~quassel@175.158.225.217) joined #forth 23:42:55 --- quit: wa5qjh (Changing host) 23:42:55 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 23:59:59 --- log: ended forth/18.03.03