WW, if you enabled PM, I would not have to pollute this thread and would send you private reminder. But alas, I cannot, so here it goes:
Please, don't post here is you want only one person to read the message. Sent PM to that person, and s/he will most likely include your suggestions. Post here only if you cannot agree.
Keep this thread clean. Soon we will need to ask mods to delete irrelevant posts...
And yes, you can send me PM (private message) if you want. I cannot imagine why someone disables that.
Last edited by pmasiar; April 16th, 2007 at 12:45 PM.
Who else here finds the "help" statement in the python interpreter the best documentation? everything is pretty well-defined.
I think another very good one for Python is How to Think Like a Computer Scientist.
D programming language
D is a relatively young programming language, similar to C and C++, but improving upon the features of the two languages.
Like C and C++, D is a system programming language that can also be used to write high-performance application programs.
Features
- Syntax similar to C++.
- Supports imperative, generic, object-oriented, structured programming paradigms.
- Data-type bindings to C.
- Easy integration with C libraries.
- Automatic memory management (ie. garbage collection).
- Manual memory management is also supported.
- Low-level hardware access for system programming.
- In-line Assembler support.
- Operator overloading.
- Compiled language with no need for a virtual machine.
- Exception handling.
- Classes and functions only need to be written once (no need for separate header files).
- Templates
- Associative arrays, leading to flexible data structures.
- Statically typed with type checking.
- ... and more.
D is like an evolution of C and C++, dropping the quirky and error-prone feature of the languages and substituting their power with productivity and safety features from other modern languages like Java, Python, and Ruby.
D's close similarity with C and C++ means that those who come from C/C++/Java backgrounds can easily learn the syntax and coding conventions of the language.
Main website: http://www.digitalmars.com/d/index.html
Wikipedia entry: http://en.wikipedia.org/wiki/D_programming_language
FreeBASIC
FreeBasic is a fast and powerful implementation of the famous BASIC programming language. FreeBasic is designed to be as compatible to Microsoft's classic Q-Basic dialect of the language, as well as adding modern and powerful features. Some of these additional features include:
- In-line Assembler.
- Multi-treading support.
- Function overloading.
- Pointers
- Unicode support
- Debugging support.
- Optional parameters
- Enumerations
- Dynamic arrays
Currently FreeBasic is a third-generation procedural programming language. Development is currently under way to incorporate object-oriented language features. However, users can still program using object-oriented design by using the types-as-objects trick.
Programs written in FreeBasic are compiled into native executables. The speed of the executables are quite fast, enough to develop applications such as real-time raytracing 3D renderers.
FreeBasic is available under GPL, and its libraries are licensed under LGPL. Supported platforms are Windows, Linux, and MS-DOS. However, the support is currently limited to 32-bit architectures.
FreeBasic boasts a small but powerful set of standard libraries. These include a very capable 2D graphics and console library for graphics applications as well as custom console interfaces. Other capabilities found in Q-Basic are also available. This makes learning to program in FreeBasic a rewarding experience, as nice-looking, sophisticated programs can be created quite quickly, thanks to the language's ease of learning and the useful standard libraries.
Official website: http://www.freebasic.net/
Features: http://www.freebasic.net/index.php/a...ction=features
Language documentation: http://www.freebasic.net/wiki/wikka.php?wakka=DocToc
Screenshots of applications developed with FreeBasic: http://www.freebasic.net/index.php/gallery
Scheme
Scheme is a version of Lisp that is used often in educational settings, and can serve as a good intro to computer science in general. MIT OpenCourseWare has entire class lecture notes for its intro computer science class that uses Scheme, and the textbook is somewhat well known and is available free online.
http://ocw.mit.edu/OcwWeb/Electrical...Home/index.htm
http://mitpress.mit.edu/sicp/full-text/book/book.html
Edit: In the past year or so MIT switched its intro computer science class over to python (http://www.amk.ca/diary/2006/11/mit_..._introduc.html). But the notes and textbook for the original and infamous Scheme variant are still available. Hopefully in another year or two the python class will be up as well.
Last edited by BeardlessForeigner; June 22nd, 2007 at 10:41 PM.
Ada
Just realised this little gem hasn't made it into this thread yet.
What is it?
Ada is a programming language created by the US Department of Defense between 1974 and 1983. Prior to this, they used mostly C and Assembly for most software projects (along with some 200 others), and found that those programming languages were not successful in producing reliable software for critical applications. The Ada programming language was designed as a system programming language (similar target to C) for mission-critical systems, such as avionics and weapon systems.
Ada is a very popular language for critical systems, and has been widely adopted in the commercial industry, in addition to retaining its traditional foothold in the military and its related industries. The following are notable users of Ada:
- Boeing
- British Aerospace
- European Aeronautic Defence and Space Company
- Channel Tunnel
- London Underground
- Paris Metro and Suburban Rail
- Raytheon (missile and radar company)
- 54 air traffic control agencies world-wide.
Although its life began in the US DoD, its influence has now spread to almost every industry that develops or uses critical software systems, even in the former USSR and China!
Design goals of Ada
Ada was designed with the following goals:
- Program efficiency
- System-level access comparable to C
- Code modularity
- Code readability by non-programmers
- Portability
- Rigorous compile-time and run-time error handling
- Reduction of programming faults during development
An in-depth 1995 study by Stephen F. Zeigler (http://www.adaic.com/whyada/ada-vs-c/cada_art.html) showed that development in Ada costs about half that of C++. It also suggests that Ada produces "almost 90% fewer bugs for the final customer".
Ada's readability and encouragement of modular programming has made it somewhat popular as a teaching language. Many universities used Ada for its introductory courses until Java came along.
Partial List of Features
Object orientated programming
Strong typing
Abstractions to fit program domain
Generic programming/templates
Exception handling
Facilities for modular organisation of code
Standard libraries for I/O, string handling, numeric computing
Systems programming
Concurrent programming
Real-time programming
Distributed systems programming
Interfaces to other languages (C, COBOL, Fortran)
Unicode support (8/16/32 bit)
Is it Free and Open Source?
Sure is! AdaCore, the leading provider of Ada compilers and development tools, has released its GNAT compiler under GPL since 2002. Even prior to that, older GNAT compilers came with OSI-approved GNAT Modified GPL.
What's more, GNAT uses GCC as its back-end, which makes Ada programs very portable!
You can install GNAT on Ubuntu using this command:
Gedit and Vim supports syntax and keyword highlighting for Ada. KDevelop also supports Ada projects. AdaCore produces GNAT Programming Studio, an IDE for Ada, C, and C++.Code:sudo apt-get install gnat
How do I learn to use it?
Here are some links to Ada learning resources:
http://en.wikibooks.org/wiki/Ada_Programming
http://linuxgazette.net/issue81/adam2.html
http://www.pegasoft.ca/resources/boblap/book.html
http://stwww.weizmann.ac.il/g-cs/ben...ks/ase-pdf.zip
Last edited by samjh; April 4th, 2009 at 09:36 AM.
Thanks ...
But do you have any new link for Jxta ...
Thanks anyway ... the other linkd are really helpfull.
Here's an online textbook for Java: http://math.hws.edu/javanotes/ . It includes everything from if statements to advanced GUIs and threading.
Bookmarks