Talk:Computer Programming/Archive1

namespaces
I have moved things back into the proper namespace, articles on programming should be in the Programming: namespace (IMO the new naming scheme wasn't very workable and was a bit cumbersome in some times). If you wish to update the older articles, update the articles.

Hope I'm not treading on many feet here. I like the new systematic handling of this textbook, it just needs to be named better. Dysprosia 08:40, 20 Aug 2003 (UTC)

Basic pascal and ... are functional languages? They are PROCEDURAL languages. Functional languages are very different languages e..g Haskell.

Shouldn't these things be in seperate text books? I don't see why they all should be considered one book. Do you ever go to the bookstore and buy a book that tells you how to program 20 languages? LittleDan 19:43, 8 Oct 2003 (UTC)
 * I agree. Noldoaran 17:00, 8 Dec 2003 (UTC)


 * Is there one language that people could agree on to write one textbook in? Once we have one textbook, most of it can likely be ported to other languages.  Another option is to write one textbook completely language neutral (maybe pseudo-code) and have separate textbooks that teach languages specifically without the accompanying concepts (presumably with the concept book as a prerequisite).  Any thoughts?  Xygorn 5:49, 9 Dec 2003 (UTC)
 * Nope, doesn't work like that. Each language has its own nuances and particulars that need to be taken into consideration - take C for example. In order to teach people how to write good C, you have to instruct them as to what the Standard says on things, about bounds checking, and all that lovely C-jazz, which you don't need to in other languages. Other languages may have their own special specifics. Dysprosia 06:03, 9 Dec 2003 (UTC)

I thought that Computer programming is like the gateway page to all the Programming: languages? Each language can be considered to be in its own volume? I don't know, just my 2c Dysprosia 09:36, 23 Oct 2003 (UTC)

The way Computer programming is positioned on the main page, I interperted it to be a shelf of it's own with the various texts on languages therin. Though Computer programming does need to have it's own book however for the programming patterns that are not language dependent, like looping in general or how to build a recursive function/method to keep all of the book from having to be Language101. As it stands, I see Computer programming as a very good introduction page. Dbroadwell 03:21, 22 Dec 2003 (UTC)

Should beginners care about speed?
I'm going to remove a lot of discussion on speed differences in languages, which I think is largely irrelevant these days, especially for beginners in programming.

Even if you don't agree about speed of execution, at least you would agree about speed of compiling right? -- Kowey 13:15, 20 Dec 2003 (UTC)


 * Beginners, no. Compilation speed, yes. But what languages are that slow to be noticeable? Dysprosia 13:39, 20 Dec 2003 (UTC)

I think there should at least be a mention of Forth, though I don't know what category it belongs in.

To do
The Abstraction Leaks sub paragraph needs to be filled in. Kowey 16:49, 22 Nov 2003 (UTC)

I have changed the reference about Visual Basic as being easily learned to read simply as Basic because. I have also added a paragraph about availability and suitability of a language choice, and the need to learn to read legacy source code so it can be maintained or updated.
 * Visual Basic is NOT an easily learned language and was never designed as a teaching language. Microsoft seem to have developed it as a common automation technique for various Microsoft Office applications and it has been so useful or necessary that a lot of people now use it as a programming language.
 * Basic was originally developed as a teaching language.

Feel free to adjust/reverse if any of this is not correct 210.86.34.179 07:26, 7 Jan 2004 (UTC)


 * If that's the case, we might as well just get rid of Basic altogether (not an idelogical statement) because nobody actually teaches with it. VB is easy not because of the language but because of the visual GUI editor.  -- Kowey 09:23, 9 Jan 2004 (UTC)

BTW: Has anyone heard about Structured Programming - which is a language independent technique and can be done in any language the programmer might choose, including English. Rather than launching straight into a discussion about what language to choose, one could discuss the benefits of structuring and planning a programming task so that it can be organised into modules and sections before coding commences. The use of Structured Programming techniques can do as much for the speed of a programming application as the choice of language as they create efficient source code. 210.86.34.179 07:26, 7 Jan 2004 (UTC)


 * Of course. Wish there were more people capable of doing it. Wish I had time to write a book about it. But doing it right takes time and effort; I'm not sure if anybody here has that kind of time to spend. --BenTels 06:05, 25 Jan 2004 (PST)

I think the term Scripting has been abused. Scripting languages are used to script behaviours in executables. Lua and JavaScript are used exclusively for scripting, hence they would be Scripting Languages, however Python and Perl are only rarely used for embedding in other executables, so I wouldn't call them Scripting Languages. Interpreted would be a better name.


 * Lisp and perl are not interpreted, they are compiled just in time. CommonLisp runs as fast as C. The proper classification should include static and dynamic; where dynamic languages pushes as much choices to run-time and static languages try to do everything in compile-time.


 * For ease of learning I would sugest dropping Basic (which will teach you very bad programming) and opt for PLT Scheme as a good place to start. A small compact language with a good book to learn if from.

Hi, I just stumbled above the wikibooks site. I think the programming book is, err.. a bit incomplete :-) I mean, it is only talking about coosing a programming language! What about
 * Algorithms
 * complexity
 * sorting
 * searching
 * Data structures
 * procedural programming
 * structured programming
 * object oriented programming
 * functional programming
 * how to design a program (bottom up, top down, ...)

