00:00:00 --- log: started forth/19.03.18 00:45:36 --- join: xek (~xek@apn-31-0-23-82.dynamic.gprs.plus.pl) joined #forth 01:40:02 proportional representation doesn't exclude voting for individuals - there are in fact quite a few variations of it, and yes, it tends to be fairer than first past the post (it's all the reason that many european countries have coalition governments as it's far harder for any one party to dominate) 01:40:45 otoh, you guys have effectively only two parties of note - again, that is very different in most parts of europe 01:41:33 and being chipped by a company? lol 01:42:22 am sure it will come up over here at some point - can't see it being allowed though :) 02:04:04 --- quit: ashirase (Ping timeout: 246 seconds) 02:07:28 --- join: ashirase (~ashirase@modemcable098.166-22-96.mc.videotron.ca) joined #forth 04:40:09 --- quit: pierpal (Read error: Connection reset by peer) 04:49:40 --- join: pierpal (~pierpal@host161-197-dynamic.245-95-r.retail.telecomitalia.it) joined #forth 04:49:50 I put a basic string stack mechanism in place last night. 04:50:20 Right now I can just push a string with >SS or pop a string with SS> or "peek" at the top item with SS@ 04:50:52 There's a variable SS that starts out zero. That's an empty string stack. Popping or peek on an empty stack throws an error. 04:51:06 Pushing to the empty stack allocates a heap page and establishes the stack in it with that item. 04:51:17 Popping the last item out of the stack frees the page. 04:51:56 Further planned words are 1) push a null string to the stack, 2) append a character to the string on top of the stack, 3) concatenate, and so on. 04:52:01 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 04:52:21 Then I can make my string literal mechanism, which I plan to cal S - it will work with variable delimiters. 04:52:26 S "this is a string" 04:52:32 S /this is also a string/ 04:52:46 That'll just put that string on top of the stack. 04:53:10 This is a path toward evicting PAD from the system. 04:55:04 The I/O to the stack works with counted strings in memory (sorry dave0). 04:55:16 : >SS ( addr --) ... ; 04:55:24 : SS> ( -- addr) ... ; 04:55:35 : SS@ ( -- addr) ... ; 04:58:50 --- quit: pierpal (Ping timeout: 246 seconds) 05:09:51 dave0: I prefer counted strings over null-terminatd ones because, well, you don't have to count them. You have a full grasp of what the string *is* right at your fingertips. 05:10:53 I don't think carrying the count around on the stack checks that box as well as having the count permanently associated with the string. Much tidier to be able to represent the string on the stack with a single thing. 05:14:56 Now, where caddr u does give an advantage is that you can represent strings longer than 255. And that same general mechanism can represent ANYTHING (i.e., it's just a blob with a size). 05:15:19 So I'm not slamming the idea completely. 05:15:47 It's just that for "most" of the string work that we do to make a Forth system run, counted strings seem to work well. 05:58:58 just use a CELL for the count and the length won't be a limiting factor 06:07:35 <`presiden> or use variable-length quantitty https://en.wikipedia.org/wiki/Variable-length_quantity as the length 07:35:05 --- quit: tabemann (Ping timeout: 268 seconds) 08:06:47 --- join: anamorphic (~anamorphi@68.21.148.119) joined #forth 09:49:16 --- join: PoppaVic (~PoppaVic@unaffiliated/poppavic) joined #forth 09:59:28 --- join: pierpal (~pierpal@host161-197-dynamic.245-95-r.retail.telecomitalia.it) joined #forth 10:08:17 crc: are counted strings just ( c-addr ) or are they ( c-addr+1 length ) when on stack? (usually the word COUNT converts the former into the latter) 10:12:01 counted-strings are usually STORED as {ct,...} but presented on the stack as: adr ct 10:15:49 --- quit: gravicappa (Ping timeout: 246 seconds) 10:26:17 --- quit: anamorphic (Quit: anamorphic) 10:50:46 --- join: anamorphic (~anamorphi@50.58.217.82) joined #forth 10:59:20 --- quit: anamorphic (Quit: anamorphic) 11:00:12 --- join: anamorphic (~anamorphi@50.58.217.82) joined #forth 11:01:55 Zarutian: I think of counted strings as being a c-addr, I dislike dealing with two values as the on-stack representation for strings. 11:02:50 crc: as it's a datastructure, I can't disagree ;-) 11:04:37 I find handling strings as two values on stack handy when doing parsing, slicing, finding the common prefix of two and such 11:05:00 but then again the usual cell size I am working with is 16 bits 11:09:38 --- quit: anamorphic (Quit: anamorphic) 11:11:15 --- join: anamorphic (~anamorphi@50.58.217.82) joined #forth 11:14:23 * PoppaVic sighs 11:15:31 Gforth is a real pain in the dick: only the newer versions seem to offer serial support; most of the contrib for the new won't compile in the old/stable; and now I notice they even screwed their own GFORTH environment? reply. 11:15:52 hayseuz wept 11:29:06 --- join: gravicappa (~gravicapp@h109-187-202-26.dyn.bashtel.ru) joined #forth 12:02:38 --- quit: anamorphic (Quit: anamorphic) 12:04:46 --- join: anamorphic (~anamorphi@50.58.217.82) joined #forth 12:11:21 --- quit: pierpal (Quit: Poof) 12:11:40 --- join: pierpal (~pierpal@host161-197-dynamic.245-95-r.retail.telecomitalia.it) joined #forth 13:07:19 --- quit: gravicappa (Ping timeout: 246 seconds) 13:18:50 --- join: mtsd (~mtsd@94-137-100-130.customers.ownit.se) joined #forth 13:22:45 --- quit: anamorphic (Quit: anamorphic) 13:26:04 --- join: anamorphic (~anamorphi@50.58.217.82) joined #forth 13:53:30 --- quit: anamorphic (Quit: anamorphic) 14:18:19 --- quit: xek (Ping timeout: 244 seconds) 14:21:53 --- join: anamorphic (~anamorphi@50.58.217.82) joined #forth 14:28:21 --- join: dave0 (~dave0@223.072.dsl.syd.iprimus.net.au) joined #forth 14:29:21 hi 14:30:52 --- quit: mtsd (Quit: leaving) 14:31:29 lo 14:31:58 hi PoppaVic 14:32:11 well, I may just get really p-t-f-o and use Ficl. 14:32:49 I know my C is "stable" - moreso than gforth and extensions/contribs it seems 14:34:04 On the upside, that implies all my TTcode is more stable than gforth ;-) 14:34:53 As an aside: PFE still builds badly and doesn' 14:35:09 t want to install; pforth seill builds and installs clean. 14:36:44 ..and, according to the uselessnet/google usenet crap: we are still suffering ANS, Forth,inc, MPE and a whole lot of hate ;-) 14:37:14 It's so nice to catch-up on the state of affairs. 14:51:22 --- quit: anamorphic (Quit: anamorphic) 14:53:50 --- join: anamorphic (~anamorphi@50.58.217.82) joined #forth 15:03:14 --- part: corecode left #forth 15:21:01 KipIngram: notice the link and valid use of chipping "elsewhere".. I am bemused. 15:24:23 ficl may not be better than gforth, it was pretty buggy when I last messed around with it 15:25:36 crc: well, It's worth trying. I need something on the host side that doesn't turn up its toes and die between versions - where versioning strings themselves vary too far for testing 15:26:07 Of the threaded code approaches (direct, indirect, subroutine, token, .. string? and other??) what is most suitable for 64 bit CPUs like x86? 15:26:52 I installed the newst gforth last night. Build was simple, install as well - it overrode the existing gforth (ok), but decided to redefine the stupid version/gforth "environment?" string return 15:27:07 x86 isn't 64-bit - try again 15:28:24 anamorphic: I'm a fan of subroutine threading as it makes code inlining easy. 15:29:47 I've been stuggling to implemenet a itc code inner interpretter... do you know of a concise subroutine threaded example? 15:30:41 stc doesn't have an inner interpreter as it compiles to actual call instructions 15:32:08 Cool had no idea. Does one of the forths do stc? iirc, most of the eforths are direct threaded 15:32:40 I've mostly been studying camelforth, eforth and f83 (for dos) 15:32:48 retro (my forth) was stc on 32-bit x86 from v4 through v9 (later versions ron an an emulated stack processor). sources can be grabbed at http://forthworks.com/retro/r 15:34:42 The 7.x versions might be the best point if you are looking for examples; they were less complex than the later ones, and served as a starting point for a number of others (reva, helforth, glypher, giref) 15:37:28 Thanks for the tip! I'm going to study it tonight 15:37:40 Forth and Lisp are fascinating 15:40:16 I like forth, lisp, and smalltalk 15:43:15 Yes they same 3 are my favourites also 15:53:37 --- quit: anamorphic (Quit: anamorphic) 15:55:49 --- join: anamorphic (~anamorphi@50.58.217.82) joined #forth 16:22:58 --- quit: moony (Quit: Bye!) 16:23:19 --- join: moony (moony@hellomouse/dev/moony) joined #forth 16:35:45 --- quit: anamorphic (Quit: anamorphic) 16:37:05 --- join: anamorphic (~anamorphi@50.58.217.82) joined #forth 16:38:49 <`presiden> crc, is there a reason why choosing fasm over nasm in forth 7? 16:58:03 --- join: tabemann (~travisb@h193.235.138.40.static.ip.windstream.net) joined #forth 17:01:30 --- quit: anamorphic (Quit: anamorphic) 17:11:27 --- quit: dddddd (Remote host closed the connection) 17:16:22 `presiden: it was being actively developed & supported; nasm wasn't at the time 17:28:17 --- quit: jimt[m] (Read error: Connection reset by peer) 17:28:19 --- quit: siraben (Read error: Connection reset by peer) 17:28:22 --- quit: alexshpilkin (Read error: Connection reset by peer) 17:28:26 --- quit: bb010g (Remote host closed the connection) 17:30:52 --- quit: pierpal (Ping timeout: 246 seconds) 17:35:04 --- quit: john_cephalopoda (Ping timeout: 264 seconds) 17:39:47 --- join: bb010g (bb010gmatr@gateway/shell/matrix.org/x-lfvocauwcrkxkkxn) joined #forth 17:47:27 --- join: john_cephalopoda (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 18:06:09 --- quit: tabemann (Ping timeout: 250 seconds) 18:19:30 --- join: alexshpilkin (alexshpilk@gateway/shell/matrix.org/x-crdmnwfnvoojpwws) joined #forth 18:19:30 --- join: jimt[m] (jimtmatrix@gateway/shell/matrix.org/x-xailxkmtscxydqrt) joined #forth 18:19:30 --- join: siraben (sirabenmat@gateway/shell/matrix.org/x-ttcpqtviregwybhr) joined #forth 19:51:56 --- join: tabemann (~travisb@2600:1700:7990:24e0:e195:6b4e:1b5c:932b) joined #forth 20:07:06 --- quit: Keshl (Read error: Connection reset by peer) 20:08:32 --- join: Keshl (~Purple@207.44.70.214.res-cmts.gld.ptd.net) joined #forth 20:11:17 --- quit: WilhelmVonWeiner (Ping timeout: 246 seconds) 20:12:03 --- join: WilhelmVonWeiner (dch@ny1.hashbang.sh) joined #forth 20:12:26 --- nick: WilhelmVonWeiner -> Guest76893 21:10:25 --- join: gravicappa (~gravicapp@h109-187-202-26.dyn.bashtel.ru) joined #forth 22:05:16 --- quit: dave0 (Quit: dave's not here) 22:27:01 --- quit: `presiden (Read error: Connection reset by peer) 22:31:35 --- join: `presiden (~presiden@unaffiliated/matematikaadit) joined #forth 22:38:40 --- quit: nighty- (Quit: Disappears in a puff of smoke) 22:41:25 --- join: nighty- (~nighty@b157153.ppp.asahi-net.or.jp) joined #forth 23:56:26 --- join: C_Keen (cckeen@pestilenz.org) joined #forth 23:59:46 --- quit: C-Keen (Ping timeout: 252 seconds) 23:59:59 --- log: ended forth/19.03.18