Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search

[REBOL] Re: Browsers ,vim Vs. Emacs etc....

From: joel:neely:fedex at: 15-Mar-2002 19:45

Hi, Sunanda, [SunandaDH--aol--com] wrote:
> Oh, and Joel: as an ex-CICS systems programmer who has taught > COBOL programming in the dim and distant, I can tell you that > 75 to 80 of the world's business data is held in people's head, > or on paper in TSU/SSU (*) > > (*) Supposed IBMese for Tall and Short Storage Units -- filing > cabinets to us plebs. >
ROFL! Thanks, I needed that! ObRebolRelevance: This brings to mind a topic I've pondered over the years, and which I think was mentioned on this list a while back. Since much data from mainframes, or obtained via OCR (from TSU/SSU sources, of course! ;-), is in fixed-record layout, it would be interesting to have a program that would attempt to infer "field" positions and lengths by examining the content of the data. This would involve a heuristic approach IMHO. There are "horizontal" issues, such as the fact that alphanumeric fields (e.g. names and addresses) are typically left-justified and right-padded with blanks, while numeric fields are typically either right-justified or decimal-position aligned, and left- padded with either zeros or blanks. There are also "vertical" issues, in that a series of lines with the same content in the same position(s) probably contain hints about the fields. When trailing blanks (after alphanumeric data) in some lines are replaced with alphanumeric data and fewer trailing blanks, that's a hint of a variable alphanumeric field. etc... Wouldn't REBOL be a good tool to write such a sort-of-AI task in? Wouldn't that make an interesting demonstration of the power of REBOL for the commercial/business environment? -jn- (But I do think the guy quoted in the article meant "electronic business data"...) -- ; sub REBOL {}; sub head ($) {@_[0]} REBOL [] # despam: func [e] [replace replace/all e ":" "." "#" "@"] ; sub despam {my ($e) = @_; $e =~ tr/:#/.@/; return "\n$e"} print head reverse despam "moc:xedef#yleen:leoj" ;