Re: R4GL V C4GL
Posted in 1994
Paul Eccleston (Paul@ecles.demon.co.uk) wrote: : 1. Some of our programs use a database stored in "/u/cham/bespoke/misc/data" : So to access this database, at the top of each program we have : database "/u/cham/bespoke/misc/data" : This works fine for C4GL, in R4GL it compiles, but when we run it : we get a 'syntax error at line 0' error. Now I know this can be : resolved by just using database data, and setting the DBPATH var, : but that's not the point! Interesting ... I didn't know that worked under either compiler. I've gotten used to using "database mydb" at the top and always setting DBPATH. Not sure why it fails under RDS but I would bet it wouldn't work either if you ever substituted OnLine for SE. Is that syntax documented anywhere by Informix? : 2. One program uses the thru command to pass specific fields in a record : to a report section. The program again compiles and runs ok under : C4GL, but in R4GL I get a compile error saying 'this report has already : been called with a different number of parameters'. Are you absolutely sure it was passing the same number of parameters in the first place? R4GL tends to have stricter error checking than C4GL. It could have been a program bug that C4GL never complained about. If not, maybe something is wrong with R4GL. You didn't say which version of 4.x you are using. : I would be grateful if anybody can help, I may just be unlucky but : everything I've tried to do in R4GL so far has failed miserably, : have I made a mistake in buying it, mmmmmm.... Did you also purchase the interactive debugger? This tool can be a lifesaver and it isn't available for C4GL. I have found R4GL to be very fast and robust for a p-code compiler. I have used it in production systems in favor of C4GL due to its lower overhead: *.4gi's are *much* smaller than *.4ge's and system memory usage is sometimes reduced because typically many fglgo processes run at once and Unix can share the .text segments. In contrast, C4GL compiles the runtime (equivalent of fglgo) into every .4ge produced, wasting disk and VM. R4GL runs slightly slower though depending upon the complexity of program logic. The biggest drawback of R4GL I've witnessed is slow program load times because of runtime binding. I've always wondered if Informix would ever implement a *real* linker/librarian (like ld/ar) for RDS instead of just /bin/cat ... : -- : Paul Eccleston, England : Communications across the revolutionary divide is : inevitably partial. : - Thomas S. Kuhn -- Jeff Sturm