00:00:00 --- log: started forth/19.06.12 00:04:42 --- quit: KipIngram (Quit: WeeChat 1.4) 00:57:06 --- quit: MrMobius (Read error: Connection reset by peer) 01:26:35 remexre: I avoid DO and LEAVE and THEN and LOOP 01:27:38 zy]x[yz: I was actually working on a Forth-like blockchain at one point 01:27:51 the Ethereum VM is too restrictive and weird to be useful 01:28:14 It would be a vm something like Retro's Nga that does all the computation. 01:28:39 1 gas per op, something stupid like that, because it's MISC. 01:33:52 WilhelmVonWeiner, I'd be interested in hearing more about your experience/insights into that. We're digging into the EVM ourselves right now. 01:46:25 after a ton of reading and playing with LLL I reached the conclusion a Forth VM in a higher level language is expensive as f 01:46:56 and also has to be implemented weirdly to be able to comply with how the EVM demands you execute code 01:47:29 Yes - you'd need to make a forth system that will generate a compiled EVM output. Wouldn't ship out the whole interpreter/dictionaries. 01:58:12 --- quit: proteusguy (Remote host closed the connection) 02:00:08 yeah, and at the time I didn't have the want nor depth of understanding to write a compiler like that 02:01:21 I still think fighting with the single stack and no registers probably isn't worth it 02:03:59 --- quit: ashirase (Ping timeout: 246 seconds) 02:07:01 --- join: ashirase (~ashirase@modemcable098.166-22-96.mc.videotron.ca) joined #forth 03:52:25 i just don't know anything about block chain and don't have much desire to 04:02:49 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 04:20:32 --- join: proteusguy (~proteusgu@cm-58-10-154-77.revip7.asianet.co.th) joined #forth 04:20:32 --- mode: ChanServ set +v proteusguy 04:20:59 --- join: rdrop-exit (~markwilli@112.201.174.189) joined #forth 04:28:23 remexre: You can use one of the stacks for the IF compile-time forward references, and the other stack for the those of the various looping constructs. 04:30:15 e.g. return stack for IF, data stack the loops, or vice versa. 04:32:04 That way they don't get in each other's way at compile-time. Assuming I understood your question correctly. 04:36:19 I use LEAVE like constructs for the other types of loops as well, BREAK for BEGIN loops, and FORSAKE for FOR loops, DONE for streaming loops, as well as conditional versions such as ?BREAK and 0BREAK. 04:37:20 And exiting versions such as LEAVE; ?LEAVE; and 0LEAVE; 04:44:18 --- join: MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 04:50:46 --- join: KipIngram (~kipingram@185.149.90.58) joined #forth 04:50:46 --- mode: ChanServ set +v KipIngram 05:00:07 --- quit: dave0 (Quit: dave's not here) 07:34:04 --- quit: rain2 (Quit: WeeChat 1.6) 09:46:51 --- join: PoppaVic (~PoppaVic@unaffiliated/poppavic) joined #forth 09:55:07 --- quit: reepca (Remote host closed the connection) 09:55:39 --- join: reepca (~user@208.89.170.37) joined #forth 09:56:35 I'm going to be putting a new forth related quote in the https://www.reddit.com/r/Forth/ description every month. I'll be quoting you Forthers too sometimes. 09:57:15 quote me first or i'm out 10:02:02 """""""""""""""""""""""""""""" 10:03:03 --- part: PoppaVic left #forth 11:18:44 --- quit: josh5tone (Ping timeout: 272 seconds) 12:14:10 --- quit: gravicappa (Ping timeout: 245 seconds) 12:25:15 --- join: xek_ (~xek@apn-31-0-23-83.dynamic.gprs.plus.pl) joined #forth 12:35:55 sometimes I post this chat to bash.org 12:36:04 don't know if anything was ever accepted though. 12:37:49 "Quote #966318 is pending moderation." 12:44:18 --- join: tp (~Terry@mecrisp/staff/tp) joined #forth 12:45:01 wow 72 nicks ! 12:48:32 most just lurk... 12:48:54 as you do :) 12:49:55 crc I tried your RETRO Forth just yesterday! 12:50:42 how was it? 12:51:15 --- quit: proteusguy (Ping timeout: 245 seconds) 12:51:34 a bit different to what Im used to, so was floundering for a while. It compiled fast and hassle free under FreeBSD which was fantastic in this world of Linux centric apps 12:52:28 I maintain the unofficial doc for mecrisp-stellaris, which is what I'm used to, it's a basic and simple Forth for Cortex-M 12:53:42 as a technician and not a programmer I'm boggled by complex apps like RETRO, and your documentation is excellent 12:57:14 thanks 12:57:47 bsd support should be good as that's what I use mainly (dev server is openbsd, main server is freebsd) 12:57:54 crc, you're also the first Forth writer to use Fossil I've seen, which is great as I'm a Fossil lover myself 12:58:40 I used OpenBSD for a while, I love it's clean and secure, logical design, but I missed ZFS and FreeBSD jails too much 13:08:21 I haven't used jails, but do use ZFS on my main server. It's nice, but seems to use a lot of RAM 13:09:36 ZFS does use a lot of RAM by design 13:10:59 FreeBSD jails can use the ZFS 'clone' facility which I find fast and easy 13:34:25 --- quit: xek_ (Ping timeout: 248 seconds) 14:08:07 --- quit: reepca (Remote host closed the connection) 15:02:17 --- join: dave0 (~dave0@069.d.003.ncl.iprimus.net.au) joined #forth 15:06:05 hi 15:09:50 gday! 15:12:11 hi tp ! 15:12:50 hi dave0, Auatralian ? 15:12:57 I'm in NSW 15:13:13 yep! i'm in wollongong, south of sydney 15:13:45 dave0: seen any 'roos lately, m8? 15:13:45 most people here are eating tea or at work (usa) I think 15:13:50 haha 15:14:07 Zarutian: haha 15:14:22 Zarutian, I raised a Western Grey until it was huge roo once 15:14:27 there were some koalaroos! 15:15:49 dave0, I'm up in the Northern Rivers, 200km south of Brisbane 15:16:37 * Zarutian might nearly be antipodal to dave0 or tp 15:16:46 so pretty quiet here today, I came on at 1/4 to 6 this morning EST 15:17:27 Zarutian, most everyone is 16:21:46 --- join: reepca (~user@208.89.170.37) joined #forth 16:42:09 --- quit: john_cephalopoda (Ping timeout: 248 seconds) 16:51:35 c[_] Good morning 16:55:54 --- join: john_cephalopoda (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 17:21:28 good morning rdrop-exit 17:23:36 Hi tp 17:25:02 rdrop-exit, just thought Id pop in for some Forth chat, pretty quiet so far 17:25:45 It's usually pretty quiet around this time 17:26:03 Im also in Australia which doesnt help 17:26:12 I'm in Manila 17:26:36 ahh, so similar tz ? 17:26:37 I usually check in while having my morning coffee 17:26:46 10:26 here 17:26:51 8:26 here 17:27:09 Same tz as Hong Kong 17:27:15 same as Perth TZ also 17:27:48 hows the weather in Manila probably not too bad, your winter ? 17:27:50 exactly 17:28:09 We don't get winter, only rain or no-rain 17:28:32 hot ? 17:29:04 22C at this second, still fairly moderate 17:29:15 it'll heat up around 10am 17:29:53 same here tho max 25 today 17:30:06 Type 32C here now 17:30:12 Typo sorry 17:30:18 eww 17:30:45 doing any Forth thesedays ? 17:31:07 i only do embedded Forth, just small controllers 17:31:49 which is why I don't usually hang out on general Forth groups, I'm a electronics tech not a programmer 17:31:54 Not much, rewriting an old Forth, changing the UI on it 17:32:18 but I was getting a bit starved of Forth chat lately 17:33:03 Ive just compiled a Forth from 2014 with a few minor changes, will try it later 17:33:37 it's called FE Gizmo and runs cforth 17:33:48 oops F3gizmo 17:34:33 made for a STM32F3 Discovery board 17:34:36 Cool 17:35:25 I normally run Mecrisp-Stellaris on cortex-m0 and maintain the channel #mecrisp, very low traffic compared to here 17:35:40 as it's specialised for cortex-m 17:36:48 anyway, I better go and find my M4 board and see if this thing runs, thanks for the chat 17:37:38 I haven't had much time for coding lately. I started rewriting my old umbilical Forth, converted it to a full screen terminal UI, with an editor pane that's always on-screen. 17:37:57 oh cool 17:38:01 what the cpu ? 17:38:08 it's a tethered Forth ? 17:38:40 Yes 17:39:03 old, so 6502, z80 ? 17:39:20 The target side can be any CPU, but my first target for it will probably be PIC32 17:39:31 not so old then :) 17:39:33 The host side runs on POSIX 17:39:37 wow 17:40:03 the F3gizmo i just compiled on Freebsd 17:40:37 The host side is basically an extremely spartan IDE 17:41:02 how complex or blingy does it need to be ? 17:41:25 I have a home made IDE of sorts that uses Gnuscreen and Gvim 17:41:43 I mean really spartan, 80x24 terminal 17:42:11 Block based 17:42:12 when I click on the 'make' button in Gvim, the source uploads thru the Gnuscreen window at 460800 baud with hardware handshaking to a cortex-m0 17:42:31 very traditional ? 17:43:43 The idea is for me to put host cross-assembly and cross-compilation to whatever target I want to work on from a single Forth Host IDE 17:43:57 Ive only played with blocks on Frank Sergeant's Riscy-Pygness 17:44:19 wow that would be nice 17:45:43 The host side runs on a Forth VM for POSIX 17:45:58 oh, F3gizmo compiles Chibios into the image so it runs Threads natively which will be interesting 17:46:36 what OS do you develop on ? 17:46:43 Linux I guess ? 17:48:20 Right now I'm down to MacOS, until I get a new box for NetBSD 17:49:01 The host side of the umbilical will in theory run on any POSIX 64 bit 17:49:15 a lot of devs use MacOS, i believe even many FreeBSD devs 17:50:12 so whats the umbilical method ? I have a MSP430 tethered Forth that runs from a Ti Tiva as the host and used JTAG for comms 17:50:50 it's not bad, the terminal really seems to be connected to the MSP430 but it's not 17:51:34 it's called 'mecrisp-across" designed by Matthias Koch who also did Mecrisp-Stellaris which I mainly use on Cortex-M 17:51:50 The Host Forth has two cooperative tasks, one for the user terminal and one for a serial terminal 17:53:07 The details depend on what's on the other side of the serial terminal 17:53:46 any idea what targets you will cater for, other than pic32 ? 17:55:39 No, when I need to deal with a new target I'll add an cross-assembler for that target, and if needed a custom monitor 17:56:33 The idea is that whatever the target, I would use the same host Forth IDE to talk to it 17:56:58 sounds good 17:57:32 In most cases I wouldn't put a Forth on the target, I would use the Host Forth to cross-assemble 17:58:01 that makes sense for a tethered Forth 17:58:14 why waste space on the target ? 17:58:24 Right 17:58:47 I think mecrisp-across makes a 80 byte blinky binary 17:59:13 the actual blinky is 20 bytes and the rest is all the vectors and startup etc 18:00:06 on that system I program in mecrisp Forth but the msp430 target gets a binary 18:00:40 and I get to use Forth as tho it's on the target and do all the usual stuff 18:02:07 I like the tethered approach because it keeps your options open, for some targets you want to just cross-assemble a few bytes of machine code, for another you might want an ITC Forth, and for yet another a TTC or SRT Forth 18:02:30 so true 18:02:50 Whatever you put on the target, you use the same host Forth 18:02:56 brb 18:03:05 plus it's great to be able to have a massive dictionary for development on the host that would never fit on the target 18:03:08 no problemo 18:06:04 back :) 18:06:40 welcome back! 18:06:56 thank you kind sir 18:09:07 I'm just hooking up this old forth, flashed ok, now to see if I can get comms 18:09:23 fingers crossed 18:12:37 I have no idea what my next project will be, so in the meantime I'm just tinkering with the host when I have the time 18:13:31 and updating the documentation screens 18:14:43 --- quit: dave0 (Quit: dave's not here) 18:16:55 gotta keep up on the doc! 18:18:54 The original version of this Forth ran on DOS, so it's been a major rewrite 18:21:38 wow 18:26:06 The UI still looks like it's from the 80s though :) 18:27:17 The outer interpreter is not line oriented, similar in some ways to the old LaForth model. 18:28:28 So it doesn't follow the ANS standard 18:28:36 I'm somewhat of a Forth noob, Ive only been at it since around 2014 18:28:48 plus Im a technician, not a proper programmer 18:29:37 It's nice to see there a new Forth programmers :) 18:29:43 I did make up a massive motherboard in the 80's for a Rockwell 65F11 with onboard forth, but I only did the hardware 18:29:58 the guys programming it uses Amigas 18:30:28 Cool! 18:30:38 i had been meaning to check out Forth for decades and never got around to it until 2014, anD now I see the error of my ways! 18:31:06 i *really* wish Id started earlier I could have saved myself so much drama 18:31:29 :-)) 18:32:02 It's never too late 18:32:32 true 18:32:36 Most people will never get Forth 18:33:35 i say I started in 2014 because thats when I 'got it', but I think I was reading and trying to work out why people even used forth for a few years before that 18:34:01 it's the old 'aha' moment 18:34:47 so I can understand why C programmers dont get it, even the smart guys who understand Forth often still dont get it 18:35:04 but thats Forth :) 18:36:12 Most newcomers to Forth aren't really trying to get it, they just want an RPN version of C, Lisp, Smalltalk or whatever 18:37:57 or a C version of Forth 18:38:50 I get a few on my ch, all fired up about Forth cause someone told them it was cool, but then they try and use it like C "but where are all the libraries?" 18:39:51 Cortex-M really sorted out the arduino folks who had been using a micro 20 years old with only a few peripherals 18:39:58 I find there are 3 tell-tale signs that they don't get it: 18:40:10 what are they ? 18:40:28 - very long definitions 18:40:37 - using the stack as an array 18:41:05 - desperate for libraries 18:41:27 they all make sense 18:41:59 Maybe a fourth is over-abstraction even at the lowest levels 18:42:12 I'm guilty of all but the last one as I never used libraries anyway 18:42:45 The over-abstraction is usually a symptom of those coming from a functional programming background 18:43:30 But hey, to each his own :) 18:43:43 these are interesting times, embedded has become available to people with no real electronics skills via arduino, micropython etc and the people are running into all kinds of complex issues that they cant resolve 18:43:56 Need more coffee, back in a sec 18:44:01 no problemo 18:46:28 back :) 18:46:33 --- quit: zy]x[yz (Read error: Connection reset by peer) 18:47:28 --- join: zy]x[yz (~corey@unaffiliated/cmtptr) joined #forth 18:47:33 welcome back! 18:47:42 thanks :) 18:47:48 sorry had my hands full with pcb and connections 18:49:47 --- join: proteusguy (~proteusgu@cm-58-10-154-77.revip7.asianet.co.th) joined #forth 18:49:47 --- mode: ChanServ set +v proteusguy 18:53:23 Looking into Python has been on my todo list for a while, Python seems to be the new Basic 18:54:38 it is very popular 18:55:14 I learnt Perl and used that for the last 15 years and decided Id bypass python, ruby etc and go straight to LISP 18:55:39 I've just started to 'get' LISP but I've a long way To go 18:56:14 I already knew Forth when I looked into Lisp, so I never really so the point 18:56:27 * saw the point 18:57:10 they have a few things in common, but I think LISP is for the PC and Forth for embedded ? 18:57:44 I use pretty much just use Python, C, Forth, and assembly 18:58:07 as i knew Forth when i started learning LISP I really liked it 18:58:59 I know C to a basic level, and can read it no problems which is handy when looking for clues why hardware wont work and only finding C examples on the web 18:59:28 I've played around with many languages over the years, I've stuck mostly to C, Forth, Assemblies, and Awk in my toolkit. 19:00:09 I love 6800 assembly and have experience with MSP430 which is nice, and Thumb2 which is not as nice 19:00:18 Other than Forth, I was most impressed by APL and its derivatives 19:01:08 Ive only ever written code for commercial devices Ive sold in machine code, assembly, and C. I havent sold anything with Forth yet 19:01:44 but I have a completed forth project I've been testing for a while 19:02:02 hopefully I'll start making and selling some in about 6 months 19:02:10 Cool 19:02:48 it's taken me a while to set up and test all the development stuff I need 19:03:21 Im really fussy nowadays and wont even start a project unless I can code and debug properly for the hardware 19:04:10 Lisp encourages premature abstraction which is just as bad as premature optimization 19:05:01 oh 19:05:37 I think the Lisp Machines showed that 19:06:14 https://en.wikipedia.org/wiki/Lisp_machine 19:07:57 https://en.wikipedia.org/wiki/Symbolics 19:20:54 When I looked at Lisp I was comparing it's ability to be an "any-level" language like Forth 19:21:47 or I should say language/technology stack 19:22:10 thats what Im hoping 19:24:04 Their ceilings are both as high as you want, but Lisp's floor is too high. 19:24:49 nicely put 19:24:53 All IMHO of course 19:24:59 understand 19:25:13 I'll bear it in mind as I progress 19:46:08 big fail, tried everything wrong board type 19:46:20 bummer 19:46:26 ah well, I'll try it when I get the right board type 19:47:01 at least it compiled ok 19:47:25 The dogs need walking, gotta go, hope to catch again on this channel soon 19:47:28 TTFN 19:47:41 no prob, thanks for the chat! 19:47:43 --- quit: rdrop-exit (Quit: Lost terminal) 20:39:17 --- quit: dddddd (Remote host closed the connection) 21:11:35 --- join: gravicappa (~gravicapp@h109-187-238-210.dyn.bashtel.ru) joined #forth 21:13:17 --- quit: proteusguy (Remote host closed the connection) 21:31:18 --- join: proteusguy (~proteusgu@180.183.132.99) joined #forth 21:31:27 --- mode: ChanServ set +v proteusguy 21:34:08 --- join: rdrop-exit (~markwilli@112.201.174.189) joined #forth 21:49:21 --- quit: dys (Read error: Connection reset by peer) 21:57:40 --- join: dys (~dys@tmo-102-68.customers.d1-online.com) joined #forth 22:08:39 --- quit: dys (Ping timeout: 258 seconds) 22:30:08 --- quit: Croran (Quit: No Ping reply in 180 seconds.) 22:31:08 --- join: mtsd (~mtsd@94-137-100-130.customers.ownit.se) joined #forth 22:31:19 --- join: Croran (~quassel@2601:601:1801:6dde:1d00:171c:f03a:166d) joined #forth 22:42:37 --- join: dys (~dys@tmo-111-40.customers.d1-online.com) joined #forth 22:51:13 --- quit: dys (Ping timeout: 248 seconds) 23:02:03 --- join: dys (~dys@tmo-106-113.customers.d1-online.com) joined #forth 23:03:18 --- join: dave0 (~dave0@069.d.003.ncl.iprimus.net.au) joined #forth 23:20:58 re 23:53:41 --- join: xek_ (~xek@apn-31-0-23-83.dynamic.gprs.plus.pl) joined #forth 23:59:59 --- log: ended forth/19.06.12