00:00:00 --- log: started forth/08.03.17 01:09:49 --- quit: arke_ (Read error: 110 (Connection timed out)) 01:43:24 --- quit: nighty^ ("Disappears in a puff of smoke") 03:01:11 --- quit: gnomon (Read error: 110 (Connection timed out)) 03:29:38 --- join: qFox (i=C00K13S@234pc222.sshunet.nl) joined #forth 04:04:43 --- quit: proteusguy (Read error: 110 (Connection timed out)) 04:05:32 --- join: proteusguy (n=proteusg@ppp-124-120-217-67.revip2.asianet.co.th) joined #forth 04:18:04 --- join: ecraven (i=nex@eutyche.swe.uni-linz.ac.at) joined #forth 04:22:32 --- join: Maki (n=veselic@adsl-202-95.eunet.yu) joined #forth 04:22:41 hi 04:23:40 Hi. 04:24:50 How are you today? 04:25:19 Wery good. Thank You :) 04:25:24 You? 04:25:37 Excellent. I'm well, thank you. 04:26:02 Need to get out and dust the snow off the car before I pick my wife up from work, in about 15 minutes. :) 04:26:37 You must be in Canada? 04:26:46 Denver, US 04:27:22 --- join: nighty^ (n=nighty@p5187-adsau17honb13-acca.tokyo.ocn.ne.jp) joined #forth 04:27:29 Yourself? I see you are somewhere in Europe. :) 04:27:45 Belgrade, Serbia 04:28:07 Neat. I know some Serbs in Texas. 04:28:25 Some Bosnians too. 04:28:28 Are they progremmers? 04:28:40 No. They delivered pizza when I knew them. :0 04:28:49 :) 04:29:02 that was a few years back. After the war. They were relocated here. 04:29:22 Given money, a place to stay, a car, and a job. 04:29:59 Are you a forther? 04:30:04 Yes 04:30:07 Cool. 04:30:12 what do you use? 04:30:21 Your own? 04:30:44 I'm just ressurecting old forth processor 04:30:52 very cool. 04:31:02 actual forth chip then? 04:31:13 FPGA implementation 04:31:17 16 bit 04:31:22 Excellent. 04:31:48 I'm the guy known for using colorForth. I make my pentiums out like they were FPGA :) 04:32:02 But i've never tryed a real PFGA 04:32:11 lol 04:32:15 FPGA sorry. 04:32:33 Interesting stuff 04:32:40 I agree. 04:32:45 Keeps me out of the bars. 04:33:14 I also like the RetroForth line of stuff by crc in this chat. 04:33:14 My processor works at 50MHz without any special tweaking 04:33:31 WOW neat. plenty fast then. 04:33:47 what are you making it do? 04:34:02 Embeded systems 04:34:13 Industrial control... 04:34:30 Oh neat. this is your occupation? or hobby? 04:34:57 Occupation 04:35:17 Do you also do the mechanical? 04:35:45 You mean mechanical engineering? 04:35:53 Yes, sorry. 04:36:12 Nope. We have several associates... 04:36:24 I see. 04:36:55 I must leave to get my wife, but should return within 45 mins or so. 04:37:14 If I don't see you again, Good to meet you, Maki. :) 04:37:14 See You later :) 04:37:41 I'll be here. Likewise, nice to meet You :) 04:41:21 maki> do you spell the word you in your language with a capital? 04:41:54 no 04:42:00 k :) just wonering 04:42:01 wondering 04:43:01 good typing not :) 04:44:19 yeah sure :) some languages, like german for instance, capitalize nouns 04:44:37 or the english capitalizes all months 04:44:44 (January, February, etc) 04:45:01 just wondered whether you was spelled with a capital :p 04:45:05 in your language 04:45:44 i guess this these are the moments where the things i learn in my study actually brushes off... :p 04:46:11 when we want to honour somebody we write in capital but it's not 04:46:24 ok 04:46:31 what is your language called anyways? 04:46:39 Serbian 04:46:42 ah right 04:46:51 i was thinking slavic, but then i figured that was another country :p 04:47:47 similar to Bosnian or Croatian or even Monenegrian recently :( 04:47:55 Montenegrian 04:48:21 :) 04:49:42 I was asking a question yeasterday but nobody was awake I guess... 04:50:29 About detecting stack faults... 04:50:40 What do You think? 04:51:27 was that about whether it was better to detect underflow or overflow? 04:51:39 yes 04:51:41 i couldnt really give an answer since either they both matter or they both dont 04:52:05 if you have rotating stacks, over/underflow doesnt crash your forth 04:52:29 if your stack doesnt wrap-around, then you have to have both detections 04:52:37 but i guess ... overflow is more important 04:53:06 depending on your implementation, because overflow might cause other data to be overwritten, whereas underflow will result in some negative number and your system not understanding what to do with it 04:53:12 at least, that would be my best guess 04:54:01 Thanks. I just wanted another opinion. Stacks do wrap-around and no danger of overwriting... 04:54:25 I junked exception detection 04:54:37 from my design 04:54:42 then it all depends on your implementation. either overflow is equally dangerous i think 04:55:06 but i guess if you must, you should do overflow 04:55:20 since you could easily reach that with recursive words 04:55:43 whereas a normal word should never go beyond depleting your stack 04:56:19 32 elements for each stack 04:56:27 and 16 segments 04:56:47 but do you have some stack detecting words in place? it's been a while since i've messed with forth, but i remember there was a word that indicates the .. ohyeah, DEPTH 04:57:12 if you have a DEPTH like word, anyone that desires so can check stack-flows for themselves... 04:57:35 forth system is not up and running... 04:57:49 this is hardware we are talking about 04:58:09 yeah ok 04:58:17 stacks are on chip 04:58:41 well, in that case the users of the chip should simply be very aware of their stacks 04:59:14 it shouldnt be hard to program a DEPTH like word in a Forth, once the chip is running and the Forth is loaded 04:59:26 agreed 05:00:11 Just thinking to add over under as exception that processor allways accept 05:00:52 kind of nmi 05:00:58 NMI 05:01:06 does it have to throw an nmi? 05:01:15 can't it just wrap-around silently? 05:01:27 yes 05:01:29 (i mean, that ought to cause fewer resources, right?) 05:01:36 *resources to be used 05:01:41 yeah 05:01:57 i'd go with that then 05:02:14 that's the reason I junked it this morning :) 05:02:14 i don't think forth can really capture the nmi anyways 05:02:17 :) 05:02:50 processor capture NMI and then vector to service routine 05:03:07 which then do the recovery staff 05:03:24 like "Stack overflow"... stack dump.... 05:03:43 hmmm yeah but then your forth will have to have some kind of event 05:03:48 event checking even 05:04:17 which either means checking for hte events in the uh (I forgot the words, the basic loop of Forth) 05:04:25 no it is NMI -> Non Maskable Interrupt 05:04:44 yeah but I've never actually messed with interupts in Forth 05:05:05 i gtg, bbl 05:05:10 ok 06:03:33 --- join: gnomon (n=gnomon@CPE0050eb372bdb-CM000f9f776f96.cpe.net.cable.rogers.com) joined #forth 06:33:40 --- quit: Maki () 06:39:00 --- join: Crest (n=crest@p5B10649C.dip.t-dialin.net) joined #forth 08:04:21 --- quit: ecraven ("bbl") 09:20:22 --- quit: Quartus` ("used jmIrc") 09:20:36 --- join: Quartus` (n=Quartus`@209.167.5.1) joined #forth 09:43:06 --- quit: Crest (Read error: 113 (No route to host)) 10:29:40 --- join: Maki_ (n=veselic@adsl-202-95.eunet.yu) joined #forth 10:31:10 --- quit: Al2O3_ () 10:50:41 --- join: JasonWoof (n=JasonWoo@unaffiliated/herkamire) joined #forth 10:50:42 --- mode: ChanServ set +o JasonWoof 10:51:20 --- quit: JasonWoof (Remote closed the connection) 10:53:10 --- join: JasonWoof (n=JasonWoo@unaffiliated/herkamire) joined #forth 10:53:10 --- mode: ChanServ set +o JasonWoof 11:32:08 --- join: ygrek (i=user@gateway/tor/x-301240c816334bc7) joined #forth 11:39:15 --- quit: Quartus` (Read error: 104 (Connection reset by peer)) 12:03:14 --- join: Al2O3 (n=Al2O3@c-76-120-54-133.hsd1.co.comcast.net) joined #forth 12:10:35 --- join: Quartus` (n=Quartus`@209.167.5.1) joined #forth 12:30:34 --- quit: Quartus` (Read error: 104 (Connection reset by peer)) 13:00:01 --- join: Quartus` (n=Quartus`@209.167.5.1) joined #forth 13:26:48 --- quit: qFox (":tiuQ)") 13:43:57 --- quit: ygrek (Remote closed the connection) 13:46:01 --- join: ygrek (i=user@gateway/tor/x-024c4a676cf696b0) joined #forth 14:00:24 --- join: arke (n=arke@p57A73EE7.dip.t-dialin.net) joined #forth 14:00:24 --- mode: ChanServ set +o arke 14:07:06 --- join: lament (n=lament@S010600110999ad06.vc.shawcable.net) joined #forth 14:07:25 Is it possible to define new words, with dynamically generated names and contents, at run-time? 14:08:19 yes 14:08:23 generally 14:08:44 though I don't think there's any standard way to set the name 14:09:01 I've got the gforth code for it 14:09:19 want it? 14:21:02 --- quit: JasonWoof ("Leaving.") 14:34:07 damn, i was away 14:34:53 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 14:34:53 --- mode: ChanServ set +o tathi 14:48:22 --- quit: nighty^ ("Disappears in a puff of smoke") 14:57:52 --- quit: Maki_ () 15:27:12 --- quit: ygrek (Remote closed the connection) 15:28:03 lament, what kind of words? 15:28:20 its possible in factor :) 15:28:23 but its not very idiomatic 15:28:30 it's possible in Forth, too. 15:28:35 pretty much the only piece of code that defines words at runtime is the parser. 15:38:46 Quartus: is it possible in a standard way? 15:38:54 yes 15:38:58 via EVALUATE 15:39:39 thanks 15:40:17 : foo s" : moo 42 . ;" evaluate ; \ foo will compile moo 15:40:49 nice 15:41:01 Of limited practical value. What are you trying to do? 15:42:53 a compiler for befunge (which supports self-modifying code) 15:43:25 Befunge doesn't have names. 15:43:41 that's okay. :) 15:44:07 the most annoying feature of befunge so far is the absence of stack underflow - it just returns 0 15:44:08 Which raises the question of why you want to generated named words at runtime. 15:46:19 a "code path" is a path in befunge source such that when execution enters it, it will follow it till the end. I could compile each code path into a word 15:46:34 Ok. Again, why named words? 15:46:49 because... i don't know how else to do it :) 15:46:50 And how does that manage the self-modifying aspect? 15:47:14 when an instruction is modified, i would have to recompile any paths that use that instruction. 15:47:24 which is where i would redefine stuff dynamically 15:47:43 I can't see how named words help you in any way. Consider :noname. 15:49:53 but i'd still have to use evaluate, right? 15:50:28 i'm not sure what's the advantage of not naming them 15:51:07 No. : foo :noname 42 postpone literal postpone . postpone ; ; foo execute -> 42 15:51:33 lament, I'll leave it to you; perhaps when you've written something it will be clearer to me. 15:51:42 thanks 17:08:40 --- join: nighty^ (n=nighty@210.188.173.246) joined #forth 17:31:40 --- join: Sperzel (i=nobody@dialin-145-254-202-050.pools.arcor-ip.net) joined #forth 17:42:27 --- part: Sperzel left #forth 17:57:54 --- quit: tathi ("leaving") 18:39:28 --- part: Deformative left #forth 18:54:31 --- join: snoopy_1711 (i=snoopy_1@dslb-088-068-219-033.pools.arcor-ip.net) joined #forth 18:55:00 --- quit: Snoopy42 (Nick collision from services.) 18:55:20 --- nick: snoopy_1711 -> Snoopy42 18:59:24 --- quit: madgarden (Read error: 104 (Connection reset by peer)) 19:23:53 --- join: madgarden (n=madgarde@bas2-kitchener06-1096620635.dsl.bell.ca) joined #forth 20:14:02 --- quit: proteusguy (Read error: 104 (Connection reset by peer)) 20:32:03 --- join: proteusguy (n=proteusg@ppp-124-121-210-177.revip2.asianet.co.th) joined #forth 21:31:57 --- quit: madgarden (Read error: 104 (Connection reset by peer)) 21:32:14 --- join: madgarden (n=madgarde@bas2-kitchener06-1096620635.dsl.bell.ca) joined #forth 23:59:59 --- log: ended forth/08.03.17