Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007
1st Law of CS1321:
2 + 2 = monkey
Proper CRC Card Creation
Discussion 5 - Chris Gray
Discussion 4 - Chris Gray
The biggest obstacle in Squeek has been how it sets itself apart from our normal languages. Although you achieve the same thing, the wording for a for statement is quite different. Even setting something as equal or doing a not-equal check is different. Having worked in C and then Java, this was quite aggravating to me at first.
It took me some time to realize that yes this was intentional and, more importantly, it was a good thing. Squeek is wildly different from C. It is far more Object-oriented and less nitty gritty like C. How does this effect the code? Since it is so different, they wanted to ensure you did not fall into your old C habits while programming Squeek. One problem I had the first week of 2335 was recognizing the differences in Java and C. You forget the limits of each language sometimes. They're very similiar and that is convenient but it is also conducive to mistakes for that very reason. By deliberately changing everything down to how to set variables or return them, they have ensured this will not happen. The switch between the two is too drastic to ever make basic mistakes of the type. This does make the learning curve slightly steeper, but it is beneficial in that once it is learned you will be fine where as you may make mistakes with C and Java apparent similarity anytime.
Jonathan's details on Explore Morph were very helpful. I had not known about the feature and it will definitely come in handy. The best way to learn is by seeing a working example and previously I had used the program explorer to locate the code I needed.
I enjoyed Stephen's examples of how to utilize the Method Finder. So much text blurs together and visual examples a greatly helpful in seeing how to utilize the feature. Very well done.
Mr. Hostetter provides us with a general overview of languages at the time. His article is interesting because it is a bit dated and displays a different timeline. His comparison of Smalltalk, Eiffal, C++ and Java is not given from our current perspective where Java for example is such a well developed and widely used language. This is interesting because it shows how much programming has changed - and how much hasn't changed.
The biggest difference between the languages he lists is 'true OO' they are and how much control they give the user. C++ for example is class oriented and gives its users low level control. It runs very fast and can be well optimized. Smalltank on the other hand is totally object oriented and actually seems more like a trendsetter than an effective real-world language. His focus is on the creation and outline of these languages. One part he skipped over was the overhead of the varius languages, which is why I liked R. Steven French's Discussion. He mentioned the speed comparisons of the varius languages, something very important in non-educational use of them. Just about any language can give a decent program but not all give you enough control to properly itemize them for hardware.
Links to this Page
- Fall 2005 Who's Who last edited on 9 June 2011 at 5:25 pm by cc-vpn-tso249.cc.gatech.edu
- Fall 2005 Teams last edited on 14 December 2005 at 2:01 pm by lawn-199-77-215-180.lawn.gatech.edu
- Proper CRC Card Creation last edited on 14 December 2005 at 8:18 pm by c-71-56-42-154.hsd1.ga.comcast.net