00:00:00 --- log: started forth/15.04.14 00:54:21 --- join: proteusguy (~proteusgu@183.88.33.190) joined #forth 00:54:21 --- mode: ChanServ set +v proteusguy 01:16:29 --- join: nighty^ (~nighty@hokuriku.rural-networks.com) joined #forth 01:30:32 --- quit: xyh (Remote host closed the connection) 01:31:11 --- join: xyh (~xyh@2001:250:3002:5550:6ea1:cc0f:bcb2:b187) joined #forth 01:32:54 --- quit: mnemnion (Remote host closed the connection) 01:33:22 --- join: mnemnion (~mnemnion@c-98-210-219-91.hsd1.ca.comcast.net) joined #forth 01:37:05 --- quit: atommann (Excess Flood) 01:37:43 --- quit: mnemnion (Ping timeout: 250 seconds) 01:39:36 --- join: atommann (~atommann@58.251.2.94) joined #forth 01:59:54 --- join: t4nk288 (5c28f9bc@gateway/web/freenode/ip.92.40.249.188) joined #forth 02:01:33 Hi, Probabley a silly newb question, only just started with Forth, but if i've been creating words all-day, how can i save my own words in my session so i can resume work at a later date? 02:02:28 save your code in a file , load it next time 02:02:56 thanks, how can i do that from within gforth? 02:04:19 you do not. gforth is a interpreter, you use a text editor to edit you source code 02:05:37 i think i'm starting to understand, so if i've just created a word that i'd like to keep, i would use something like 'see word' and then copy and paste from my interpreter into a text file? 02:07:04 xyh, does gforth not have an editor environment you can enter? 02:09:52 t4nk288: interpreter is for to test your code quickly, you can edit you code in a editer, and copy them to interpreter to test them. and load the file when needed next time. 02:10:27 t4nk288, I know what you're thinking - you want an interpreted environment similar to ipython that is easy to get in & out of the state of your session and persist it in source code. 02:11:20 xyh, how can you enter the editor from within the interpreter? there's should be a word to jump into the interpreter at a specific file or block # right? 02:13:17 proteusguy: I am thinking of emacs and the forth-mode of emacs ~~~ 02:13:41 thanks for your assistance, i see that gforth has an emacs-mode but i'm not too familiar with emacs, more of a vi man myself, is there an implmentation that might be better suited to my newby needs/ 02:13:48 --- join: true-grue (~grue@95-27-152-116.broadband.corbina.ru) joined #forth 02:14:56 xyh, emacs is about as anti-forth a thing as you can get! :P goes gforth have no word to enter into an editor from the interpreter? I thought "real forths" had this. (I've never used gforth personally) 02:16:07 * tangentstorm wrote a retro-mode for emacs. :) 02:16:17 I asl 02:16:26 I also have cicada-mode 02:16:39 I do not use gforth too 02:18:14 thanks for the assistance xyh, proteusguy any recommendations for a forth that works on linux + osx and has an editor? (and free or cheap to purchase) 02:19:29 t4nk288: maybe you should try retro (it is a forth-like language not forth, but fun to play with) :: http://www.forthworks.com/retro 02:19:59 thanks, i will check it out 02:20:11 t4nk288: and the crc here is the author of retro :) 02:20:21 t4nk288, honestly I've only ever seriously used my own forth-ish implementations so I'm a poor source. I think isforth MAY have such a thing but couldn't promise. Mark could say. Also, forths on hosted OS machines commonly use filenames and the file system these days whereas classic forth used fixed size blocks and no OS. Filesystem complexity makes it a bit more complex to do this. 02:22:13 t4nk288: you see that fun thing is to implement your own forth-ish language here 02:22:25 If you find a forth that only uses the filesystem to hold a set of fixed blocks and not individual named files then you'll likely find what I described implemented. With that you could easily build a word that puts you into the editor along with the source code of the word(s) you've got on the stack then you can edit and reexecute the block which will update your implementation. 02:24:06 thanks again, i think i confused myself with old school tutorials & new world implementations of forth 02:25:49 t4nk288, that is indeed a problem. old school forth is it's own OS. Most forths today that people download are hosted in an OS and that poses certain tradeoffs. Old school forth commonly had a set of hueristics like which blocks do which things that just disappears in OS-based forths and actually means things are a bit harder to port/understand ironically. 02:27:35 t4nk288, of course backing up your source files and being able to edit them in your favorite editor could be considered a significant bonus... but personally it's a false advantage that causes people to write bigger words than they should and add to the complexity of their apps. But I'm a curmudgeon and very old and mostly program in python/C++ anyway so I can afford to be traditional with my forth-isms. ;) 02:28:14 do you have/use a bootable forth on modern machines, proteusguy ? 02:28:43 i know the freebsd bootloader is such a thing but i haven't used it much. 02:30:01 tangentstorm, only small forth-ish systems but yes - direct to metal in ASM. 02:30:15 That's actually all I ever have written "real" applications in forth. Never a hosted system. 02:30:49 neat 02:31:01 do you have tcp/ip, or just go without? 02:31:37 no - and sometimes's I've missed it. typically serial to a mother device that has an IP stack. 02:33:04 Here's a list of Bare Metal Forths out there that I've either played with or read up on for inspiration: http://pastebin.com/MKbgWyKK 02:41:30 Here's a few others (mostly ARM focused) but with interesting background info that is useful to any forth-ish designer: http://pastebin.com/Gi97p07x 02:45:19 the camera fpga thing looks interesting (http://wiki.ros.org/wge100_camera_firmware) 02:50:25 --- join: atommann_ (~atommann@58.251.2.94) joined #forth 02:50:42 --- quit: atommann (Excess Flood) 02:55:29 --- join: true-grue_ (~grue@95-27-152-116.broadband.corbina.ru) joined #forth 03:00:59 --- quit: xyh (Remote host closed the connection) 03:05:28 --- quit: true-grue (*.net *.split) 03:05:28 --- quit: proteusguy (*.net *.split) 03:14:32 --- quit: t4nk288 (Ping timeout: 246 seconds) 03:15:32 --- join: GeDaMo (~GeDaMo@212.225.93.112) joined #forth 03:28:35 --- quit: atommann_ (Quit: Leaving) 03:41:21 --- quit: karswell` (Ping timeout: 256 seconds) 04:12:23 --- quit: rixard (Remote host closed the connection) 04:12:49 --- join: rixard (~rixard@90-229-190-197-no63.tbcn.telia.com) joined #forth 04:21:30 --- join: proteusguy (~proteusgu@183.88.33.190) joined #forth 04:21:31 --- mode: ChanServ set +v proteusguy 05:01:00 --- join: atommann (~atommann@222.248.72.156) joined #forth 05:33:29 --- join: mnemnion (~mnemnion@c-98-210-219-91.hsd1.ca.comcast.net) joined #forth 05:38:12 --- quit: mnemnion (Ping timeout: 245 seconds) 05:52:19 actually i think vim is nature for forth, since its keybinding are like stack based, for eg `10d` 06:04:59 --- quit: joneshf-laptop (Ping timeout: 272 seconds) 06:05:08 --- quit: rixard (Read error: Connection reset by peer) 06:15:44 yunfan, as opposed to emacs you'd be right but even vim is heavy weight for forth. 06:29:22 For no reason (other than it has vi, I suppose) "Over the Shoulder 1 - Text Preprocessing in Forth" https://www.youtube.com/watch?v=mvrE2ZGe-rs&feature=youtu.be (1:06:25) 06:42:10 Falvo's video right? He's great. 06:42:20 Yeah 06:45:12 oh he's using gforth! t4nk288 was just asking about that earlier... 06:46:55 haven't watched this in years. excellent sample session. 06:47:11 damn now I can't stop... great you're gonna kill my hour! :P 06:47:36 I like his ecr word which clears the dictionary, runs vi to edit then reloads the program 06:47:47 :D 07:02:07 proteusguy: yes, so i was think if people could made a emacs like enviroment using forth as the scripting language, and give it a vi like keybinding default 07:03:37 I had a line based block editor in my own forth-ish. You build everything inside the environment cause moving on/off the host computer was a pita. 07:06:31 It worked very similar to edlin which was a tiny DOS line editor back in the day. 07:16:58 * tangentstorm remembers edlin :) 07:17:14 * GeDaMo also remembers edlin 07:17:37 Although I mainly used WordStar for editing :P 07:26:21 * proteusguy still uses WordStar control codes with his joe editor cause that's the command set TurboPascal 2.0 used. ;) 07:36:27 --- join: xyh (~xyh@2001:250:3002:5550:6ea1:cc0f:bcb2:b187) joined #forth 07:54:40 --- quit: atommann (Quit: Leaving) 08:03:12 --- join: mnemnion (~mnemnion@c-98-210-219-91.hsd1.ca.comcast.net) joined #forth 08:05:37 --- join: kumul (~mool@adsl-72-50-86-197.prtc.net) joined #forth 08:25:13 * tangentstorm still writes code in pascal :) 08:26:01 --- join: mark4_ (~mark4@38.122.200.194) joined #forth 08:31:36 --- quit: darkf (Quit: Leaving) 08:49:54 tangentstorm, seriously? wow... not even Delphi but actual pascal? What platform? 08:59:40 free pascal for freebsd/linux/windows 09:01:06 https://github.com/sabren/b4/ <- various forth+pascal -related things here. (ng/ is a port of retro's ngaro virtual machine, for example) 09:02:27 the turbo directory is a little forth vm (inner interpreter) + assembler thing with console mode visualization that i wrote in actual turbo pascal 09:02:45 but it runs under fpc too now. 09:05:16 http://i.imgur.com/zMvxYZ0.png is a screenshot of a sort of repl/stack visualizer thing with keybindings for push and pop 09:05:46 the effect is that you can pretty much edit the stack interactively without having to type out the commands 09:05:51 i think i implemented swap and delete too 09:06:33 the idea is you press some hotkey and this little shell pops up from anywhere in the application. 09:07:38 * tangentstorm was working on some pretty cool stuff before he ran out of funding at had to start looking for work. :( 09:07:45 Wow I just can't imagine writing a forth in a language like pascal... :P Better than java I guess! I could see writing a pascal compiler/interpreter in forth quite easily. 09:08:00 tangentstorm, that always sucks. :( 09:09:16 --- quit: mnemnion (Remote host closed the connection) 09:09:28 tangentstorm: come to china and startup :) 09:09:43 --- join: mnemnion (~mnemnion@c-98-210-219-91.hsd1.ca.comcast.net) joined #forth 09:09:54 it's not really a forth yet, because the dictionary just maps symbols to commands in pascal. 09:10:37 all the infrastructure to use a real dictionary and colon definitions is there, but i haven't actually implemented them. 09:11:34 xyh: i don't think i could make it to china right now :) 09:13:57 --- quit: mnemnion (Ping timeout: 244 seconds) 09:42:45 --- join: johnmark (~johnmark@c-73-51-235-57.hsd1.il.comcast.net) joined #forth 09:42:53 --- nick: johnmark -> JohnMarkM 09:45:58 tangentstorm: Compiling ./lib/xpl/code/xpc.pas || xpc.inc(9,4) Warning: Illegal compiler switch "UNICODESTRINGS" || xpc.pas(74,9) Fatal: Syntax error, ">" expected but ":" found 09:45:58 Fatal: Compilation aborted || Error: /usr/bin/ppcx64 returned an error exitcode (normal if you did not specify a source file to be compiled) 09:45:58 Makefile:72: recipe for target 'any.ng' failed 09:46:31 you need fpc trunk / nightly snapshot 10:11:08 --- quit: kumul (Ping timeout: 245 seconds) 10:11:25 --- join: kumul (~mool@adsl-72-50-86-197.prtc.net) joined #forth 10:24:56 --- join: rixard (~rixard@90-229-190-197-no63.tbcn.telia.com) joined #forth 10:29:20 tangentstorm: https://github.com/sabren/b4/issues/1 10:29:32 --- join: mnemnion (~mnemnion@2601:9:4300:438:e5a1:d5da:6f09:4d43) joined #forth 10:30:32 wow. my first actual user and first bug report. :) 10:30:33 does fp has a package manager ? 10:31:09 fp's terminal editor looks cool 10:31:13 yes sort of 10:31:27 whoah. brand new fpc, huh? 10:31:39 3.1.1? 10:31:41 yes ~ the git version 10:32:27 too new to compile b4 ? 10:48:09 --- join: ASau (~user@46.115.151.27) joined #forth 10:52:18 --- join: Zarutian (~Adium@168-110-22-46.fiber.hringdu.is) joined #forth 10:55:03 it shoudn't be. 10:55:25 try: cd lib/xpl; git pull 10:55:40 then cd ../..; git add lib/xpl 10:55:50 (so the make doesn't overwrite) 11:01:46 --- quit: Zarutian (Ping timeout: 240 seconds) 11:18:05 tangentstorm: I tryed :: https://github.com/sabren/b4/issues/1 11:18:56 oh! I forget add there. wait 11:19:21 --- join: Zarutian (~Adium@168-110-22-46.fiber.hringdu.is) joined #forth 11:21:04 tangentstorm: this time tryed :: https://github.com/sabren/b4/issues/1 11:23:38 --- quit: Zarutian (Ping timeout: 245 seconds) 11:33:14 --- join: Zarutian (~Adium@168-110-22-46.fiber.hringdu.is) joined #forth 11:50:47 --- part: xyh left #forth 12:29:55 --- quit: kumul (Read error: Connection reset by peer) 12:30:23 --- join: kumul (~mool@adsl-72-50-86-197.prtc.net) joined #forth 12:35:34 --- quit: Zarutian (Ping timeout: 250 seconds) 12:42:04 --- join: t4nk248 (92c7e067@gateway/web/freenode/ip.146.199.224.103) joined #forth 12:53:20 --- join: Zarutian (~Adium@168-110-22-46.fiber.hringdu.is) joined #forth 13:00:49 --- quit: t4nk248 (Ping timeout: 246 seconds) 13:08:52 --- quit: mnemnion (Read error: Connection reset by peer) 13:09:25 --- join: mnemnion (~mnemnion@c-24-23-168-196.hsd1.ca.comcast.net) joined #forth 13:11:29 --- quit: Zarutian (Quit: Leaving.) 13:20:46 --- quit: GeDaMo (Remote host closed the connection) 13:37:12 --- quit: kumul (Ping timeout: 276 seconds) 13:37:27 --- quit: proteusguy (Remote host closed the connection) 13:41:05 --- join: proteusguy (~proteusgu@183.88.33.190) joined #forth 13:41:05 --- mode: ChanServ set +v proteusguy 13:50:48 --- quit: proteusguy (Read error: Connection timed out) 13:51:24 --- join: proteusguy (~proteusgu@183.88.33.190) joined #forth 13:51:29 --- mode: ChanServ set +v proteusguy 14:14:16 --- join: Mat4 (~claude@ip188619bb.dynamic.kabel-deutschland.de) joined #forth 14:14:20 hello 14:17:19 howdy 14:18:18 hey hey 14:29:59 --- join: kumul (~mool@adsl-72-50-86-197.prtc.net) joined #forth 14:32:43 --- join: karswell` (~user@87.114.71.59) joined #forth 14:34:24 --- quit: kumul (Ping timeout: 252 seconds) 14:51:32 hi proteusguy and bluekelp 14:57:30 hmm, so tangentstorm is working on a Forth like system in Pascal, interesting 14:58:00 as long as its not python :) 14:59:06 hi mark4_, agree 15:01:04 he's already the author of a Ngaro version for FreePascal. I wonder what are his reasons for working on the new one 15:01:46 word of advice: if your boss tells you to write a bluetooth le scanner in linux run for the door FAST 15:03:21 ok 15:11:10 I would run a soon as I would hear the word Linux mentioned 15:13:05 --- quit: mark4_ (Quit: Leaving) 15:28:04 --- quit: true-grue_ (Read error: Connection reset by peer) 15:40:52 --- quit: Mat4 (Quit: Verlassend) 15:41:06 --- quit: dys (Ping timeout: 265 seconds) 15:48:20 mark4 - oh, I grabbed the internet archive of isforth.com and put it up (as html - the .php is a lie) at http://isforth.minimaltype.com/ . Do you want ftp access to that? Or for me to take it down? Just so that isforth is available at some real updatable site until you get the domain settled. 15:48:54 might be a fun place to upload your arm port of isforth? :-) 15:52:55 --- quit: proteusguy (Read error: Connection reset by peer) 16:07:06 --- join: kumul (~mool@adsl-72-50-87-137.prtc.net) joined #forth 16:11:52 --- join: proteusguy (~proteusgu@ppp-110-168-230-116.revip5.asianet.co.th) joined #forth 16:11:52 --- mode: ChanServ set +v proteusguy 16:22:14 --- join: saml_ (~saml@cpe-24-102-97-97.nyc.res.rr.com) joined #forth 16:32:53 --- join: joneshf-laptop (~joneshf@campus-060-219.ucdavis.edu) joined #forth 17:06:48 --- quit: nighty^ (Quit: Disappears in a puff of smoke) 17:38:21 --- quit: mnemnion (Remote host closed the connection) 17:42:57 --- join: mnemnion (~mnemnion@c-24-23-168-196.hsd1.ca.comcast.net) joined #forth 18:50:18 --- quit: mnemnion (Remote host closed the connection) 18:52:44 --- quit: joneshf-laptop (Remote host closed the connection) 19:17:16 --- join: atommann (~atommann@58.251.2.94) joined #forth 19:24:18 --- quit: tsumetai (Ping timeout: 272 seconds) 19:32:56 --- join: darkf (~darkf___@unaffiliated/darkf) joined #forth 19:34:14 --- join: tsumetai (x@unaffiliated/tsumetai) joined #forth 19:35:53 --- quit: impomatic (Read error: Connection reset by peer) 19:40:22 --- join: MrMobius_ (~MrMobius@c-71-206-218-187.hsd1.wv.comcast.net) joined #forth 19:46:27 --- quit: atommann (Ping timeout: 252 seconds) 19:51:15 --- quit: tsumetai (Read error: Connection reset by peer) 19:59:41 --- join: atommann (~atommann@50.23.131.206-static.reverse.softlayer.com) joined #forth 20:09:21 --- join: tsumetai (~x@unaffiliated/tsumetai) joined #forth 20:13:10 --- quit: saml_ (Quit: Leaving) 20:50:07 --- quit: JohnMarkM (Quit: Leaving) 20:57:13 --- quit: atommann (Ping timeout: 250 seconds) 20:59:09 --- join: joneshf-laptop (~joneshf@98.208.35.89) joined #forth 21:01:28 --- quit: joneshf-laptop (Max SendQ exceeded) 21:03:09 --- quit: kumul (Quit: Leaving) 21:10:14 --- join: atommann (~atommann@58.251.2.94) joined #forth 21:19:15 --- join: joneshf-laptop (~joneshf@98.208.35.89) joined #forth 22:03:20 --- quit: atommann (Quit: Leaving) 22:22:17 --- quit: ASau (Ping timeout: 272 seconds) 22:48:15 * dview grumbles 22:48:38 lina's assembler core is 10x larger than jonesforth-arm's. I guess that's part of why there are so many ports of the latter. 23:43:28 --- quit: MrMobius_ (Ping timeout: 256 seconds) 23:45:42 --- join: nighty^ (~nighty@hokuriku.rural-networks.com) joined #forth 23:47:16 --- join: nighty-_ (~nighty@hokuriku.rural-networks.com) joined #forth 23:55:02 --- join: Bahman (~Bahman@85.133.140.132) joined #forth 23:56:03 --- quit: nighty-_ (Quit: Disappears in a puff of smoke) 23:59:59 --- log: ended forth/15.04.14