00:00:00 --- log: started forth/18.12.16 00:44:43 --- quit: dys (Ping timeout: 250 seconds) 01:14:23 --- join: dys (~dys@tmo-100-83.customers.d1-online.com) joined #forth 01:52:03 --- join: gravicappa (~gravicapp@ppp83-237-173-75.pppoe.mtu-net.ru) joined #forth 02:03:40 --- quit: ashirase (Ping timeout: 246 seconds) 02:06:41 --- join: ncv (~neceve@unaffiliated/neceve) joined #forth 02:18:17 --- join: nighty- (~nighty@b157153.ppp.asahi-net.or.jp) joined #forth 02:18:59 --- join: ashirase (~ashirase@modemcable098.166-22-96.mc.videotron.ca) joined #forth 04:25:23 --- quit: nighty- (Read error: Connection reset by peer) 04:25:26 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 05:17:18 proteusguy: I am using gforth, but I am keeping my code relatively portable. 05:36:44 --- quit: gravicappa (Ping timeout: 250 seconds) 05:43:36 --- quit: pierpal (Remote host closed the connection) 06:44:39 --- join: pierpal (~pierpal@95.239.223.85) joined #forth 07:44:15 --- join: nighty- (~nighty@b157153.ppp.asahi-net.or.jp) joined #forth 08:18:50 --- quit: zy]x[yz (Quit: leaving) 08:21:45 --- join: zy]x[yz (~corey@unaffiliated/cmtptr) joined #forth 08:25:13 --- quit: ncv (Remote host closed the connection) 08:34:58 --- quit: Labu (Ping timeout: 246 seconds) 09:10:10 john_cephalopoda, are you drawing to the screen or just creating a bitmap graphic? 09:12:12 proteusguy: I am drawing in terminal, using sixel graphics. https://en.wikipedia.org/wiki/Sixel 09:13:33 wow had never heard of that before. 09:21:38 I am drawing to a framebuffer and printing it out as sixels. I could as well output it as bitmap to a file. 10:13:22 --- join: gravicappa (~gravicapp@ppp83-237-173-75.pppoe.mtu-net.ru) joined #forth 11:17:29 --- quit: pierpal (Ping timeout: 240 seconds) 11:19:12 --- quit: gravicappa (Ping timeout: 272 seconds) 12:11:14 --- join: mtsd (~mtsd@94-137-100-130.customers.ownit.se) joined #forth 12:18:59 --- join: alexshendi (~yaaic@ip2505f417.dynamic.kabel-deutschland.de) joined #forth 12:36:11 --- quit: cheater (Ping timeout: 268 seconds) 12:38:51 back 12:52:36 john_cephalopoda: do you have your code up somewhere? 12:55:33 tabemann: Here's a zip https://thecutecuttlefish.org/tmp/forth-things.zip 12:58:54 what are the licensing terms? 13:00:27 (I'm wondering because I might want to use your code, and my code is 3-clause BSD) 13:05:35 (mind you if I reuse your code I'll probably rip it apart and turn it into the overcoded sort of monstrosity I tend to create ) 13:12:35 --- quit: dys (Ping timeout: 244 seconds) 13:13:07 okay, gonna take a shower, but am gonna stay on (I'm still interested in the above) 13:23:06 tabemann: It's Public Domain. 13:23:29 --- quit: mtsd (Quit: WeeChat 1.6) 13:23:52 tabemann: If you are interested in working on that code, we could try to develop it together. I am planning to write a game with sixel output in Forth. 13:25:28 --- join: dys (~dys@tmo-100-83.customers.d1-online.com) joined #forth 14:10:33 well, I might be interested in developing it into a general terminal graphics API 14:10:45 I'm off to a coffee shop, though, will be back in a bit 14:15:08 --- quit: tabemann (Ping timeout: 260 seconds) 14:21:53 --- join: tabemann (~tabemann@24.196.100.126) joined #forth 14:23:07 --- join: cheater (~cheater@unaffiliated/cheater) joined #forth 14:30:56 john_cephalopoda, what does the PAGE word do? 14:39:34 prints 80 lines 14:39:54 prints n lines where n is the height of the terminal 14:39:54 tabemann: It clears the screen. 14:40:14 I figured as much 14:41:25 wait, what's the difference between +LOOP with a negative argument and -LOOP? 14:41:38 tabemann: I believe there is none. 14:41:57 terminal graphics api is just VT-100 escape codes as god intended 14:42:14 anything else is BLASPHEMY 14:44:21 actually, there is a difference 14:45:00 with +LOOP when counting down the end value is counted as a value iterated over 14:45:12 with -LOOP it is not 14:48:48 okay, I eliminated -LOOP from your code 15:03:25 WilhelmVonWeiner: sixels are cool though. If I had a terminal supporting them, I'd probably experiment with them. 15:05:19 --- quit: tabemann (Ping timeout: 250 seconds) 15:48:47 --- join: pierpal (~pierpal@95.239.223.85) joined #forth 15:53:10 --- quit: pierpal (Ping timeout: 246 seconds) 16:02:07 --- join: tabemann (~tabemann@2602:30a:c0d3:1890:a433:523c:27b8:b5c8) joined #forth 16:10:42 john_cephalopoda, I got your code, with minor modifications, to worth with attoforth 16:10:54 the trick was to use xterm -ti 340 to enable sixel graphics 16:13:30 Yup. I am using mlterm myself. 16:14:02 crc: i:m just kidding, I like sixels. 16:14:54 eightcels are mobetta 16:31:33 --- quit: john_cephalopoda (Ping timeout: 250 seconds) 16:33:36 --- join: john_cephalopoda (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 17:23:50 --- quit: tabemann (Ping timeout: 264 seconds) 17:46:47 --- join: tabemann (~tabemann@h193.235.138.40.static.ip.windstream.net) joined #forth 17:50:40 --- join: pierpal (~pierpal@95.239.223.85) joined #forth 18:00:27 * pointfree was talking a bit with Brad Nelson at this month's svfig meeting about a sixel version of https://forthsalon.appspot.com/ 18:14:49 --- join: rdrop-exit (~markwilli@112.201.164.82) joined #forth 18:15:02 --- quit: nighty- (Quit: Disappears in a puff of smoke) 18:32:09 Hello Forthwrights! :) 18:35:28 Hello! 18:35:40 Hi pointfree 18:37:08 How's it Forthin'? 18:53:19 --- join: dave0 (~dave0@47.44-27-211.dynamic.dsl.syd.iprimus.net.au) joined #forth 18:55:42 hey guys 18:56:33 I've been inspired to write a sixel library, by john_cephalopoda's work, but I intend on making it capable of handling full RGB color 18:58:02 hi 18:58:28 Cool, hi tabemann and dave0 18:58:52 hi rdrop-exit, tabemann 18:59:04 the only downside is that sixel doesn't support full 24-bit color, because it limits RGB elements to 0-100 18:59:35 and it only works on a few terminal emulators, but luckily one of them is xterm 19:01:48 Sounds fun 19:05:30 Do any common terminal emulators support the DEC and/or Tektronics vector drawing control sequences? 19:07:24 Regis was the DEC one 19:15:05 back 19:15:07 donno 19:17:05 I'll look into it at some point 19:37:45 tabemann: Maybe you've already seen it a long time ago, but you can also do mouse reporting for a gui https://hub.darcs.net/pointfree/forth-sixel 19:37:45 tabemann: Regarding truecolor https://github.com/saitoha/libsixel/issues/44 19:37:45 Compression with colors is another issue discussed earlier. I'm leaning towards composing, factoring, and abstracting colors and for this I think hsv color would be more amenable. 19:39:55 the thing is that sixel is described as having "color registers" 19:40:10 so I was figuring that I could modify these color registers on the fly 19:46:02 --- quit: dddddd (Remote host closed the connection) 19:46:36 tabemann: Some terminals support tektronix 4014 vector graphics https://github.com/cstrotm/forth-tek4014 (but fewer) 19:46:54 * rdrop-exit 19:55:25 --- quit: tabemann (Ping timeout: 245 seconds) 19:58:42 --- join: gravicappa (~gravicapp@ppp83-237-171-92.pppoe.mtu-net.ru) joined #forth 20:03:01 --- quit: gravicappa (Ping timeout: 250 seconds) 20:10:35 --- join: learning (~learning@4.35.154.131) joined #forth 20:10:45 salutations 20:11:08 Hello learning! 20:11:27 redefined within Gforth 0.7.3, Copyright (C) 1995-2008 Free Software Foundation, Inc.Gforth comes with ABSOLUTELY NO WARRANTY; for details type `license'Type `bye' to exit 20:11:33 can someone point me in the right direction to getting rid of that 20:12:15 i have my own custom text when i start up gforth and that thing is an eye sore. programmer happiness is #1 priority 20:15:22 Thanks pointfree! 20:19:09 Hi learning 20:20:16 learning: Try this: gforth -e " ' noop IS bootmessage" 20:22:39 --- join: tabemann (~tabemann@2602:30a:c0d3:1890:a433:523c:27b8:b5c8) joined #forth 20:23:01 gonna try that in a second but before i do that 20:23:04 i fucking love forth 20:23:55 : tf if s" true" cr type else s" false" cr type then; 20:24:00 so easily refactors to 20:24:06 : tf if s" true" else s" false" then cr type ; redefined tf ok 20:24:33 i was like, am i gonna have to store this shit to a variable? NOPE 20:28:33 weird. it gets rid of the whole message if i don't load a file. but when i do the following it keeps the text "redefined within" 20:28:36 gforth gforth -e " ' noop IS bootmessage" 20:28:53 gforth is the name of the file and it's in the current directory. loads just fine. 20:29:09 --- quit: alexshendi (Ping timeout: 240 seconds) 20:29:15 i tried getting rid of my own printed text too 20:30:37 if the file i load is blank it doesn't show 20:30:57 so the "redefined within" must be some other message i have to turn off 20:31:36 can i just do ' noop IS bootmessage noop IS redefinedmessage" if i know what redefinedmessage is actually called 20:32:52 --- join: nighty- (~nighty@b157153.ppp.asahi-net.or.jp) joined #forth 20:33:41 i just moved the -e "...." to the file im loading 20:34:26 learning: ' noop IS bootmessage warnings off 20:35:13 ohh 20:35:20 but that actually turns off all my warnings ok 20:35:33 so what that redefined thing is is a warning 20:37:41 --- quit: rdrop-exit (Quit: Lost terminal) 20:37:51 the redefined within warning must be coded somewhere in my words right? 20:39:44 learning: Did you define a word called "within" in your source file? 20:40:07 lmao 20:40:09 yes 20:40:45 i literally thought it was trying to tell me gforth was redefined from within 20:40:48 sorry! 20:41:02 i had no idea within was a builtin word 20:41:13 i wrote it when i was following a tutorial 20:41:50 god im such an idiot 20:42:35 learning: words using the previous builtin definition underneath will continue to use that definition. ( http://wiki.c2.com/?HyperStaticGlobalEnvironment ) 20:42:47 yeah i noticed that 20:43:43 if you have them in a file, you can just reload the definitions and they will use the new definition i think 20:45:04 pointfree can you explain what ' noop IS bootmessage actually does 20:45:05 Some forthers intentionally redefine words so that word names can stay short and concise. 20:45:05 You can load a source file on top and everything below will continue to work the same as it did before. 20:45:36 i like that you can redefine a word with the previous definition. makes it easy to refactor 20:46:05 learning: now, check out vocabulary's, only, also and friends 20:46:08 im really liking forth, and once i get comfortable doing the things that im used to doing in lisp, i know i'll fall in love with it 20:46:29 ok will do PoppaVic 20:46:46 this gets away from masking/redefining words ;-) 20:49:33 learning: bootmessage is a deferred word which means it stores the address of the word to execute rather than the word definition directly. ' noop ( tick no operation ) gets the address of a word that does nothing and IS sets bootmessage to that address ( the address of noop) 20:50:55 *which means it contains the address 20:51:52 so when bootmessage gets executed, it executes noop instead because it's pointing to noop's address, which does nothing, so bootmessage does nothing 20:52:05 Yes 20:52:12 andi could use ' noop IS to make any deferred word do nothing 20:52:18 very cool, thank you for taking the time to help me 20:56:07 welcome to the channel 20:57:24 learning: also be aware you REALLY need the gforth info file )or whatever the alternative is). It's not "classical" forth. 20:58:04 do you mean the manual? 20:58:29 I also had issues with 'see' blowing up on every gforth except building one myself.. Indeed I just tried it again and for some reason it puked once more. 20:58:50 Manual, well - I think they generate an info-file or html. Not a manpage. 20:59:31 this is what you meant by gforth info file right? https://www.complang.tuwien.ac.at/forth/gforth/Docs-html/ 21:00:23 am i losing any power by using gforth rather than "classical" forth 21:00:36 I recommend getting gforth from the git repo because the stable release is way behind. 21:00:42 /usr/bin/share/info/gforth.info 21:02:09 learning: I dunno what classic forth is linux-supported. PFE was a nice package, but I forget how I had to kick the makefile to get it to build. 21:05:32 i dont have a gforth info file 21:05:37 just 2 emacs lisp files 21:06:41 but it's alright. i got the online manual 21:07:56 brb 21:07:58 --- quit: learning (Remote host closed the connection) 21:57:48 --- quit: moony (Ping timeout: 250 seconds) 21:59:43 --- join: moony (moony@hellomouse/dev/moony) joined #forth 22:10:41 --- quit: proteusguy (Remote host closed the connection) 22:23:07 --- join: gravicappa (~gravicapp@94.228.252.233) joined #forth 22:31:22 --- join: proteusguy (~proteus-g@184.82.226.169) joined #forth 22:31:22 --- mode: ChanServ set +v proteusguy 23:59:59 --- log: ended forth/18.12.16