00:00:00 --- log: started forth/18.11.13 00:03:26 --- join: proteusguy (~proteus-g@184.82.228.19) joined #forth 00:03:26 --- mode: ChanServ set +v proteusguy 00:28:25 --- join: dys (~dys@tmo-112-114.customers.d1-online.com) joined #forth 00:29:17 --- join: Lord_Nightmare (Lord_Night@unaffiliated/lordnlptp) joined #forth 00:58:40 --- quit: nighty- (Quit: Disappears in a puff of smoke) 00:59:55 --- quit: dys (Ping timeout: 252 seconds) 01:01:16 --- join: john_cephalopoda (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 01:38:05 --- join: nighty- (~nighty@s229123.ppp.asahi-net.or.jp) joined #forth 02:03:25 --- quit: ashirase (Ping timeout: 252 seconds) 02:08:37 --- join: ashirase (~ashirase@modemcable098.166-22-96.mc.videotron.ca) joined #forth 02:09:45 --- join: wa5qjh (~quassel@175.158.225.197) joined #forth 02:09:45 --- quit: wa5qjh (Changing host) 02:09:45 --- join: wa5qjh (~quassel@freebsd/user/wa5qjh) joined #forth 02:13:58 --- quit: wa5qjh (Ping timeout: 252 seconds) 02:19:55 --- quit: proteusguy (Ping timeout: 252 seconds) 02:32:25 --- join: proteusguy (~proteus-g@184.82.228.19) joined #forth 02:32:25 --- mode: ChanServ set +v proteusguy 03:00:36 --- quit: john_cephalopoda (Quit: Trees can see into your soul. They lurk everywhere.) 03:04:36 --- quit: proteusguy (Remote host closed the connection) 03:13:42 --- join: john_cephalopoda (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 03:33:00 --- quit: john_cephalopoda (Quit: Trees can see into your soul. They lurk everywhere.) 04:31:56 --- join: ncv (~neceve@2a02:c7d:c5c9:a900:6eaf:6ef7:3b81:d5f6) joined #forth 04:31:56 --- quit: ncv (Changing host) 04:31:56 --- join: ncv (~neceve@unaffiliated/neceve) joined #forth 04:46:20 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 05:05:18 --- join: proteusguy (~proteus-g@cm-134-196-84-56.revip18.asianet.co.th) joined #forth 05:05:18 --- mode: ChanServ set +v proteusguy 05:15:37 --- join: john_cephalopoda (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 05:16:10 Hi 05:36:23 h'lo 05:52:10 --- quit: ncv (Remote host closed the connection) 05:53:26 --- join: ncv (~neceve@unaffiliated/neceve) joined #forth 06:02:36 Morning, guys. 06:02:59 Slugging through a week of all-day-long meetings; we have a company in here for a visit. 06:03:06 But then thankfully I have all next week off. 06:44:09 --- quit: pierpal (Ping timeout: 240 seconds) 06:57:07 --- quit: smokeink (Ping timeout: 252 seconds) 07:06:22 --- quit: proteusguy (Ping timeout: 244 seconds) 07:06:38 --- join: pierpal (~pierpal@host91-236-dynamic.22-79-r.retail.telecomitalia.it) joined #forth 07:23:13 --- quit: tabemann (Ping timeout: 260 seconds) 07:24:41 --- join: TheCephalopod (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 07:30:10 --- join: proteusguy (~proteus-g@cm-134-196-84-56.revip18.asianet.co.th) joined #forth 07:30:10 --- mode: ChanServ set +v proteusguy 08:42:08 --- quit: TheCephalopod (Quit: Trees can see into your soul. They lurk everywhere.) 09:08:59 KipIngram: that sounds like hell? 09:09:07 s/?/!/ 09:13:18 Yes - I absolutely HATE being pinned down in one place all day. 09:13:52 I get a reprieve today - I have to take my daughter to a doctor's appointment. 09:14:02 But Wed-Fri it's... unbroken. :-( 09:14:46 --- join: mark4 (~mark4@148.80.255.161) joined #forth 09:36:09 --- quit: mark4 (Remote host closed the connection) 09:46:31 --- join: TheCephalopod (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 09:48:13 --- quit: TheCephalopod (Client Quit) 09:55:50 I've started using Acme (from plan9port) to edit my forth 09:56:00 except for the non-monospaced font, it's great 09:56:05 really cool editor 10:43:33 it does have monospace lol. Nevermind then 10:45:04 it would be nuts if it didn't, but i wouldn't put it past them 10:45:32 lol. I've tried to use it before and not gotten into it, but I like it atm 10:45:41 going to set up plumber rules for Forth code 10:49:17 is that for syntax highlighting? 10:50:01 no, the plumber deides what to do with certain text 10:50:03 https://9fans.github.io/plan9port/man/man4/plumber.html 10:50:09 isnt that a bit hard for Forth as it pretty much doesnt have syntax? 10:50:37 you could pull it off though if you defined primitives that talked to the editor 10:51:03 like those 'language server' I keep hearing about? 10:51:05 the editor could parse the code and words that, for example, called "parse" might highlight the next word differently 10:54:57 i wanted that for vim but it doesn't exist 10:55:19 does it for emacs? 10:55:26 * Zarutian doesnt use either btw 10:55:30 idk, maybe. i don't want it bad enough to stop using vim 10:56:03 i ended up just designing my forth with naming conventions that allowed for a generic syntax highlighting definition 10:56:54 like words surrounded by braces (e.g., [postpone] or [']) highlight the next word as a literal, words that begin with a colon (: and :noname) highlight the next word as a definition, etc. 10:57:07 what I like is ?semantic? highlighting like Dr.Scheme and the Racket enviroment do 10:57:26 Emacs has forth syntax highlighting 10:57:49 and let the flamewars comence! ;-Þ 10:57:52 WilhelmVonWeiner, but is it interactive with the source in the way that words you define continue to highlight properly? 10:58:04 I think verbs and nouns are just white 10:58:22 how does it know what's a verb and what's a noun? 10:58:31 predefined i assume 10:58:47 so yeah, no flamewar required 10:58:49 you want me to screenshot some highlighted Forth? 10:58:56 regexp abuse is what I bet 11:00:59 https://a.uguu.se/aSsjuLFbgUcU_2018-11-13-185902_484x340_scrot.png 11:01:37 it highlights control words like IF..THEN, DO..LOOP, :..;, IMMEDIATE and POSTPONE, comments 11:02:27 right, so if you wrote : MY-IF [POSTPONE] IF ; IMMEDIATE then MY-IF wouldn't be highlighted like IF, right? 11:02:48 no, it's unfortunately not elisp magic 11:03:05 I think I'm underselling it though 11:07:32 --- part: inode left #forth 11:10:35 --- quit: Zarutian (Read error: Connection reset by peer) 11:10:54 --- join: Zarutian (~zarutian@173-133-17-89.fiber.hringdu.is) joined #forth 11:49:59 --- join: dys (~dys@tmo-104-205.customers.d1-online.com) joined #forth 14:13:39 Syntax highlighting Forth is bound to be an endless game of cat and mouse. 14:14:02 you mean like the hunt for red october? 14:14:14 The Hunt for Red IMMEDIATE 14:14:45 Forth's very nature is that it's very flexible. Although you might be able to get some leverage using the Forth Standard as a reference 14:14:50 I suppose, it's a pipe dream. 14:15:21 Forth |dream 14:15:22 I've also found syntax highlighting for Lisps to inadequate after a while. 14:15:25 To be* 14:15:59 Hm. "Any sufficiently powerful language defies syntax highlighting." 14:16:47 Except ASM ;) 14:16:47 i guess syntax HL could work well if you make it the word writer's responsibility to assign coloring rules (or just colors) to every defined word (or other kind of part of the dictionary) 14:17:20 If you had a system where every word had a mandatory stack effct (kind of like Factor) 14:17:37 I see. I think the forth-mode package has some compatibility with this, but I haven't read its source code 14:17:41 your editor could at least colour words based on stack effect 14:17:47 I tried to write an assembler in Forth but failed. 14:18:02 Why would every word have a stack effect? 14:18:15 ELF is a complex format. 14:18:21 well ( n m --) could still be a stack effect diagram 14:18:51 john_cephalopoda: http://krue.net/avr/ 14:21:57 Well, those are RISC and I believe they don't use ELF. 14:22:38 But using constants for the parts of headers is a nice idea, so thanks for linking that. 14:25:07 RISC and not using ELF are usually not linked, IME 14:26:40 jn__: Yeah, those aren't linked. I just wanted to express that I am basically working on the other end of the spectrum, on an assembler for x86 that produces ELF binaries and not just relatively simple bytecode. 14:26:40 but AVRs are so small that they probably don't load executable files most of the time; that's rather handled by the windows/linux program that pushs a new program into an AVRs flash 14:27:10 john_cephalopoda: ok, gotcha 14:27:31 I am planning to use that assembler to create a kernel (multiboot) which runs a minimal subset of Forth that I can then extend upon. 14:29:04 nice! 14:30:12 john_cephalopoda: You might be interested in [[http://www.call-with-current-continuation.org/forth/][ff]], [[http://www.call-with-current-continuation.org/bones/][BONES]] and [[https://github.com/davazp/eulex][Eulex]]. 14:30:34 AVR has reserved ELF ID. 14:33:13 The first one doesn't seem to load. 14:33:24 Also interesting link markup. 14:33:43 And thanks for the links. 14:37:42 --- join: Keshl_ (~Purple@24.115.185.149.res-cmts.gld.ptd.net) joined #forth 14:37:53 --- quit: Keshl (Read error: Connection reset by peer) 14:39:30 I think assembly could be written in Forth, like "0x12 EAX MOV" where 0x12 and EAX put those codes onto the stack and MOV then handles them and turns them into actual commands that are used. 14:41:55 ...like CODE macros? 14:43:27 --- nick: Keshl_ -> Keshl 14:43:30 --- quit: ashirase (Ping timeout: 272 seconds) 14:44:26 http://www.complang.tuwien.ac.at/forth/gforth/Docs-html/Assembler-and-Code-Words.html#Assembler-and-Code-Words 14:44:34 I guess, not CODE macros, just CODE 14:49:12 --- join: ashirase (~ashirase@modemcable098.166-22-96.mc.videotron.ca) joined #forth 14:51:22 Lol, that's exactly what I thought about. 14:52:44 If one had a set of assemblers that can create multiboot kernels, one could port a Forth implementation to nearly any system. 14:53:16 look up Lina forth 14:53:27 idk about all these multiboot kernels or whatever 14:53:36 but it's all assembler 14:53:51 lina, wina, xina, etc 14:57:18 The part of those that runs natively on x86 is "ciforthtr". It is old, ships with some weird .exe file for flashing it and doesn't appear to run in qemu. 14:58:10 Why would you run it in qemu? 14:58:27 It has a Linux executable 14:59:01 I want to have something that I can run directly on hardware. 14:59:09 An operating system written in Forth. 14:59:46 Unfortunately everything I found until now is mostly unmaintained and kinda stuck at its current state. 15:00:30 Maybe it's unmaintained because it's basically done 15:00:54 Unix v7 is unmaintained 15:01:18 Maybe they're unmainted because the world has enough Forth implementations already 15:01:48 "Basically done" without proper drivers and with a big lack of programs... 15:04:30 I want a simple music player. I want a simple image viewer. I want an IRC client. I don't really need much more from an OS. 15:05:29 And none of that seems to be given in any Forth OS implementation. It all looks like fun tries if it works at all, and when the basic stuff runs it is done and archived. 15:06:21 In the non-Forth (amateur) OS, there are many that have brought it far. menuetOS, KolibriOS, Sortix, ToaruOS... 15:06:34 I am sure that a Forth OS can do that as well. 15:12:25 --- quit: nighty- (Quit: Disappears in a puff of smoke) 15:22:25 john_cephalopoda: Have You managed to boot KolibriOS? 15:42:53 I would be interested to see a Forth with image drawing routines. 15:43:19 Image rendering, not conversion to ascii or whatever (unless your characters are very, very small lol) 16:02:46 --- join: dave0 (~dave@47.44-27-211.dynamic.dsl.syd.iprimus.net.au) joined #forth 16:04:08 hi 16:08:10 --- quit: Keshl (Quit: Konversation terminated!) 16:25:10 --- join: Keshl (~Purple@24.115.185.149.res-cmts.gld.ptd.net) joined #forth 16:33:04 --- quit: dys (Ping timeout: 272 seconds) 16:44:58 --- join: TheCephalopod (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 16:48:45 --- quit: john_cephalopoda (Ping timeout: 245 seconds) 17:58:16 --- quit: dddddd (Remote host closed the connection) 18:02:30 WilhelmVonWeiner: graforth :) 18:03:14 I used it on Apple][ as a kid 18:10:59 --- join: tabemann (~tabemann@2602:30a:c0d3:1890:2db1:4ef6:126b:d5ee) joined #forth 18:23:17 --- join: smokeink (~smokeink@185.189.254.154) joined #forth 18:23:51 --- quit: smokeink (Remote host closed the connection) 18:25:28 --- join: smokeink (~smokeink@185.189.254.154) joined #forth 18:26:14 --- quit: smokeink (Remote host closed the connection) 18:27:50 --- join: smokeink (~smokeink@185.189.254.154) joined #forth 18:27:51 --- quit: smokeink (Remote host closed the connection) 18:28:28 --- join: smokeink (~smokeink@185.189.254.154) joined #forth 19:00:37 --- quit: dave0 (Quit: dave's not here) 19:37:50 --- quit: proteusguy (Remote host closed the connection) 20:05:37 --- quit: ncv (Remote host closed the connection) 20:14:37 --- join: dave0 (~dave@47.44-27-211.dynamic.dsl.syd.iprimus.net.au) joined #forth 20:15:24 re 20:29:41 --- quit: smokeink (Remote host closed the connection) 20:31:05 --- join: smokeink (~smokeink@185.189.254.154) joined #forth 21:03:52 --- quit: diginet2 (Ping timeout: 264 seconds) 21:04:07 --- join: diginet2 (~diginet@107.170.146.29) joined #forth 21:06:01 --- quit: smokeink (Remote host closed the connection) 21:09:41 --- join: smokeink (~smokeink@185.189.254.154) joined #forth 21:39:29 --- join: proteusguy (~proteus-g@119-46-178-3.static.asianet.co.th) joined #forth 21:39:30 --- mode: ChanServ set +v proteusguy 22:06:18 --- quit: smokeink (Remote host closed the connection) 22:06:46 --- join: smokeink (~smokeink@185.189.254.154) joined #forth 22:06:48 --- quit: smokeink (Remote host closed the connection) 22:08:02 --- join: smokeink (~smokeink@185.189.254.154) joined #forth 22:08:04 --- quit: smokeink (Remote host closed the connection) 22:10:49 --- quit: proteusguy (Ping timeout: 240 seconds) 22:16:59 --- join: dys (~dys@tmo-103-123.customers.d1-online.com) joined #forth 22:47:31 --- join: [1]MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 22:50:16 --- quit: MrMobius (Ping timeout: 252 seconds) 22:50:17 --- nick: [1]MrMobius -> MrMobius 23:33:13 --- quit: dys (Ping timeout: 268 seconds) 23:59:59 --- log: ended forth/18.11.13