home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!munnari.oz.au!comp.vuw.ac.nz!waikato.ac.nz!aukuni.ac.nz!kcbbs!nezsdc!hugh
- Newsgroups: comp.databases.informix
- Subject: Re: Suggested Changes to 4gl
- Message-ID: <1992Dec15.230454.7421@nezsdc.icl.co.nz>
- From: hugh@nezsdc.icl.co.nz (Hugh Grierson)
- Date: Tue, 15 Dec 92 23:04:54 GMT
- References: <1992Dec14.215058.24334@netcom.com>
- Organization: Fujitsu New Zealand
- Lines: 53
-
- In article <1992Dec14.215058.24334@netcom.com> pmahler@netcom.com (Paul Mahler) writes:
- >So far the only responses I have received have been suggestions
- >for changes to the input array statement. Is everyone really
- >this satisfied with 4gl? Is there nothing else we can
- >complain about?
-
- 1) inadequate INPUT ARRAY
- 2) no dynamic memory allocation (eg dynamically sized arrays)
- 3) no pointer variables, or "call by reference"
-
- 4) strange syntax restrictions,
- eg "DISPLAY some_function()" is illegal
-
- 5) mismatch between semantics of some 4GL and SQL language constructs
- eg: in the following code fragment:
- DEFINE x RECORD LIKE y.* (1)
- SELECT * (2)
- INTO x.* (1)
- FROM y
- the ``*'' in (1) are expanded to the list of columns at compile time,
- while the ``*'' in (2) is expanded at run time.
-
- 6) Cursor and window names cannot be constructed dynamically (nor is there
- any other method of having multiple instances of the same window or
- cursor open simultaneously). [Aside: it would also be nice to be able to
- pass window or cursor references as arguments to functions]
- Therefore certain recursive algorithms become difficult. Consider how
- you would implement this pseudocode for a simple tree walk...
-
- # start with: call walk_tree(rootnode, 1, 1)
- function walk_tree(startnode, row, col)
- open window <windowname> at row,col
- foreach cursor <fetch_children> into child_node
- display child_node
- do-some-interactive-work
- call walk_tree(child_node, row+1, col+1)
- end foreach
- close window <windowname>
- end function
-
-
- Well, those are the ones that bug me.
-
- Who was it who said "Informix 4GL isn't a `4G' and is hardly an `L'"?
- Harsh, but fair. I must say that I like the Online engine, but really
- sometimes I wish we were developing apps in C instead of 4GL.
-
-
- --
- Hugh Grierson Fujitsu/ICL New Zealand - Software Development Centre
- hugh@nezsdc.icl.co.nz Speaking for myself only. See figure 1.
- Quote of the decade: "We're not just talking about unpopulated areas
- of the Southern Hemisphere anymore" [Pres. Bush, on the Ozone hole]
-