dave0 has quit [Quit: dave's not here]
Zarutian_HTC has quit [Remote host closed the connection]
iyzsong has quit [Read error: Connection reset by peer]
iyzsong has joined #forth
jedb_ has joined #forth
Zarutian_HTC has joined #forth
jedb has quit [Ping timeout: 258 seconds]
boru` has joined #forth
boru has quit [Disconnected by services]
boru` is now known as boru
jedb_ is now known as jedb
jsoft has joined #forth
actuallybatman has quit [Quit: leaving]
gravicappa has joined #forth
sts-q has quit [Ping timeout: 265 seconds]
sts-q has joined #forth
jsoft has quit [Ping timeout: 258 seconds]
Zarutian_HTC has quit [Remote host closed the connection]
neuro_sys has quit [Quit: -]
neuro_sys has joined #forth
neuro_sys has quit [Changing host]
neuro_sys has joined #forth
hosewiejacke has joined #forth
actuallybatman has joined #forth
dave0 has joined #forth
marksmith has joined #forth
dave0 has quit [Read error: Connection reset by peer]
dave0 has joined #forth
MrMobius has quit [Read error: Connection reset by peer]
jsoft has joined #forth
xek_ has joined #forth
marksmith has quit [Ping timeout: 260 seconds]
marksmith has joined #forth
marksmith has quit [Quit: Leaving.]
Gromboli has joined #forth
marksmith has joined #forth
hosewiejacke has quit [Ping timeout: 260 seconds]
jsoft has quit [Ping timeout: 272 seconds]
hosewiejacke has joined #forth
dave0 has quit [Read error: Connection reset by peer]
Zarutian_HTC has joined #forth
the_cuckoo has quit [Quit: WeeChat 1.9.1]
dave0 has joined #forth
MrMobius has joined #forth
marksmith has quit [Ping timeout: 246 seconds]
Zarutian_HTC has quit [Remote host closed the connection]
marksmith has joined #forth
dave0 has quit [Quit: dave's not here]
crest has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
X-Scale` has joined #forth
X-Scale has quit [Ping timeout: 260 seconds]
X-Scale` is now known as X-Scale
crest has joined #forth
hosewiejacke has quit [Ping timeout: 246 seconds]
WickedShell has joined #forth
X-Scale` has joined #forth
X-Scale has quit [Ping timeout: 264 seconds]
X-Scale` is now known as X-Scale
hosewiejacke has joined #forth
cmtptr has quit [Ping timeout: 260 seconds]
cmtptr has joined #forth
hosewiejacke has quit [Ping timeout: 246 seconds]
xek_ has quit [Ping timeout: 265 seconds]
xek has joined #forth
gravicappa has quit [Ping timeout: 256 seconds]
xek has quit [Ping timeout: 264 seconds]
xek has joined #forth
C-Keen has quit [Quit: WeeChat 2.8]
<cmtptr> so i had an idea
<cmtptr> it's fresh so go easy on me
<cmtptr> i'm writing a thing in c right now and it's getting really cumbersome to break into multiple functions because there is so much information that needs to be share
<cmtptr> d
<cmtptr> so i'm thinking of creating a context structure and passing that around, because i can't use globals since it needs to be reentrant
<cmtptr> and this got me thinking about forth, and the common practice of using globals there
<cmtptr> what if you designed it so that what you write is sort of like a subprogram
<cmtptr> like you define subprogram blocks
<cmtptr> and that contains globals and functions
<cmtptr> or forth words, rather
<cmtptr> and within there you define your forth words which have visibility of any variables defined there
<cmtptr> this might be easier with an example hold on
<cmtptr> inherent non-reentrancy has always been a problem i've had with traditional forth
iyzsong has quit [Read error: Connection reset by peer]
iyzsong has joined #forth
<cmtptr> maybe in keeping with the forth terminology (words, vocabularies, etc.) they should be called stanzas or paragraphs
WickedShell has quit [Remote host closed the connection]
<cmtptr> and then you could make them run in parallel - those would be called costanzas. costanza: george main: ." the jerk store called, they're running out of you!" ; end-costanza
xek has quit [Ping timeout: 256 seconds]
<MrMobius> cmtptr, if you just want to hide x, y, and part-one, you can do that with wordlists
<MrMobius> make one for foo, define what you need, then disable it
<MrMobius> the code is still there but the words wont be findable any more so there wont be any name conflicts
<cmtptr> i know, but what i'm talking about isn't hiding, it's instantiation
<cmtptr> e.g., in my example above bar can recurse and get new instances of its x, or multiple threads can execute foo and not have its x and y step all over each other
<MrMobius> for recursion I think the standard forth answer would be to keep x and y on the stack
Zarutian_HTC has joined #forth
zolk3ri has joined #forth
dave0 has joined #forth
inode has quit [Quit: ]
dave0 has quit [Read error: Connection reset by peer]
dave0 has joined #forth