I could contribute to any of these subjects from time to time. I think it is important to create a good structure of these topics first, and THEN start writing some content. Not important stuff should be left out, who cares about all the tiny bits of advantages/disadvantages one programming language has over another? Just choose one that allows a simple start, and get going. IMHO Ruby would be a very good choice. It's both extremely simple to learn and all of the above programming concepts are possible with it.

We should switch to a Computer Science namespace.
Nobody gets a degree in computer programming; programming is just one aspect of computer science. Theoretical courses like discrete math might never involve writing programs. I suggest we use a computer science namespace for stuff like data structures and algorithms, and programming should be a category inside computer science that describes the nuances of various different languages.--Waxmop 00:23, 20 Jul 2004 (UTC)


 * I think things are fine as they stand. It would be unfortunate to have Computer science:Programming:Some Language as the title for an article. There doesn't need to be any highly visible overlap - we can create new wikibooks under the Computer science namespace or whatever if need be. Dysprosia 08:41, 20 Jul 2004 (UTC)


 * Why not use the category system instead of namespaces? A book on algorithms could be part of the Category:Computer science category. – [[User:Mxn|Minh Nguyễn (talk, blog) ]] 16:17, 13 Aug 2004 (UTC)


 * I agree with Minh Nguyễn. The category system is much more appropriate than a hierarchial namespace. --DavidCary 03:36, 15 Aug 2004 (UTC)


 * I don't think a "computer science" namespace is a good idea. Also, few or none of the other books (i.e. I couldn't find any) do that. Instead, they create a namespace for each book, and each chapter is at Bookname:Chapter name. I think this is a good idea. Categories are good too. The current Programming namespace is not good. --Yath 21:16, 22 Sep 2004 (UTC)

Exercises and solutions
I have not seen a consistent handling of exercises and their solutions in Wikibooks so far (someone correct me if I've missed it). I think exercises can reasonably be embedded in a page with explanatory text, or collected on separate exercise pages. I prefer to do the former. I plan to have separate 'solutions' pages though, which will have the same name as the page with the exercises, and '-solutions' appended. See Programming:Python Creating Python programs. --Yath 21:52, 24 Sep 2004 (UTC)

Setting the PATH in Windows
Several of these books have places (e.g. Programming:Python Getting Python) where a guide to setting the PATH in Windows would be helpful. I do not have a Windows system to experiment on. It would be great if someone could write this up. --Yath 01:04, 25 Sep 2004 (UTC)

Too much stuff!
Ugh. This module has become rather unwieldy. How do you think we should trim it? -- Kowey 09:08, 4 Oct 2004 (UTC)

Modules? Comments? Versioning?
 * Sequence
 * Selection
 * Repetition
 * Input/Output