Welcome to the MacNN Forums.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

You are here: MacNN Forums > Software - Troubleshooting and Discussion > Developer Center > adapting OS X for CompSci course use?

adapting OS X for CompSci course use?
Thread Tools
Forum Regular
Join Date: Sep 2000
Location: Seattle, WA
Status: Offline
Reply With Quote
Mar 8, 2002, 10:58 PM
 
Hi, I am a college student taking courses in CS right now, since this forum would be pretty knowledgeable about this topic, I could use some tips:

I will mostly deal with C, C++, and Java, can I use the OS X developer tools package to compile my homework programs? Are there any potential incompatibilities? I am paranoid of making code that works on my Mac but not on the TA's PC. Also, how's the OS X Development IDEs compared to Microsoft Visual Studio tools? How's the learning curve?
Anthony Wu
- - - - - - - - - -
Titanium PowerBook G4/550 - X 10.2
Beige PowerMac G3/500 - X 10.1
HP 751n P4/1.8GHz - XP Pro SP1
     
Admin Emeritus
Join Date: Oct 2000
Location: Boston, MA
Status: Offline
Reply With Quote
Mar 8, 2002, 11:29 PM
 
- As long as you write as clean code as possible, you'll be fine.

- Project Builder is not only free, but a great IDE

- Project Builder takes all of ten minutes to learn thoroughly. It really rocks.
"Against stupidity, the gods themselves contend in vain" (Schiller)
     
Senior User
Join Date: Oct 2000
Location: Lawrence, KS
Status: Offline
Reply With Quote
Mar 8, 2002, 11:50 PM
 
You should be fine, unless you need to code for the MFC. The learning curve for me was for 30 minutes. You should explore the various project templates, find the right one and your on your way. PB is an excellent IDE and getting better!




[ 03-09-2002: Message edited by: DaGuy ]
iMac 17" G4 800MHZ & 768 SDRAM
     
Senior User
Join Date: Oct 2000
Location: Lawrence, KS
Status: Offline
Reply With Quote
Mar 9, 2002, 12:02 AM
 
You should be fine. You should explore the various project templates, find the right one and your on your way. PB is an excellent IDE and getting better!

iMac 17" G4 800MHZ & 768 SDRAM
     
Dedicated MacNNer
Join Date: Nov 2000
Status: Offline
Reply With Quote
Mar 9, 2002, 01:03 AM
 
As far as java goes, you should be fine as long as you stick to the java and javax namespaces. Obviously anything from com.apple.*, etc. is forbidden.

C/C++ might be a little trickier.

If your TA is using MS Visual C++ you might have some issues. The MS compiler doesn't comply with the C++ standard, especially in respect to namespaces. Building your source could be a problem too, as VS doesn't have jam or a decent make.

BEGIN RANT

You should scold your department head as well. Unless your school is giving away x86 pcs with a free copy of VS, they should be using gcc and some variant of UNIX as the reference platform for student submissions. Any other solution encourages software piracy by the students, and universities, of all places, should respect intellectual property rights.

END RANT

If your TA is using cygwin gcc on their PC, you should be alright as long as you provide a Makefile to build your source.

You also need to watch out for byte ordering issues with binary data you might be given. PPC processors are big endian, and X86 processors are brain-dead, I mean little endian.

Project Builder is twice the IDE VS is. It doesn't try to be some sort of all-in-one code generator/ide. It focuses on the ide aspect and does it well. I have to give MS one for Intellisense though. I wish PB had it.
     
Dedicated MacNNer
Join Date: Jan 2001
Location: Boulder, CO, USA
Status: Offline
Reply With Quote
Mar 9, 2002, 02:58 AM
 
Originally posted by int69h:
<STRONG>As far as java goes, you should be fine as long as you stick to the java and javax namespaces. Obviously anything from com.apple.*, etc. is forbidden.

C/C++ might be a little trickier.

If your TA is using MS Visual C++ you might have some issues. The MS compiler doesn't comply with the C++ standard, especially in respect to namespaces. Building your source could be a problem too, as VS doesn't have jam or a decent make.

BEGIN RANT

You should scold your department head as well. Unless your school is giving away x86 pcs with a free copy of VS, they should be using gcc and some variant of UNIX as the reference platform for student submissions. Any other solution encourages software piracy by the students, and universities, of all places, should respect intellectual property rights.

END RANT

If your TA is using cygwin gcc on their PC, you should be alright as long as you provide a Makefile to build your source.

You also need to watch out for byte ordering issues with binary data you might be given. PPC processors are big endian, and X86 processors are brain-dead, I mean little endian.

Project Builder is twice the IDE VS is. It doesn't try to be some sort of all-in-one code generator/ide. It focuses on the ide aspect and does it well. I have to give MS one for Intellisense though. I wish PB had it.</STRONG>
what he said. all of it.

