ForthNet@willett.UUCP (ForthNet articles from GEnie) (07/11/90)
Date: 07-10-90 (03:44) Number: 3482 (Echo) To: ALL Refer#: NONE From: GENE LEFAVE Read: (N/A) Subj: EBCDIC CONVERSION Status: PUBLIC MESSAGE Does anyone have an EBCDIC to ASCII , and/or IBM packed decimal to binary conversion routine? I'm trying to decode an IBM VSAM data tape and need these routines. Gene --- ~ EZ-Reader 1.13 ~ ----- This message came from GEnie via willett through a semi-automated process. Report problems to: uunet!willett!dwp or willett!dwp@hobbes.cert.sei.cmu.edu
ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie) (10/21/90)
Date: 10-13-90 (18:36) Number: 12 of 12 To: ALL Refer#: NONE From: CHRIS WATERS Read: (N/A) Subj: Conditional Interp. Status: PUBLIC MESSAGE Conf: FORTH (58) Read Type: GENERAL I thought I'd post a couple of my favorite little words here. I've posted these in a few places in the past, but not for several years. They provide conditional interpretation for Forth (i.e. the ability to skip portions of source code based on flags on the stack). I've seen other words that do the same thing, but my version is the simplest I've seen. : ?( 0= IF [COMPILE] ( THEN ; IMMEDIATE : () [COMPILE] ( ; IMMEDIATE : ) ; IMMEDIATE These words are usually the first things I define in any new Forth system I get. Using these, I can usually get the rest of my source up quickly and easily. I can have the "same" source code working on a variety of different systems, with all the system dependancies factored into sections that are conditionally loaded, rather than having several different copies of the same code, each set up for a different system. The thing I like best about these words is the operation of the '()' word (the equivalent of 'ELSE'). Sometimes it is interpreted as a word, sometimes as merely a delimiter. Consider: Flag ?( 45 LOAD () 48 LOAD ) If 'Flag' returns true, screen 45 will be loaded, then '()' will be interpreted and the '48 LOAD' will be treated as a comment. If 'Flag' returns false, the ')' in '()' will be treated as the end of a comment, and only screen 48 will be loaded. I've been using these words (as I said) for many years, but I'd like to hear what others think, and if anyone has similar tools they use, and if so, what the advantages and disadvantages of other methods might be. These definitions are completely in the public domain, and anyone who likes them should feel free to use them. Chris R:-{O} MM 2.1a *Do not disturb! Asleep at computer --- * SFUTI 3.01 / (Pssssst.....Mikey's really not 29 anymore....) PCRelay:THECAVE -> #559 RelayNet (tm) 4.10 The Cave (408)259-8098 12/24/96/19.2 HST/DS ----- This message came from GEnie via willett through a semi-automated process. Report problems to: dwp@willett.pgh.pa.us or uunet!willett!dwp