kca@cbnewsc.ATT.COM (k.c.archie) (03/15/90)
I am interested in comments on different development environments on the Apple 2GS. I am interested in Orca C vs. TML pascal 2. I have a pretty good Forth system but it has been so long since I last used Forth that I want to check out these languages. I am not interested in a debate or flame war over which language is better. What I want to know is which system makes it easier to generate 2GS applications. Here are some criteria, please add others. Support for Toolbox access: write my own assembler functions, is there a library of routines. Resource editing I am not really sure what this is but it appears to be a useful tool for generating desktop applications. Examples Code Are there templates of programs to open windows, do graphics, etc. Desk Accessories Are there examples or templates to help write these? Debugging Aids Are there any and what sort? Compiler Speed Will I be able to eat lunch while compiling Code Speed Can I write games in it? Will the users of my applications fall asleep while using them? Building Tools Something like make. Editors What are they like? Standards Do they compile the standard language? Documentation Is it any good. The goal here is to decide which system is easier to use. I am conversant in both languages and am completely aware of the differences, strengths and weakness of both. I don't want arguments like "C is better because it has ++" or "Pascal is better because it has sets". I want to know about the Environment, not the language. I appreciate any and all help. **kent Kent Archie kca@cbnewsc.att.com
roberth@microsoft.UUCP (Robert HESS) (03/17/90)
======================================================================= I am posting this to comp.sys.apple *only* because the question was posted here. Everybody should now be posting their questions and comments to comp.sys.apple2 ======================================================================= K.C.Archie (kca@cbnewsc.ATT.COM) Asks: | I am interested in comments on different development environments | on the Apple 2GS. I am interested in Orca C vs. TML pascal 2. | (...and provided some specific points...) Both systems are pretty good. The *major* problems in TML Pascal II, are in the Text Editor, and the Resource Editor. The Text Editor has a couple system crash, and memory trashing type bugs due to bugs in the new TextEdit control. And the Resource editor has some problems with editing menus. Orca C also has some problems. I don't use it much, but I have had system crashes during editing, and compilation. I have also heard that it doesn't strictly follow K&R C, for example this will compile fine: void main ( int argc, char *argv[]) {... ...but these variations will fail: void main (argc, argv) int argc; char *argv[]; {... void main ( int argc, char **argv) {... (These examples were sent me by somebody else, I haven't tried them myself yet...) Now as to your specific points of interest: | Support for Toolbox access: | write my own assembler functions, is there a library of routines. TML does not 'really' support using code imported from any other source, this includes assembly code. It is possible that using the 'CodeResource' resource, you can write short assembly routines, and call them from TML. I have been meaning to check this out, but haven't had the time yet. If anybody else has, I'd be interested in seeing what you have done. Orca C does allow true INLINE codeing. (TML 'trys' to, but only allows a single byte, right Dave?) And although I haven't tried it yet, it looks pretty good, with actual assembly directives and labels. Both systems provide almost full access to the toolbox routines. As I remember, there were a couple routines that I ran across that Orca C didn't have access to. TML may have a couple too, but I haven't found any yet. | Resource editing | I am not really sure what this is but it appears to be | a useful tool for generating desktop applications. TML comes with a 'graphical' resource editor. It is limited in its capablilities, and the resources it supports (and it has some bugs), but for the beginner, it is far easier then trying to use something like the REZ compiler available from APDA. I have switched to using the REZ editor for my TML resources. I was needing to use some resources that TML didn't allow (like ICONs), and I also was getting frustrated with having my resource trashed if I tried editing my menu. | Examples Code | Are there templates of programs to open windows, do graphics, etc. Both systems come with several good example programs. TML also sells a separate package of source code examples called "TML Source Code Library II" (for about $50). These are some pretty good examples, most (all?) of them written by Vince Cooper. | Desk Accessories | Are there examples or templates to help write these? Again, both systems provide this. TML's method, is FAR better then Orca's. In Orca, they tell you to write your NDA as a regular program, then once that is working, make a few modifications to it to turn it into an NDA, then copy the program to the Desk.Accs folder and reboot your machine to test it.... Yikes! a little severe. In TML, your code is NDA code from the start. If you compile it, TML will temorarily add the item to the 'Apple' menu and let you test it out to make sure it works. | Debugging Aids | Are there any and what sort? Orca has a debugger, that many people say is pretty good. The couple times I've tried to use it, I crashed, but that might have been my problem. TML doesn't have anything to help with debugging, this is *very* unfortunate. | Compiler Speed | Will I be able to eat lunch while compiling TML is faster then Orca (IMHO). But both are pretty good, and unless you are compiling a LARGE application, you should barely have time to enjoy a couple sips of coffee. | Code Speed | Can I write games in it? | Will the users of my applications fall asleep while using them? Neither compiler will generate code as fast as tight assembly would be. But both appear to be quite decent. I have seen a couple simple games written with both systems, and they are pretty good. Now Crystal Quest wasn't written with either one, and I doubt it could be, but you probably weren't thinking about something like that... | Building Tools | Something like make. TML has nothing like make, but for a single file source, you don't need it. You just tell it to compile it, and it is compiled, and linked. In your code, you specify other 'units' to include, and the compiler will find them, and link them in. Orca is able to use the normal APW command scripts to perform 'make' type functionality. | Editors | What are they like? TML uses the new TextEdit control (thank goodness, their earlier editor was SOOOOO SLOOOOOOW). Unfortunately, this means they fully exhibit the bugs that currently exist in this editor. But it is relatively speedy, and allows user selectable fonts and sizing (yeah!). Orca has their own editor that they wrote. It does not allow user selectable fonts, in fact, the font it uses is not one you will find anywhere else. But this allowed them to tune their editor graphics specifically around this font, and frankly, I am amazed at how fast it is. | Standards | Do they compile the standard language? TML essentially follows standard pascal formats, they have of course added some extensions of their own, and have not implemented some features that aren't appropriate. Their manual lists all of these in their appendix. Orca does not appear to be fully K&R yet (as noted above). Will it? Only Mike knows for sure. | Documentation | Is it any good. Both come with decent documentation. There will always be things they leave out, but that's where the net comes in handy :-> Niether can be used as a 'primer' for the language. You can easily find other books available to help you learn the language. Hopefully, this helped you with your questions... -Robert __________________________________________________________________________ ##### ####### | Robert B. Hess, Microsoft Corp., Redmond, WA ###### ####### |----------------------------------------------------- ####### ####### | roberth@microsof.uu.net #### ##### #### | {decvax, uunet, uw-beaver}!microsof!roberth #### ### #### |_____________________________________________________ "...my opinions are strictly my own, and not those of my employer..."
jason@madnix.UUCP (Jason Blochowiak) (03/19/90)
In article <14399@cbnewsc.ATT.COM> kca@cbnewsc.ATT.COM (k.c.archie) writes: >I am interested in comments on different development environments >on the Apple 2GS. I am interested in Orca C vs. TML pascal 2. [Edited] >Support for Toolbox access: > write my own assembler functions, is there a library of routines. I'm not sure about TML ][, but I know that it's simple enough to add assembly routines to Orca/C stuff. Orca/C (as well as APW C) allow for in-line assembly, but it's not all that useful for anything except teeny snippets - the assembler is pretty nice (the Orca assembler - the APW asm is basically the same thing). >Resource editing > I am not really sure what this is but it appears to be > a useful tool for generating desktop applications. Resources are, in the most broad description, little chunks of data that the Resource Mgr allows you to manipulate. More specifically, quite a few of the toolbox routines allow resources to be used as templates (as a real simple example, NewWindow2() allows you to say "I want a new window; use this resource as the description for the window"). Resource editing isn't a requirement - neither is resource generation. Quite limited (and buggy) resource editing is available from TML ][, and there's a resource compilation tool that you can get from APDA (comes with the beta release of the APW tools, v1.1). >Examples Code > Are there templates of programs to open windows, do graphics, etc. There's plenty of sample code that comes with both. I haven't really looked at it for quality, though. >Desk Accessories > Are there examples or templates to help write these? Both implementations support desk accessories, but I'm not sure if TML ][ can generate CDAs. There's some sample code for DAs that comes with Orca/C, and I think with TML ][. >Debugging Aids > Are there any and what sort? Well, kind of. There's the (non-symbolic) 65816 debugger that you can get, and then there's Orca's desktop debugger, but that's part of their desktop environment, which I'll comment on shortly. >Compiler Speed > Will I be able to eat lunch while compiling Depends on the size of the program. One thing that seems to be quite nice about TML ][ is that the toolbox interfaces are precompiled UNITs. With Orca/C and APW C, they're in source form, and have massive dependencies - so, if you include <windows.h>, you're going to end up getting <types.h>, <quickdraw.h>, and a few others... I keep my code modules fairly small, and I use my make facility to keep compilation times down. Of course, then there's the linker, which is pretty slow. I'd definitely recommend getting a TransWarp GS if you're at all serious about doing anything non-trivial on the gs. >Code Speed > Can I write games in it? Certainly not arcade games. With something like a card game, or an adventure-type game, speed shouldn't be a real problem. > Will the users of my applications fall asleep while using them? Probably not. One thing about the //gs's speed, though, is that it makes critical code optimization (read: re-write in assembly) a necessity, rather than a luxury, at least for anything fairly heavy duty. >Building Tools > Something like make. 360 Microsystems has a make facility that they're selling. I wrote one (pretty limited, but it does what I want), and there are a few others floating around. >Editors > What are they like? Uck. I wrote my own editor for assembly stuff, and I use the port of MicroEMACS for C. The standard editors are _very_ weak, although I suppose they do try for at least minimal functionality. >Standards > Do they compile the standard language? Wrong person to ask about that one... >Documentation > Is it any good. The Orca/C docs seem to be moderately good. I only read a small section of their manual, tho' - quite a bit of it was devoted to "here's an intro to //gs programming using Orca/C", which I didn't need. My cursory inspection of TML ][ didn't include reading any part of the manual. >The goal here is to decide which system is easier to use. [...] >I want to know about the Environment, not the language. Well, neither of them are great. I happen to like C an order of magnitude more than Pascal, so I don't have TML Pascal ][, but I have seen it and played with it a little bit. My comments on it are based on that, and on talking to folks that use it. Orca's desktop enviroment is incredibly buggy (other people seem not to have as many problems with it...), and I've been hearing horror stories about TML's editor (they claim that the bugs are due to bugs in Apple's TextEdit toolset, which is entirely possible). With Orca/C, you have a choice of the desktop environment, or a line-oriented interface. I prefer the text- based environ, although that may just be because I've yet to have a particularly good experience with a desktop environment. I'm not at all sure of the quality of code that TML ][ spits out. The Orca/C code is pretty good, when it works. I'd seriously recommend that if you get Orca/C, you wait until v1.1 is out (Byteworks is sending registered users betas of v1.1, but they're certainly not entirely functional). Reading back over this, it doesn't seem like I'm giving you much to go on. Oh, well. Like I said, I have Orca/C, but that's because I don't like Pascal, and the APW C compiler was driving me nuts. >Kent Archie kca@cbnewsc.att.com -- Jason Blochowiak - jason@madnix.UUCP or, try: astroatc!nicmad!madnix!jason@spool.cs.wisc.edu "Education, like neurosis, begins at home." - Milton R. Saperstein