(though i'm personally still most comfy in Codewarrior, of all the IDEs/compilers i've tried... i'd put it above PB.)
     
Fresh-Faced Recruit
Join Date: Jan 2002
Location: Cambridge, England
Status: Offline
Reply With Quote
Mar 9, 2002, 03:25 AM
 
I do CompSci in England and I love using my iMac for my homework and assignments. The apps I would download and try are JBuilder and TogetherSoft's Together.

My Uni uses PCs for windows and Macs for Linux. The Java code I write is always 100% pure so it runs at home and on the Uni PCs. I like project builder but JBuilder has loads more features and is used a lot in industry so it's useful to learn.
mmmm - I'm a big Cinnamon bun.
     
me
Mac Enthusiast
Join Date: Jun 2000
Location: Seattle, WA
Status: Offline
Reply With Quote
Mar 10, 2002, 12:22 AM
 
yuliang, what school are you at? I'm a senior at UW's CSE program, OS X has kicked ass for me. I highly recommend you check out my new page -
OS X for CSE

OS X is actually becoming very popular in my dept.
     
Mac Elite
Join Date: Sep 2001
Location: Chico, CA and Carlsbad, CA.
Status: Offline
Reply With Quote
Mar 10, 2002, 02:08 AM
 
Originally posted by me:
<STRONG>yuliang, what school are you at? I'm a senior at UW's CSE program, OS X has kicked ass for me. I highly recommend you check out my new page -
OS X for CSE

OS X is actually becoming very popular in my dept.</STRONG>
That's a very nice webpage, sir. I am in AP Computer Science in High School, as a Senior, and I'll be having to work on some of this stuff from home. It's good to know that some of this stuff can be done on MacOSX, thanks for putting up that site and letting people know
"In Nomine Patris, Et Fili, Et Spiritus Sancti"

     
Fresh-Faced Recruit
Join Date: May 2001
Status: Offline
Reply With Quote
Mar 10, 2002, 03:18 AM
 
Originally posted by me:
<STRONG>yuliang, what school are you at? I'm a senior at UW's CSE program, OS X has kicked ass for me. I highly recommend you check out my new page -
OS X for CSE

OS X is actually becoming very popular in my dept.</STRONG>
I'm reasonably certian that MacOS X is not BSD 4.4 compatible. It's parity with BSD versioing is somewhere in the realm of 3.2 or 3.3

Many of the OS's BSD problems stem from it's relatively out-dated BSD layer.
     
Mac Elite
Join Date: Sep 2000
Location: New York
Status: Offline
Reply With Quote
Mar 10, 2002, 03:31 AM
 
I use OS X to do all of my computer science assignments...except the SPARC assembly stuff ARGHHHHH!!! It is such a pleasure to be able to do everything on my own machine. The CS department here is very unix-centric, and rightfully so. The faculty has taken great interest in OS X and many professors now tote tiBooks around. The intoductory courses now have course materials that are designed to work specifically on OS X. It's really great. They want us to use the GNU tools but since project builder is based on the GNU tools it's all good. I really like using project builder. The only beefs that I have with it is that it was a pain and a half to get the thing to accept redirected standard input into my programs and the debugger takes a month and a half to load. It's dumb that there isn't a button to restart the debugger, but instead you have to reload the entire thing. However you can just open the console tab and hit run and start that puppy up again.

I was a little jealous of some of the things that my friend showed me that MS Visual Studio can do, like have that cool watch window where you can watch what YOU want (i can't tell you how much it kills me that when you set up the variables window to show the variables you want and then jump into and out of a function you find all those triangle tabs closed!!! That pisses me off. But it's still better than printf statements. However Project Builder is 100% free and VS is far from it. That makes it all worth it. I can still open up the terminal and use the gnu tools if I want, and its also easy to run X sessions from the solaris server so I can do the SPARC stuff as well. OS X seems like a CS student's dream OS.
     
Dedicated MacNNer
Join Date: Nov 2000
Status: Offline
Reply With Quote
Mar 10, 2002, 10:52 AM
 
Originally posted by NoAuthoritaw:
<STRONG>

I'm reasonably certian that MacOS X is not BSD 4.4 compatible. It's parity with BSD versioing is somewhere in the realm of 3.2 or 3.3

Many of the OS's BSD problems stem from it's relatively out-dated BSD layer.</STRONG>
BZZT. Please insert quarter to play again. FreeBSD is not the only BSD. It is only one fork off the 4.4 BSD codebase. Darwin is derived from 4.4 BSD as well. If I had to declare one of the forks to be "The BSD" it would probably have to be NetBSD, the fork that most of the others lift their ideas from
     
Senior User
Join Date: Sep 2000
Location: Boston, MA
Status: Offline
Reply With Quote
Mar 10, 2002, 12:09 PM
 
have you tried using the 'ddd' (under X Windows) debugger?
     
Professional Poster
Join Date: Apr 2001
Location: Long Beach, CA
Status: Offline
Reply With Quote
Mar 10, 2002, 01:06 PM
 
OS X is definately this CS student's dream come true. I've got all of the same command line build tools that I can run, I've got XFree86, qt, etc... AND, I can even use my OS X machines to write the cluster computing assignments as MPI runs compiles and runs on my OS X machines.

In addition, with my laptop, all I have to do on campus is choose the location associated with the school's network settings and run the command:

startx -- -query &lt;the school's X-server&gt; -fullscreen

and an X session starts up looking exactly like their sun machines (just less desktop space).

ACSA 10.4/10.3, ACTC 10.3, ACHDS 10.3
     
Fresh-Faced Recruit
Join Date: May 2001
Status: Offline
Reply With Quote
Mar 11, 2002, 02:27 AM
 
Originally posted by int69h:
<STRONG>

BZZT. Please insert quarter to play again. FreeBSD is not the only BSD. It is only one fork off the 4.4 BSD codebase. Darwin is derived from 4.4 BSD as well. If I had to declare one of the forks to be "The BSD" it would probably have to be NetBSD, the fork that most of the others lift their ideas from </STRONG>
Can you explain the serialized DNS scheduling that plaged 3.x versions of BSD, and I don't mean FreeBSD. That problem is still in the BSD layer of MacOS X, and was one of the major fixes addressed with BSD 4.0
     
Dedicated MacNNer
Join Date: Nov 2000
Status: Offline
Reply With Quote
Mar 11, 2002, 07:16 AM
 
Originally posted by NoAuthoritaw:
<STRONG>

Can you explain the serialized DNS scheduling that plaged 3.x versions of BSD, and I don't mean FreeBSD. That problem is still in the BSD layer of MacOS X, and was one of the major fixes addressed with BSD 4.0</STRONG>
4.2 BSD was released in September of 1983, while Jobs was still at Apple.
NeXTSTEP 1.0 was based on 4.2 BSD and Mach 2.5

From the Darwin FAQ.

What is Darwin's lineage?
Justin Walker's description of Darwin's heritage is:
Mac OS X began life as a child of OpenStep 4.x. The first stage in the evolution was the move from OpenStep 4.x to Rhapsody, which was based on BSD Lite2, with a batch of NeXT-instigated changes. When we shifted to Mac OS X from Rhapsody/Mac OS X Server, we incorporated FreeBSD 3.2 changes for the networking piece. The rest of the BSD portion of the kernel remained more or less as it was. At the same time, we (i.e., Fred, with your [Darwin's] help) pulled in command and library updates. Most of these are from FreeBSD, although I'm not positive about the heritage of the pieces that are now in the system.

Relevant links:
UNIX History
Darwin FAQ
The BSD Family Tree
     
Forum Regular
Join Date: Nov 2001
Location: New Jersey, USA
Status: Offline
Reply With Quote
Mar 11, 2002, 11:07 PM
 
I do all of my CS assignments in Project Builder. I'm only working in Java, though, and our TA's all test our programs on UNIX machines.

Like everyone else said, you may have some problems with C++ compatibility depending on what platform your TA grades in.
     
Mac Elite
Join Date: Sep 2000
Location: New York
Status: Offline
Reply With Quote
Mar 11, 2002, 11:32 PM
 
Originally posted by Detrius:
<STRONG>In addition, with my laptop, all I have to do on campus is choose the location associated with the school's network settings and run the command:

startx -- -query &lt;the school's X-server&gt; -fullscreen

and an X session starts up looking exactly like their sun machines (just less desktop space).</STRONG>
Wow! I didn't know you could do that! That's really cool! It works for the Solaris server on campus but not the linux server, nor does it work for the Solaris server in the CS department, but it is still cool.
     
Dedicated MacNNer
Join Date: May 2001
Location: Edinburgh, UK
Status: Offline
Reply With Quote
Mar 14, 2002, 08:53 AM
 
I use OS X for much of my CS stuff. This includes HUGS 98 (Haskell 98 interpreter) and writing any reports. I also used PB for a Physics related C module. The only things I don't do on OS X is Ada95 and MS Access although Ada95 support is to be included in GCC 3.1.
     
Fresh-Faced Recruit
Join Date: Jan 2002
Location: Cambridge, England
Status: Offline
Reply With Quote
Mar 14, 2002, 11:41 AM
 
Originally posted by iJed:
<STRONG>I use OS X for much of my CS stuff. This includes HUGS 98 (Haskell 98 interpreter) and writing any reports. I also used PB for a Physics related C module. The only things I don't do on OS X is Ada95 and MS Access although Ada95 support is to be included in GCC 3.1.</STRONG>
I did Ada95 in my first year and couldn't find a way to program with it on my Mac. Thankfully they now teach us Java.
mmmm - I'm a big Cinnamon bun.
     
   
Thread Tools
Forum Links
Forum Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Top
Privacy Policy
All times are GMT -5. The time now is 12:16 PM.
All contents of these forums © 1995-2011 MacNN. All rights reserved.
Branding + Design: www.gesamtbild.com
vBulletin v.3.8.7 © 2000-2011, Jelsoft Enterprises Ltd., Content Relevant URLs by vBSEO 3.3.2