00:00:00 --- log: started forth/16.08.11 00:19:13 --- quit: nal (Ping timeout: 250 seconds) 01:18:54 --- quit: proteusguy (Ping timeout: 258 seconds) 01:30:58 --- join: proteusguy (~proteusgu@180.183.133.31) joined #forth 01:30:58 --- mode: ChanServ set +v proteusguy 01:43:41 --- join: nerfur (~nerfur@mail.freeside.ru) joined #forth 01:44:14 hello, #! 02:11:16 --- join: MickyW (~MickyW@p4FE8C0E8.dip0.t-ipconnect.de) joined #forth 02:19:43 --- part: MickyW left #forth 02:29:46 --- join: wa5qjh (~Thunderbi@203.111.224.44) joined #forth 03:41:58 --- join: reepca (~user@184.52.15.40) joined #forth 03:57:50 --- quit: dys (Ping timeout: 264 seconds) 03:58:52 --- quit: karswell (Remote host closed the connection) 04:00:10 --- join: karswell (~user@179.63.114.87.dyn.plus.net) joined #forth 04:10:35 --- quit: karswell (Ping timeout: 258 seconds) 04:17:26 --- quit: proteusguy (Ping timeout: 240 seconds) 04:42:00 --- join: DGASAU (~user@lmpc.drb.insel.de) joined #forth 04:42:00 --- quit: DGASAU (Remote host closed the connection) 04:42:03 --- nick: DGASAU` -> DGASAU 05:34:35 --- quit: reepca (Read error: Connection reset by peer) 05:35:39 --- join: reepca (~user@184.52.15.40) joined #forth 05:48:36 --- quit: wa5qjh (Remote host closed the connection) 06:28:55 --- quit: nighty (Ping timeout: 240 seconds) 06:41:57 --- join: byteflame (~byteflame@70-89-65-45-little-rock-ar.hfc.comcastbusiness.net) joined #forth 06:46:36 --- join: nighty (~nighty@s229123.ppp.asahi-net.or.jp) joined #forth 07:22:26 --- join: proteusguy (~proteusgu@14.207.3.103) joined #forth 07:22:26 --- mode: ChanServ set +v proteusguy 07:26:38 --- quit: nighty (Ping timeout: 264 seconds) 07:38:18 --- join: nighty (~nighty@s229123.ppp.asahi-net.or.jp) joined #forth 07:38:50 --- quit: I440r (Ping timeout: 252 seconds) 09:00:15 --- quit: fiddlerwoaroof (Quit: Gone.) 11:08:30 Mat4, proteusguy: My message may have been cut off. I was inquiring about how to use OKAD, Chuck Moore's VLSI tool. 11:13:29 pointfree, yes and I was remarking that I didn't know he made the thing available. Is it for sale? How much? 11:45:25 --- join: Zarutian (~zarutian@168-110-22-46.fiber.hringdu.is) joined #forth 12:35:24 --- join: Mat4 (~claude@ip5b40bd37.dynamic.kabel-deutschland.de) joined #forth 12:37:04 hi all 12:44:00 pointfree: To my knowledge OKAD is only public described in his SVFIG talks. However, I doubt if the presented informations are sufficient for using it. 12:47:28 there may exist a some detailed documentation either embedded in the sources (which I do not know) or separately for which I expect to be not public available 12:49:02 I think the best would be study the sources if possible 12:50:37 ... if he sells OKAD and the copyright allows such study 12:52:03 --- part: PoppaVic left #forth 13:04:14 anyhow, this CAD software seem to be created for designing at gate level as I had seen (this may be wrong). At these level you can theoretical use every paint program or even pen and paper for construction. The 6502 processor for example was completely implemented without any software aid and this is still possible up to a specific complexity level albeit not common usage these days of course (I hope you does not want to create the mask 13:25:46 I was just entertaining the idea of doing an mpw run of sparsecore in the distant future: https://hackaday.io/project/11476-sparsecore 13:25:54 ...but only if I can prove that it is in any way better than a GPU. 13:27:20 --- join: MickyW (~MickyW@p4FE8D213.dip0.t-ipconnect.de) joined #forth 13:27:33 --- part: MickyW left #forth 13:27:56 Mat4: it does simulation, which you cannot do in MS paint... 13:29:25 I imagine he also does some sort of synthesis from higher level constructs, but I have no idea if that's ture or to what extent that might be 13:29:34 true* 13:32:43 The arrayforth exe is named Okad2.exe 13:33:04 Gracana: thanks for the info. As written my knowledge about OKAD is quite limited 13:33:04 block 900 has some OKAD related stuff. 13:38:33 pointfree: with GPU you mean one of these SIMD array processing heat plates for 3D acceleration ? 13:41:03 --- join: Carisius (~Carisius@cli-5b7ec64f.ast.adamo.es) joined #forth 13:42:16 Mat4: Yes, SIMD. So I can do Boolean operations over a sparse binary bitmap. 13:43:14 yeah I noticed that as well, pointfree 13:43:24 I didn't see the block 900 stuff though 13:43:48 but anyway I'm not sure OKAD would be very useful to someone who isn't chuck 13:44:19 other than as a source for inspiration / a few algorithms.. like most of his work, it is probably tailored to him and his use case 13:44:38 even between projects he tends to rewrite a lot of stuff 13:44:46 I thought Jeff Fox used OKAD as well. 13:47:46 he used his own ISA simulation framework for sure, which have a nice interface 13:54:24 pointfree: I know for AMD GPU's that's a quite efficient operation performance wise. However, the performance to wattage ratio for common GPUs is general intolerable in my opinion so each potential alternative with lesser logic complexity is principle better even is the performance to be expected is lower 13:58:31 I mean who really want to use a graphic card which heat around 40-80 ′C even with efficient cooling if it usage is avoidable ? 14:00:46 Yeah, I'm hoping sparsecore's current consumption will be much lower than a typical GPU. Especially because it is intended to be a microcontroller. 14:03:59 FPGAs aren't great for saving power :/ 14:06:22 And the ice40 isn't particularly beefy. But from the standpoint of "here's a system designed for my purpose with all of the details in the open so I can understand them," it is really awesome. 14:06:37 One reason I was interested in Chuck's VLSI tools is for the supposed asynchronous design possibilities. 14:06:44 With a sparse bitmap, https://github.com/numenta/nupic/wiki/Sparse-Distributed-Representations I hope to have the uC draw no current when transmitting 0s. 14:06:56 Gracana: yes, however the ICE40 series support some nice power management functionality and need for sure less power than a GPU 14:07:51 pointfree: anecdotally, I've heard that FPGAs are not good for asynch design. Probably it is hard to design an arbiter that works properly in an FPGA with the logic and fabric available. 14:09:02 FPGAs are not really a good fit for asynchronous designs, that's true to my current knowledge 14:09:03 Mat4: oh I guess he did say "in any way better" and in terms of power usage, not power per watt, yeah.. better 14:20:04 --- quit: eldre (Ping timeout: 276 seconds) 14:28:21 --- join: wa5qjh (~Thunderbi@203.111.224.46) joined #forth 14:28:35 probably a general purpose CPU for FPGA which operate on a bitmap would be similar efficient or more flexible, who knows 14:31:20 --- quit: byteflame (Ping timeout: 252 seconds) 14:31:25 I'm exploring the possibilities of dynamic reconfiguration at current for general purpose computing and hope to use an ICE40 series FPGA as affordable target 14:36:52 by doing this I've learned that FPGAs require some special knowledge for efficient design 14:38:44 there are not easy to handle 14:45:34 the time required for a regular reconfiguration is high for example so I had to found another way doing this 14:45:50 --- part: Mat4 left #forth 15:11:59 --- join: Mat4 (~claude@ip5b40bd37.dynamic.kabel-deutschland.de) joined #forth 15:12:24 --- part: Mat4 left #forth 15:25:03 --- join: mark4 (~mark4@99-164-75-34.lightspeed.rcsntx.sbcglobal.net) joined #forth 15:27:38 --- quit: Carisius (Read error: Connection reset by peer) 15:34:17 --- join: fiddlerwoaroof (~fiddlerwo@unaffiliated/fiddlerwoaroof) joined #forth 16:20:58 --- quit: Keshl (Ping timeout: 276 seconds) 16:23:05 --- join: Keshl (~Purple@24.115.181.94.res-cmts.gld.ptd.net) joined #forth 16:26:18 --- join: karswell (~user@179.63.114.87.dyn.plus.net) joined #forth 16:46:42 --- quit: nighty (Quit: Disappears in a puff of smoke) 17:12:15 --- quit: Zarutian (Quit: Zarutian) 17:25:44 --- join: nighty (~nighty@d246113.ppp.asahi-net.or.jp) joined #forth 17:32:40 --- quit: wa5qjh (Remote host closed the connection) 18:16:48 --- join: nighty-- (~nighty@d246113.ppp.asahi-net.or.jp) joined #forth 18:20:41 --- join: dys (~dys@x5f726df2.dyn.telefonica.de) joined #forth 18:34:13 --- join: reepca` (~user@184.52.15.40) joined #forth 18:36:32 --- join: wa5qjh (~Thunderbi@203.111.224.46) joined #forth 18:37:45 --- quit: reepca (Ping timeout: 265 seconds) 18:44:56 Mat4: Unfortunately the iCE40 configures only on reset so dynamic reconfiguration is most likely not possible on the iCE40 FPGA. 18:45:01 http://vjordan.info/log/fpga/i-am-on-reddit-woo-hoo.html 18:46:40 However, check out the rest of Vincent Jordan's blog where he does dynamic reconfiguration on a Xilinx LX9 with his free/open tools. 18:47:48 --- quit: reepca` (Read error: Connection reset by peer) 18:51:09 --- join: reepca` (~user@184.52.15.40) joined #forth 18:52:48 --- quit: reepca` (Read error: Connection reset by peer) 18:58:53 --- join: reepca` (~user@184.52.15.40) joined #forth 19:20:17 --- quit: reepca` (Ping timeout: 265 seconds) 19:40:31 --- join: M-jimt (jimtmatrix@gateway/shell/matrix.org/x-brfurjwaovquuets) joined #forth 19:47:12 --- quit: Skuzzzy (Read error: Connection reset by peer) 19:56:16 --- quit: ovf (Read error: Connection reset by peer) 20:01:08 --- join: ovf (sid19068@gateway/web/irccloud.com/x-omzkcvjshbbodrva) joined #forth 20:25:45 --- quit: karswell (Read error: Connection reset by peer) 20:25:52 --- join: karswell` (~user@179.63.114.87.dyn.plus.net) joined #forth 21:22:16 --- join: nal (~nal@adsl-72-50-87-144.prtc.net) joined #forth 21:35:11 --- join: joneshf-laptop (~joneshf@c-73-220-86-28.hsd1.ca.comcast.net) joined #forth 21:37:05 --- join: systemsgotyou (~User@71.91.8.13) joined #forth 21:37:15 anyone around? 21:57:32 systemsgotyou: yea 21:57:43 could you help me out 21:57:58 alright 21:58:11 i am looking for which ide this guy is talking about 21:58:13 http://www.eetimes.com/document.asp?doc_id=1261676&page_number=2&piddl_msgpage=6#msgs 21:58:21 user sharps_eng 21:58:35 he talks about forth ide 21:58:45 i want to know what he is describing 22:03:00 He must just be describing an embedded Forth interpeter, which is effectively an IDE because it exposes the compilers, debuggers, editors, cli, etc. as a part of the language. 22:03:39 hmm 22:03:40 ok 22:03:47 i am using swiftforth right now 22:03:53 this seems very unique 22:04:12 where is forth used? 22:06:01 how do I reset the compiler's words 22:06:27 I like to use it on microcontrollers. Brad Nelson likes to use it for demoscene stuff: http://forthsalon.appspot.com/ 22:06:43 could it be used for web apps? 22:07:23 crazy question maybe 22:07:31 Some people have written webservers in Forth, others have written Forths in Javascript. 22:08:35 i cant seem to get this tutorial to work 22:08:40 http://c2.com/cgi/wiki?ExampleForthCode 22:08:41 You can reset the compiler's words with words like MARKER or FORGET 22:09:02 it says "FORGET ?" 22:10:50 same as the turoail 22:10:56 says "STARS ?" 22:10:57 Not all Forths include the word FORGET 22:11:14 which is the most popular? 22:11:22 versions of forth that is 22:11:22 The question mark ? means the word is not defined. 22:13:37 now, for the stars example it shows "Attempt to use zero-length string as a name" 22:13:42 I use many different Forths. There is gForth for desktop, amforth for ATMEGA microcontrollers, mecrisp-stellaris for ARM Cortex-M's and many more. 22:13:51 I am using "CR 7 STARS" 22:15:20 I tried: 22:15:29 : STAR 42 EMIT ; 22:15:42 does it have to be on the same line? 22:15:43 : STARS 0 DO STAR LOOP ; 22:15:51 CR 7 STARS 22:15:58 ( and that worked) 22:16:14 No, doesn't have to be on the same line. 22:16:27 thats what I did then 22:17:07 By the way, have you seen: https://www.forth.com/starting-forth/ 22:18:46 thanks 22:19:00 what is your opinion of the swiftx ide? 22:22:35 Haven't used it myself because it's not free, but people seem to like it (such as Roger Levy, a Forth game developer) 22:24:44 Also check out Thinking Forth http://thinking-forth.sourceforge.net/ once you've been through Starting Forth. 22:27:18 systemsgotyou: Regarding your error "Attempt to use zero length string as name" 22:27:56 You need to at least have the colon and the name that follows on the same line because it is a parsing word. 22:28:41 ok thank you 22:29:55 the game dev you mentioned, is he making embedded games? 22:30:24 or can forth be for windows,etc 22:32:06 He writes his games in SwiftForth and sells them on Steam, but his game engine is open source: https://bitbucket.org/rogerlevy/bubble-platform 22:33:07 but what does he write for? the win platform? 22:33:23 He posts on https://www.reddit.com/r/Forth/ under the name mcsleepy 22:34:00 Windows presumably, or any platform that SwiftForth runs under. 22:41:16 nice 22:41:40 can the swiftforth show the assembly code 22:41:52 of a program 22:43:31 Some Forths will include introspection words such as SEE and SIFTING http://wiki.laptop.org/go/Forth_Lesson_5 22:44:38 nice 22:47:04 wow this is really nice 22:47:10 the stars tut worked 22:47:14 and i ran see STARS 22:47:25 now I see the assembly code 22:48:25 why isnt forth better known? 22:52:19 I wish it was. At work I sometimes mock up a simple driver in Forth before I write one in C, because it's easy to poke around the registers and see what happens with @ and ! 22:56:32 what about web apps that's what I want to know 23:01:33 is forth being activley developed? 23:02:15 Sam Falvo once wrote a blog engine in Forth and made a video about it: https://www.youtube.com/watch?v=mvrE2ZGe-rs 23:03:24 As for Forth's written in Javascript this one is my favorite: https://www.reddit.com/r/Forth/comments/38d2ch/forth_vm_in_javascript_and_selfextending_code/ 23:08:22 thanks! 23:09:38 Forth still has an active community and a few companies supporting it (most notably MPE Inc, Forth Inc, Greenarrays, and maybe other mysterious entities like Merj where https://www.reddit.com/user/dlyund works) 23:10:08 https://github.com/marksmith http://www.merj.com/ 23:13:02 systemsgotyou, my father explained it once very nicely 23:13:22 lets say you bought microsoft C version 1.0 and i bought microsoft forth version 1.0 23:13:36 every time you found a bug you would have to wait for ms to fix it 23:13:39 i would just fix it 23:13:54 any time you saw a deficiency in C you would have to wait for ms to address it 23:13:59 i would just code the extension 23:14:18 code the extention, you mean change the word def? 23:14:25 every time ms released a new version you would go spend $800 for the upgrade 23:14:37 i would simply ugrade my existing forth as i saw fit 23:14:46 if i wanted to 23:15:07 but lets say i wanted my forth compiler to support AVR as well as ARM and X86 23:15:18 i could write the assemblers and BAM i got it 23:15:27 you on the other hand would have to buy a new version of the compiler 23:15:36 plus all the expensive upgrades and updates to it 23:15:49 isnt writing the assembler very difficult? 23:16:08 10 years down the line you bought 7 upgrades for 800 each and i just have the initial investnment 23:16:10 no 23:16:13 trivial 23:16:32 ive always thought it was very hard 23:16:33 m$ knows this is the way it would go. they dont have a forth compiler. it wouldnt make them any money 23:16:38 what does it involve 23:16:57 you would have to learn more forth. once you understand forth writing anything in it is trivial 23:17:15 m$ wont market forth. nor will any of the other big software development houses 23:17:23 therefore... nobody knows forth 23:17:29 hmm 23:17:32 interesting 23:17:37 i got 3 hours of sleep last night. its 1am here now :P 23:17:44 im about to fall assleep at kbd :P 23:18:08 so it seems like forth is sort of an industry secret 23:18:11 forth is also very difficult to learn by yourself AT FIRST. once you get over the initial hump its easy peasy 23:18:17 most people never get over the hump 23:18:27 it is to a degree 23:18:56 until a few years ago direct-tv satellite tracking systems were coded exclusively in forth by vertex-rsi 23:18:57 why would it be difficult? it seems easy from what ive seen 23:19:08 general dynamics bought them out and put an end to that 23:19:22 but the tracking systems and signal mux/demux was all in forth 23:19:29 it is. but 23:19:51 1 + 2 * 3 / 4 is the way people thing 23:20:00 not 1 2 + 3 * 4 / 23:20:22 3 1 2 * + 4 / 23:20:22 yeah i havent seen that 23:20:31 why is it like that? 23:20:35 it is how EVERYTHING in forth works 23:20:42 learn forth... you will understand 23:20:51 and you will see it SIMPLIFIES things 23:20:58 anyway i have to sleep :) 23:21:14 its called reverse polish notation i believe 23:21:25 Implicit, unnamed parameters makes Forth concise. 23:21:27 :) 23:21:32 nite 23:21:52 gn 23:21:59 gn 23:22:24 : RINSE FAUCETS OPEN TILL­FULL FAUCETS CLOSE ; 23:22:25 : WASHER WASH SPIN RINSE SPIN ; 23:22:30 or 23:22:51 : write_page write writing finished ; 23:22:53 : read_page read reading finished ; 23:23:30 Would be more complicated with explicitly named parameters. 23:23:46 self documenting code 23:24:46 Yes, a word is a slice of code pulled out into a "factor" much like in algebra. 23:25:43 systemsgotyou, another way of "resetting" dictionaries is by using multiple vocabularies and changing their order of precedence. Think of a vocabulary as a context for your dictionary search. 23:25:51 The word factoring and later refactoring was originally coined by the Forth community. 23:25:56 --- quit: mark4 (Ping timeout: 244 seconds) 23:29:29 I'm not familiar with swiftforth. What's it's claim to fame? 23:30:25 its an idea 23:30:27 It's a commercial Forth from Forth, Inc. 23:30:29 ide 23:36:55 dlyund on reddit mentioned that the Forth at Merj uses a simpler alternative to vocabularies by leveraging Forth's hyperstatic scope http://c2.com/cgi/wiki?HyperStaticGlobalEnvironment 23:39:23 I redefine words liberally to keep names short and contextual. If one can fetch and store words easily, he said, you can BIND a previous context to the current context. 23:39:31 you know, this is the first prog language that gets me excited 23:41:09 how does it compare to OOP? 23:49:04 There's some rather tiny implementations of conventional OOP in Forth (HYPE for instance), but for me, the CREATE ... DOES> construct is more than enough... 23:49:11 http://www.strangegizmo.com/forth/ColorForth/msg02861.html 23:52:42 --- join: leaverite (~Thunderbi@203.111.224.33) joined #forth 23:54:21 --- quit: wa5qjh (Ping timeout: 244 seconds) 23:54:22 --- nick: leaverite -> wa5qjh 23:59:59 --- log: ended forth/16.08.11