00:00:00 --- log: started forth/11.03.13 00:00:33 --- quit: nighty^ (Ping timeout: 264 seconds) 00:02:19 --- join: ygrek (debian-tor@gateway/tor-sasl/ygrek) joined #forth 00:49:17 --- join: nighty^ (~nighty@x122091.ppp.asahi-net.or.jp) joined #forth 01:36:36 --- join: MayDaniel (~MayDaniel@unaffiliated/maydaniel) joined #forth 01:42:15 --- quit: MayDaniel (Read error: Connection reset by peer) 03:01:18 --- join: RikusW (~RikusW@41.157.70.10) joined #forth 03:04:30 SunTzu: he shows up when you are not around. 03:07:09 try /msg memoserv help ? 03:11:03 ssshh, you are being helpful... 03:24:16 --- join: impomatic (~chatzilla@184.56.125.91.rb3.adsl.brightview.com) joined #forth 04:12:32 --- quit: RikusW (Ping timeout: 260 seconds) 04:19:05 --- quit: nixness (Ping timeout: 255 seconds) 04:25:32 --- join: fantazo (~fantazo@178-191-167-160.adsl.highway.telekom.at) joined #forth 04:30:39 --- quit: gogonkt (Ping timeout: 252 seconds) 04:31:02 --- join: gogonkt (~gogonkt@2001:5c0:1000:b::8ef1) joined #forth 04:36:06 --- join: MayDaniel (~MayDaniel@unaffiliated/maydaniel) joined #forth 05:06:52 --- quit: impomatic (Ping timeout: 250 seconds) 05:13:43 --- join: nixness (~dsc@dyn-86-36-42-96.wv.qatar.cmu.edu) joined #forth 06:24:41 --- quit: SunTzu (Quit: BitchX: use only under adult supervision) 07:14:19 --- quit: nixness (Read error: Connection reset by peer) 07:33:11 --- quit: Joseph__ (Read error: Connection reset by peer) 07:35:04 --- join: Joseph__ (~Joseph@200-122.adsl.umnet.umich.edu) joined #forth 07:53:44 --- quit: Joseph__ (Read error: Connection reset by peer) 07:54:04 --- join: Joseph__ (~Joseph@200-122.adsl.umnet.umich.edu) joined #forth 07:59:06 --- join: fantazo_ (~fantazo@178-190-236-40.adsl.highway.telekom.at) joined #forth 08:01:21 --- quit: fantazo (Read error: Operation timed out) 08:25:39 --- quit: MayDaniel () 08:38:30 --- quit: gogonkt (Read error: Operation timed out) 08:40:44 --- join: gogonkt (~gogonkt@2001:5c0:1000:b::8ddf) joined #forth 08:55:29 --- join: MayDaniel (~MayDaniel@unaffiliated/maydaniel) joined #forth 09:08:48 --- nick: fantazo_ -> phantasus 09:14:38 --- quit: Fox78 (Ping timeout: 240 seconds) 09:27:49 --- join: Fox78 (~fox@123.115.215.13) joined #forth 09:28:52 --- join: Deformative (~Joseph@200-122.adsl.umnet.umich.edu) joined #forth 09:29:04 --- quit: MayDaniel () 09:31:35 --- quit: gogonkt (Remote host closed the connection) 09:31:41 --- join: gogonkt (~gogonkt@2001:5c0:1000:b::8f15) joined #forth 09:32:10 --- quit: Joseph__ (Ping timeout: 252 seconds) 09:56:57 --- quit: nighty^ (Ping timeout: 240 seconds) 10:07:02 --- quit: nighty (Remote host closed the connection) 11:21:49 --- quit: gogonkt (Ping timeout: 251 seconds) 11:22:34 --- join: gogonkt (~gogonkt@2001:5c0:1000:b::8e89) joined #forth 11:33:54 --- quit: gogonkt (Ping timeout: 253 seconds) 11:35:20 --- join: gogonkt (~gogonkt@2001:5c0:1000:b::8bb3) joined #forth 11:41:43 --- join: gogonkt_ (~gogonkt@2001:5c0:1000:b::8d6d) joined #forth 11:42:50 --- quit: gogonkt (Ping timeout: 264 seconds) 11:47:38 --- nick: gogonkt_ -> gogonkt 12:07:35 --- quit: phantasus (Remote host closed the connection) 12:17:26 --- join: MayDaniel (~MayDaniel@unaffiliated/maydaniel) joined #forth 12:53:33 --- join: Snoopy_1611 (Snoopy_161@dslb-178-004-029-108.pools.arcor-ip.net) joined #forth 13:39:59 --- quit: Deformative (Ping timeout: 240 seconds) 13:55:11 --- quit: qFox (Quit: Time for cookies!) 14:00:54 --- quit: MayDaniel (Read error: Connection reset by peer) 14:03:11 --- quit: ygrek (Ping timeout: 246 seconds) 14:41:54 --- join: SunTzu (1000@c-68-56-234-19.hsd1.fl.comcast.net) joined #forth 14:46:52 --- join: fantazo (~fantazo@178-190-236-40.adsl.highway.telekom.at) joined #forth 15:07:44 --- quit: fantazo (Remote host closed the connection) 15:25:53 --- join: Deformative (~Joseph@caen-cse-141-212-202-106.wireless.engin.umich.edu) joined #forth 15:42:17 --- quit: Deformative (Ping timeout: 255 seconds) 15:44:06 --- join: Deformative (~Joseph@caen-cse-141-212-202-106.wireless.engin.umich.edu) joined #forth 16:27:41 --- quit: Deformative (Ping timeout: 264 seconds) 16:36:57 --- quit: Fox78 (Ping timeout: 276 seconds) 16:37:16 --- join: Fox78 (~fox@123.115.215.13) joined #forth 17:21:19 sigh. the good news: this code I just wrote works and doesn't blow up with a stack underflow. 17:21:41 the bad news: if I showed it to one of you, you'd run away screaming in horror 17:27:06 Hm. 17:27:35 You seem to think that there're no professional programmers here. 17:27:52 I do intend to properly factor it but right now the main goal was to get the thing working 17:28:18 it's a simple stopwatch timer program. the part I was having trouble with: 17:28:29 show the time with no leading zeroes or punctuation. 17:30:41 If you can use standard "time&date", I don't see problems. 17:31:20 http://pastebin.com/4HcmuCbv -- the part that's not terrible that I feel like I *can* show 17:31:40 and no, time&date doesn't really do everything I want. I use utime in GNU Forth 17:31:52 it theoretically could be rewritten to use time&date, though 17:32:58 This, I think, is quite stupid. 17:33:09 There's no reason not to use available tools. 17:33:54 time&date will never give me timing accurate to values smaller than a second 17:33:59 What is "w"? Is it "u"? 17:35:07 that actually should be "n" now that I look again 17:35:21 err... 17:35:31 or maybe not 17:35:52 it's a standard single cell value 17:36:19 second, minute, hour, day are all constants initialized with the appropriate values 17:36:56 It will be much easier, if you just split it and remove zero values at print time. 17:37:33 I tried it that way and I never could get it working how I wanted 17:37:50 What should the output look like? 17:39:12 one sec... 17:40:45 http://pastebin.com/tJ7Lf82t -- note that it's all aligned to the same spot such that overprinting it will automatically print spaces over the old numbers as the time counts down 17:41:27 the original version just prints leading zeros which worked but might not suit the tastes of some users 17:42:16 --- join: roarde (~roarde@68.25.156.252) joined #forth 17:42:16 --- quit: roarde (Changing host) 17:42:16 --- join: roarde (~roarde@pdpc/supporter/active/sixforty) joined #forth 17:43:31 It is really easier to do in print time. 17:43:44 the word I posted, is called at print time 17:44:05 the word that prints the time is handed one number, the time in milliseconds 17:44:08 dup if <# [char] d hold #s #> else drop then 17:44:14 space 17:44:38 why not 17:44:50 ?dup if <# [char] d hold #s #> then 17:45:07 dup if <# [char] : hold #s #> 2 .rs else drop 3 spaces then 17:45:38 because you might want to print spaces in there. 17:47:29 the only thing wrong with the code I have written is I need to factor it into about 4-5 smaller words without breaking it 17:47:59 (referring to the code that prints the time) 17:48:07 Conditional stack effect is bad. 17:48:55 it can be. but the number on top is fed to a case/of construct that knows exactly what to do with that number of items on the stack 17:49:35 This is unnecessary complication. 17:50:01 It is very much easier to do it the straightforward way: 17:50:31 : convert ( u -- sec min hr days ) 60 /mod 60 /mod 24 /mod ; 17:51:55 : .days ( days ) dup if <# [char] d hold #s #> else drop 0 0 then 4 .rs ; 17:52:27 : .hours ( u ) dup if <# [char] : hold #s #> else drop 0 0 then 4 .rs ; 17:52:44 : .mins ( u ) dup if <# [char] : hold #s #> else drop 0 0 then 3 .rs ; 17:52:48 see I put the entire string in the buffer at once 17:53:09 : .secs ( u ) dup if <# #s #> else drop 0 0 then 3 .rs ; 17:53:47 your way is decent I guess if you never need accuracy smaller than one second 17:53:56 You can add more. 17:54:17 If you want it in buffer, then you implement something like ?# 17:54:20 now... it becomes a bitch to rewrite that if you don't want to print it, but want to display it elsewhere 17:55:24 which is usual # only putting leading blanks. 17:55:43 : ?# dup if # else bl hold then ; 17:56:01 : ?# 2dup d0= if # else bl hold then ; 17:56:29 never thought to try that. That may help clean things up a bit 17:57:03 --- join: crcx (b84db914@gateway/web/freenode/ip.184.77.185.20) joined #forth 17:59:09 Alright, it's too early in the morning. 17:59:18 You have to invert condition yourself. :) 18:08:55 And if you have ever read SF or TF, you'd know the trick how to skip the conversion part. 18:15:02 --- quit: gogonkt (Ping timeout: 264 seconds) 18:15:26 --- join: gogonkt (~gogonkt@2001:5c0:1000:b::827f) joined #forth 18:24:26 I've read them and it's not mentioned in there anywhere 18:42:58 --- quit: gogonkt (Remote host closed the connection) 18:43:03 --- join: gogonkt (~gogonkt@2001:5c0:1000:b::8d6d) joined #forth 18:59:28 It mentions the trick to print time in HH:MM:SS style without using division operation. 20:06:57 --- quit: Snoopy_1611 () 20:07:01 ah 20:07:03 I'll need to read it again 20:07:26 it's probable that trick still uses division operation, it's just not as obvious. because even stock # uses divison 20:11:30 --- join: Deformative (~Joseph@200-122.adsl.umnet.umich.edu) joined #forth 20:13:36 --- quit: crcx (Quit: Page closed) 20:21:11 --- join: apprtc (~sp@125.71.228.70) joined #forth 20:24:13 --- quit: roarde (Quit: Leaving) 20:50:52 --- quit: Deformative (Remote host closed the connection) 20:51:08 --- join: Deformative (~Joseph@200-122.adsl.umnet.umich.edu) joined #forth 21:01:08 --- quit: segher_ (Quit: This computer has gone to sleep) 21:04:53 on how many systems does '1 ms' wait for much longer than one millisecond? 21:05:32 the last test I did with GNU Forth, '1 ms' '2 ms' '3 ms' regularly waited for 4 milliseconds + 21:05:49 and '4..7 ms' usually waited for 8, etc 21:06:38 --- quit: schmrkc (Ping timeout: 250 seconds) 21:07:25 --- join: schmrkc (~marcus@c83-254-196-92.bredband.comhem.se) joined #forth 21:07:25 --- quit: schmrkc (Changing host) 21:07:25 --- join: schmrkc (~marcus@sxemacs/devel/schme) joined #forth 21:07:30 --- quit: Deformative (Ping timeout: 240 seconds) 21:08:27 --- join: Joseph_ (~Joseph@200-122.adsl.umnet.umich.edu) joined #forth 21:11:47 --- join: Joseph__ (~Joseph@200-122.adsl.umnet.umich.edu) joined #forth 21:14:28 --- quit: Joseph_ (Ping timeout: 250 seconds) 21:15:49 --- quit: Joseph__ (Remote host closed the connection) 21:19:25 --- join: Joseph__ (~Joseph@200-122.adsl.umnet.umich.edu) joined #forth 21:25:02 --- quit: Joseph__ (Remote host closed the connection) 21:25:22 --- join: Joseph__ (~Joseph@200-122.adsl.umnet.umich.edu) joined #forth 21:46:26 --- join: I440r (~mark4@108-64-168-250.lightspeed.wepbfl.sbcglobal.net) joined #forth 21:46:38 --- mode: ChanServ set +o I440r 21:54:59 --- quit: Fox78 (*.net *.split) 21:54:59 --- quit: shachaf (*.net *.split) 21:54:59 --- quit: uiu (*.net *.split) 22:11:05 --- join: Snoopy_1611 (Snoopy_161@dslb-088-068-020-093.pools.arcor-ip.net) joined #forth 22:18:53 --- join: Fox78 (~fox@123.115.215.13) joined #forth 22:18:53 --- join: shachaf (~shachaf@208.69.183.87) joined #forth 22:18:53 --- join: uiu (~ian@HSI-KBW-095-208-003-067.hsi5.kabel-badenwuerttemberg.de) joined #forth 22:52:06 --- quit: apprtc (Read error: Connection reset by peer) 23:22:55 --- join: Deformative (~Joseph@200-122.adsl.umnet.umich.edu) joined #forth 23:26:17 --- quit: Joseph__ (Ping timeout: 252 seconds) 23:32:01 --- join: nixness (~dsc@dyn-86-36-42-96.wv.qatar.cmu.edu) joined #forth 23:32:01 --- join: nighty^ (~nighty@p2090-ipbf307kyoto.kyoto.ocn.ne.jp) joined #forth 23:42:14 DocPlatypus read the associated man2/ pages 23:42:40 ok 23:42:46 DocPlatypus there are several, and some offer suggestions about getting more exact timing 23:43:31 also wondering if the next Forth standard should not tighten up the requirement for "ms" 23:43:59 as it stands... in theory, "1 ms" can pause for a whole second or even a minute the way it's worded now and still be compliant 23:43:59 i dont care 23:44:08 i'm an antiANS zealot :) 23:44:11 heh 23:44:20 just tell me the expected (-) 23:44:45 as in, what do coders agree on for funargs and returns 23:45:29 without some updated standardization on the scale of ANS94, the future of Forth is doomed 23:45:36 no it aint 23:45:45 that's commercial hyperbole :) 23:45:47 heh 23:46:19 back in the day BASIC was never standardized. the closest we got to a standard was Microsoft QuickBASIC/Visual BASIC 23:46:35 business basic was pop too 23:46:37 today, that's pretty much the only version left that sees any real level of use 23:46:38 bas4 i think? 23:46:41 basis? 23:47:16 and I know a lot of Forth programmers have a huge disdain for BASIC... but let me tell you, without BASIC I never would have had any interest in programming at all 23:47:25 heh 23:48:22 DocPlatypus: yes, I mean without using explicit division. 23:50:05 ASau: to be honest I prefer the explicit division version. it's easy to follow what the #$%& is going on 23:50:18 remember: 23:50:27 when you've seen one Forth, you've seen One Forth. 23:50:44 i have disdain for ANS except for stack comments. 23:51:04 --- quit: Deformative (Remote host closed the connection) 23:52:25 DocPlatypus: It is "kind of" official idiom. 23:52:55 If you really preferred explicit operations, you'd nevery have chosen Forth. 23:56:43 what does _dodoes do again? 23:56:51 (fig model) 23:57:34 I need to recall it, but I have no time to do it now. 23:57:43 See you in the evening. 23:57:48 gn 23:59:13 what does _dodoes do again? 23:59:59 --- log: ended forth/11.03.13