00:00:00 --- log: started forth/16.11.04 00:52:07 --- quit: ASau (Read error: Connection reset by peer) 01:05:06 --- quit: lucasaiu (Quit: ERC (IRC client for Emacs 25.1.50.2)) 01:07:59 wow you guys I am really close to having my own forth 01:08:07 I implemented linked lists in javascript and now I've got a push and a pop and a swap 01:08:30 --- quit: dys (Ping timeout: 250 seconds) 01:10:44 how much more do I need for a forth? 01:10:57 now I've got . 01:29:18 How can I in forth create a word called bubble where it works sort of like this: 01:29:42 1 2 3 0 bubble .s 1 2 3 3 01:29:45 sodifjsdoifj 01:29:57 1 2 3 1 bubble .s 1 2 3 2 01:29:58 sdifjsodifj 01:30:21 1 2 3 2 bubble .s 1 2 3 1 01:30:34 I want the nth item in the stack to be duplicated to the top 01:31:32 or maybe this is a silly thing for me to want 01:35:31 yeah I decided I don't need this feature for now 01:41:38 --- quit: mnemnion (Remote host closed the connection) 01:45:09 --- quit: proteusguy_satri (Read error: Connection reset by peer) 01:46:27 what other ones do I need besides swap and drop and dup and . and + and - 01:46:32 I am sure I need some more stuff 02:01:28 --- join: proteusguy_satri (~proteusgu@node-f63.pool-125-24.dynamic.totbb.net) joined #forth 02:23:14 --- part: timeslice left #forth 03:19:46 --- quit: nighty (Quit: Disappears in a puff of smoke) 03:42:31 --- quit: newcup (Ping timeout: 260 seconds) 04:42:48 --- join: nighty (~nighty@s229123.ppp.asahi-net.or.jp) joined #forth 04:48:36 John[Lisbeth]: 'bubble' sounds like 'pick' 04:48:59 thanks 04:50:26 I think this would work: 04:50:29 : bubble ( n -- n ) ?dup if swap >r 1 - recurse r> swap exit then dup ; 04:55:49 --- join: true-grue (~true-grue@176.14.222.10) joined #forth 05:00:16 John[Lisbeth]: in my Forth I've implemented the stack words I need using only dup, drop, swap, push (>R), pop (R>), and depth 05:14:30 --- join: newcup (newcup@peruna.fi) joined #forth 05:15:18 --- quit: nisstyre (Read error: Connection reset by peer) 05:24:12 You also can implement everything with return stack ops: >r r> r@ 2>r 2r> and with drop. 05:24:59 In fact, for the most stack ops you even don't need to use 2>r. 05:26:18 But with 2>r the code is a bit shorter. 05:27:54 : rot >r 2>r r> 2r> ; 05:27:54 : rot' >r >r >r 2r> >r 2r> ; 05:28:25 --- join: [X-Scale] (HydraIRC@89.214.110.2) joined #forth 05:30:46 --- quit: X-Scale (Ping timeout: 265 seconds) 05:30:47 --- nick: [X-Scale] -> X-Scale 05:39:15 And, of course, it all make sense if you're making Forth systerm for the hardware Forth processor. For the software Forth you need to implement oblt one syntax construction: executable stack picture { ... - ... }. 05:39:15 : dup { a - a a } ; 05:39:15 : rot { a b c - b c a } ; 05:39:15 and so on. 05:39:15 It's very easy to implement primitive and efficient code generator behind this construction. 06:06:27 --- quit: proteusguy_satri (Remote host closed the connection) 06:07:14 --- join: proteusguy_satri (~proteusgu@node-f63.pool-125-24.dynamic.totbb.net) joined #forth 06:19:22 --- quit: proteusguy_satri (Quit: Leaving) 06:20:32 --- join: proteusguy_satri (~proteusgu@node-f63.pool-125-24.dynamic.totbb.net) joined #forth 06:39:44 true-grue: any pointers to an implementation of that executable stack picture? 06:41:34 --- join: rgrinberg (~rgrinberg@24-246-56-85.cable.teksavvy.com) joined #forth 07:07:04 --- join: dcs (~moby@189-105-251-179.user.veloxzone.com.br) joined #forth 07:24:50 --- join: [X-Scale] (HydraIRC@89.214.110.2) joined #forth 07:27:39 --- join: X-Scale` (HydraIRC@46.50.107.134) joined #forth 07:27:58 --- quit: X-Scale (Ping timeout: 256 seconds) 07:27:59 --- nick: X-Scale` -> X-Scale 07:28:32 --- join: mnemnion (~mnemnion@2601:643:8102:7c95:dc01:bd9b:d674:d84e) joined #forth 07:30:15 --- quit: [X-Scale] (Ping timeout: 260 seconds) 07:33:14 --- quit: mnemnion (Ping timeout: 260 seconds) 07:34:27 --- quit: mark4 (Ping timeout: 268 seconds) 08:28:17 --- join: desolator (~quassel@broadband-188-255-97-129.nationalcablenetworks.ru) joined #forth 08:49:47 --- join: ASau (~user@netbsd/developers/asau) joined #forth 08:59:58 --- join: mnemnion (~mnemnion@2601:643:8102:7c95:dc01:bd9b:d674:d84e) joined #forth 09:04:05 ricky_ricardo, reepca: https://www.reddit.com/r/Forth/comments/4f3m72/forth_wizard/ 09:13:42 --- quit: rgrinberg (Remote host closed the connection) 09:16:03 --- join: rgrinberg (~rgrinberg@24-246-56-85.cable.teksavvy.com) joined #forth 09:21:48 Wow! Forth Wiz is still popular :) 09:22:55 crc, Sorry, I have no ready to use links, but there definitely were some implementations of this simple idea. 09:23:22 --- quit: ASau (Ping timeout: 250 seconds) 09:37:41 --- quit: mnemnion (Remote host closed the connection) 10:00:17 --- join: Zarutian (~zarutian@168-110-22-46.fiber.hringdu.is) joined #forth 10:00:34 --- join: mnemnion (~mnemnion@152.179.131.166) joined #forth 10:00:52 --- join: lucasaiu (~user@fsf/member/lucasaiu) joined #forth 10:01:02 --- quit: Zarutian (Read error: Connection reset by peer) 10:02:05 --- join: Zarutian (~zarutian@168-110-22-46.fiber.hringdu.is) joined #forth 10:04:48 --- quit: mnemnion (Ping timeout: 250 seconds) 10:04:56 --- join: mnemnion (~mnemnion@152.179.131.166) joined #forth 10:23:29 --- join: PoppaVic (~PoppaVic@unaffiliated/poppavic) joined #forth 10:33:51 --- join: neceve (~ncv@86.125.241.206) joined #forth 10:33:51 --- quit: neceve (Changing host) 10:33:51 --- join: neceve (~ncv@unaffiliated/neceve) joined #forth 10:45:18 --- join: proteusguy_sat2 (~proteusgu@180.183.130.27) joined #forth 10:48:38 --- quit: proteusguy (Ping timeout: 244 seconds) 11:48:37 --- join: ASau (~user@netbsd/developers/asau) joined #forth 11:53:52 --- join: ASau` (~user@82.113.98.13) joined #forth 11:55:16 --- quit: ASau (Read error: Connection reset by peer) 12:18:40 --- quit: dcs (Ping timeout: 256 seconds) 12:19:47 --- quit: desolator (Remote host closed the connection) 12:48:56 --- mode: ChanServ set +v crc 12:57:54 --- quit: crc (Quit: leaving) 13:00:41 --- join: crc (uid2647@gateway/web/irccloud.com/x-gafmfbjdyglmxbls) joined #forth 13:02:15 --- quit: neceve (Quit: Konversation terminated!) 13:14:38 --- mode: ChanServ set +v crc 13:15:04 --- nick: ASau` -> ASau 13:37:53 is there any reason spefically for splitting up the dictionary into code and name dictionaries other than the ability of later being able to remove the name dictionary? 13:39:49 Zarutian: perhaps you have segmented memory? 13:40:04 Mostly, so you can strip it out, though 13:40:45 hmm.. segmented or banked memory might be a good reason too. 13:41:29 or even "words/lists are off on my sdcard/ssd.whatever" 13:43:40 hmm.. makes implementing subwords a bit tricky 13:44:26 (subwords being that inside an : ... ; you can have multiple other such : ... ; which can only be referenced inside the outer : ... ; ) 13:46:19 --- quit: irsol (Ping timeout: 248 seconds) 13:47:17 Are there situations where that would be more helpful than just putting the inner definitions before the outer definition? I suppose if you wanted to use a definition that had the same name as the inner definition after finishing compiling the outer definition... 13:48:36 reepca: namespaceing of complex functionality like SHA-256 hashing and such. 13:49:01 --- quit: ids1024 (Ping timeout: 250 seconds) 13:49:01 --- quit: lucasaiu (Ping timeout: 250 seconds) 13:49:01 --- join: ids1024 (~ids1024@iandouglasscott.com) joined #forth 13:49:01 --- quit: ids1024 (Changing host) 13:49:02 --- join: ids1024 (~ids1024@unaffiliated/ids1024) joined #forth 13:49:30 meh 13:49:44 also want to be able to SEE such an outermost definition and get what subwords it has. 13:49:50 --- join: irsol (~irsol@unaffiliated/contempt) joined #forth 13:57:09 There was interesing module system implementation. In some old Forth jornal. 13:59:30 "Structured Programmlng By Adding Modules To Forth" 14:00:18 sounds like OOP and elf/dlopen 14:00:39 I hope somebody here remembers it. 14:01:00 look for the OCR version online 14:01:13 It was in Forth Dimensions. 14:05:19 : INTERNAL ( --> ADDR) CURRENT @ @ ; 14:05:19 : EXTERNAL ( --> ADDR) HERE ; 14:05:19 : MODULE( ADDRl ADDR2 --> ) PFA LFA ! ; 14:06:13 Compare it with some big and ugly implementations in ANS94-era :) 14:07:53 But I still have one question about this classical article. It was written by Dewey Val Schorre. I'm very curious is it THAT Val Schorre? 14:16:42 --- join: dcs (~moby@189-105-251-179.user.veloxzone.com.br) joined #forth 14:17:04 --- nick: dcs -> Guest56182 14:59:27 --- quit: rgrinberg (Ping timeout: 252 seconds) 15:24:19 --- join: nal (~nal@adsl-64-237-239-31.prtc.net) joined #forth 16:06:47 --- join: nisstyre (~yourstrul@li611-52.members.linode.com) joined #forth 16:07:01 --- quit: nisstyre (Changing host) 16:07:01 --- join: nisstyre (~yourstrul@oftn/oswg-member/Nisstyre) joined #forth 16:15:04 --- quit: true-grue (Read error: Connection reset by peer) 16:24:37 --- join: dys (~dys@ip-109-44-2-47.web.vodafone.de) joined #forth 17:04:00 --- quit: mnemnion (Remote host closed the connection) 17:10:48 --- join: mnemnion (~mnemnion@152.179.131.166) joined #forth 17:15:10 --- quit: mnemnion (Ping timeout: 260 seconds) 17:22:38 --- quit: PoppaVic (Ping timeout: 250 seconds) 17:23:07 --- join: mnemnion (~mnemnion@2601:643:8102:7c95:c8c5:5b9a:f68b:3936) joined #forth 17:27:47 --- quit: mnemnion (Ping timeout: 260 seconds) 17:31:48 --- join: mnemnion (~mnemnion@2601:643:8102:7c95:c8c5:5b9a:f68b:3936) joined #forth 18:51:45 --- quit: Guest56182 (Quit: Leaving) 19:16:12 --- join: neceve (~ncv@unaffiliated/neceve) joined #forth 19:23:25 --- quit: karswell (Quit: ERC (IRC client for Emacs 25.1.1)) 19:24:30 --- quit: ricky_ricardo (Read error: Connection reset by peer) 19:29:15 --- quit: Zarutian (Quit: Zarutian) 19:49:05 I have a function named foo and the first line in that function is to console.log("you've reached the scope of foo") but when I call that function "you've reached the scope of foo" never prints 19:49:18 oops I meant to type that into ##javascript 20:23:04 true-grue, crc: Is this the one? http://www.forth.org/fd/FD-V19N6.pdf#page=6 20:26:52 pointfree: this is close enough for my purposes, thanks :) 20:41:30 --- join: karswell (~user@124.209.208.46.dyn.plus.net) joined #forth 21:50:41 --- join: PoppaVic (~PoppaVic@unaffiliated/poppavic) joined #forth 21:58:13 --- part: PoppaVic left #forth 22:12:17 --- quit: John[Lisbeth] (Remote host closed the connection) 22:20:22 --- nick: proteusguy_satri -> proteus_swims 22:22:39 --- quit: nal (Read error: Connection reset by peer) 22:39:57 --- quit: neceve (Quit: Konversation terminated!) 22:52:23 --- join: groovy2shoes (~groovy2sh@unaffiliated/groovebot) joined #forth 23:59:59 --- log: ended forth/16.11.04