Think Python
An anonymous reader writes "In a neverending effort to spread the word about free quality online programming books, here is a Python programming book. 'How to Think Like a Computer Scientist: Learning With Python', by Allen B. Downey, Chris Meyers, and Jeffrey Elkner is a copylefted work available in multiple formats at Green Tea Press: HTML , PDF, LaTeX. Compliments of the online books what's new page."
This books has been translated to other programming languages (like C++ and Java)... so if Python is not for (it should be) you can read those too.
At first it looked like you were talking about a new IDE for writing Python programs ;) Anyone remember Think Pascal?
Sounds like a good read for anyone who thinks that 'computer science' is 'installing Linux and setting up a web server'.
The most pure computer science is essentially mathematical at heart. I don't think current CS curriculums put enough emphasis on that basic tenet.
Thanks to Copylefted Online Books, I now can read the books before I buy.
On my bookshelf, seven of the books were bought after I read their online version.
I live in a third world country where there is no Towers bookstore, nor Borders, nor Barnes - there is NO WAY for you to know how good a book is without first buying the book - the bookstore here do NOT allow you to read the book !
The idea of Copylefted books really help me, and many others who are in the situation of buying books not knowing if the books are good or not.
Thanks again !
Muchas Gracias, Señor Edward Snowden !
Am I the only person who thought the title of the book was "How to Think Like a Computer Scientist: Learning With Monty Python"?
Man, it's early.
Another excellent free book for Python is Dive Into Python by Mark Pilgrim. It is available in HTML, PDF, Word 97, Windows Help, plain text, and XML formats.
This book has plenty of examples and pointers to further reading on each subject. It features good layout, use of colors, and typography which makes for easy reading and comprehension.
I don't think that's possible.
Are there any free Perl books out there like this one for Python?
I haven't done any Perl or Python before and I wanted to look at both before I pick one and use it primarily.
I only find two versions - Java and Python.
Where can I find the C++ version ?
Thanks in advance !
Muchas Gracias, Señor Edward Snowden !
I found this a great book for when you are learning Python as a second or third language
I learnt python in two nights from it because as we all know, once you have the basics of CS in your head the language you use is just an implementation detail.
Feel that power? That's mah MOUSING FINGER
Feynman once said during an interview that some 'sciences' were really pseudosciences, in that they have never made any laws, eg social science, is computer science a real science with laws, or a pseudoscience?, if its a science, does anyone know of any of these laws?
I'm a rabbit startled by the headlights of life
Practical PostgreSQL
Using Samba
Personally I thought both were very well written, the samba book has helped me greatly.
Kyle
http://www.unlogikal.net/
This book doesn't strike me as a book on how to think like a Computer Scientist, except insofar as Computer Scientists generally make lousy Software Engineers. There are no descriptions of the advantages of object oriented programming, discussions of theoretical topics, and in general very little encouragement to view programming as a science. Basically, this appears to be just a book on the Python language, written for someone who has never programmed before. That's a fine thing, don't get me wrong. My brief look even makes me think it could be an effective example of such a book. At the very least, I think it's hyped wrong.
However, from a software engineering point of view, I find it damning that the book forgoes any explanation of the practice of, or motivation for, writing maintainable code. I consider that unforgivable in a beginning programming book. You absolutely have to impress on newbies early the importance of documentation, sensible structure, logical variable naming, good class hierarchy, etc.
I consider this especially true for Python, which is an interpreted non-declarative language (making maintainabilty all that more important). Python is, conversely, also especially well designed as a platform where such concepts could be taught. It largely overcomes the occasional weaknesses of its design philosophy by consciously including language features such as built in support for docstrings, well crafted namespaces, modules as first-class citizens, etc.
Yet, these language features are barely given a nod in this book.
It's books for existing programmers that can afford to skimp on these areas.
That's because it's not about Software Engineering, you fool. It's about Computer Science.
Software Engineering is essentially the application of CS to real world projects - and the current fashions in SE should be a separate course entirely. It's more about psychology and HR than it is about Computer Science.
I agree that the term Informatics is more appropriate. In my country (Spain), it is called "Informática".
--
ACid
From the opening section of each book: 1.1 What is a programming language?
Java is an example of a high-level language; other high-level languages you might have heard of are Pascal, C, C++ and FORTRAN.
Python is an example of a high-level language; other high-level languages you might have heard of are C, C++, Perl, and Java
Both C++ and Pascal are high-level languages; other high-level languages you might have heard of are Java, C and FORTRAN
C, a language without file i/o, without bound checking, and with direct access to ports is high-level? If you say the libraries chucked into a C load makes it so... Then Assemebler is a high-level language, too.
Last I heard was Binary Code=0, Assem=1, C=1.5, Fortran, Cobol, & Basic were about 3, ADA, C++=5.
Perl was not even in the picture, because it was scripting language
Also high-level languages does not equal easier code or does not make it faster code... It does makes more strict to code, more following the limited ways the authors of the langauge thought you should think (like the use of GOTOs :-). Low-level languages allow the coder the freedom to get the job done and not comprise the functions to limits of the authors, and it requies the coders to truely think like computer sceincist. Look at ADA for what is wrong with really high-level langauge. See how limiting the langauge can be made. And how much time is need to see up the coding effort.
PS: maybe these are great books, but I stopped reading there, because how can it teach to "Think like Computer Sceincist" when it does not know about the basics of computer sceince?
Does anyone know if the author of the book gets paid by Green Tea for donating or "copylefting" the book?
I'm working on the theory of collecting tax deductions for copylefted art, and this contribution is a great example because it closely resembles historically donated items. If the author donates the artwork to the right organization - he could by my reading of the IRS be paid in tax deductions.
Does anyone know of cases in Open Source / Copyleft where tax deduction are being used to help cover expenses?
I'm sure that the competition - i.e. Microsoft uses every tax deduction in the book. Are Open Source contributers playing by the same rules - or are we handicapping ourselves by ignoring the tax benefits of donation?
If anyone can provide examples of copylefted donations and how you documented it for tax purposes - I'm interested.
I believe there are Billions of dollars in potential government funding just waiting to be collected by Open Source artists. Lets go get it!
AIK
This isn't exactly what you're looking for, but have you checked out The Art of Unix Programming by ESR? Only the first four chapters are written (plus the preface and TOC), but it looks like it covers a lot of what you're thinking of.
Sig:Why copyright isn't a fundamental human right
Every time I start to "Think Python", it's something huge like a Burmese. Then Steve Erwin jumps in and starts wrestling with it while shouting something about what a beauty she is. It's very distracting and I just can't code with all that going on.
The problem with that book is it is based on the (flawed) assumption that because it's Unix, it's automatically better than any other approach.
While Python is my favourite language, I think it's rather silly to teach Computer Science and especially basic algorithmics with a language that doesn't have pointers.
At low level, pointers are everything, and low level is what you want to teach when you're teaching basic data structures and algorithms. There's simply no point in demonstrating list implementation with an interpreted language that has very efficient native lists, dictionaries, etc. C/C++ or Pascal are much better for that; with them you can teach real implementations, not toy ones.
On the other hand, Python might be ideal for teaching advanced algorithms such as sorting and string algorithms, as those are more "high-level" problems and low-level pointer-messing is no longer needed nor desired. Python has very beautiful string and list operations, which make such algorithm implementations cleaner.
Also, Python might be ok for the very first Basics of Programming course with respect to pointers, as they don't really teach any algorithmics there. However, the weak typing (very late binding) would be a problem in this case. Beginners will have enough trouble understanding the language without the need to handle implicit types. I'd very much suggest a strongly typed object-oriented language such as C++, Java, or Eiffel, where the types are always explicit. For an algorithms course this isn't so much a problem.
For some classes, such as AI, there's simply no winner for Prolog, and perhaps Lisp, but many Python features such as easy string manipulation and other middle-level data structures make it temptating for many subjects such as Automata and Formal Languages. It would be interesting to have a good Python interface to a Prolog interpreter; one that is well integrated with the syntactic philosophy of Python.
After having a quick look at bits I'm qualified to assess (I'm not a Python programmer, but do have plenty of background in CS, C++ and other related topics) I'm not convinced at all that I'd want to learn from this book.
Much of the preface by Jeff Elkner basically compared C++ to Python and has a go at the deficiencies of C++. It would be more convincing if he knew the return type of main(), the name of the standard header <iostream> and what a statement was. Three fundamental mistakes just in discussing "Hello, world!" is not a good sign for the author's level of knowledge and understanding.
Trying to put aside my bias, as I like C++ as a practical language, I examined the appendix on creating a UDT for fractions to form a second opinion. Here, they do the obvious simple things to create a rational number class, and nowhere do they make the basic sanity check that your denominator is not zero. Surely one of the basic tenets of OO theory is that you always maintain your class' invariant properly? Their class may be a fine demonstration of Python's OO features -- I don't know, I'm not familiar enough with them to judge -- but it's a lousy demonstration of either good CS or good OO.
From these observations, I have to ask whether I'd actually want to learn Python from this book. If I do, how will I ever have any faith that what I've learned is correct and in good style?
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
I've written a review of this book on The Assayer. The book is self-published (the authors run Green Tea Press), and one of the things people don't realize about self-publishing is how hard it is to attract reviews. (Actually, it's hard in ordinary publishing, and even harder in self-publishing.) Without reviews, you don't get much credibility. So if there's a free book in The Assayer's database that you've read, please write a review!
Find free books.
I like electronic books, but when something's good and long, I prefer reading them in printed form. Probably due to my failing eyesight.
At any rate, I went to Green Tea Publishing's homepage and that's got to take the cake for the most bare website i've seen. They make mention of printing copies for a reasonable price, but they don't say how one can make that request nor any contact info.
Would someone tell me how I can get printed versions of the book?
My first impression of your review was quite favorable. You started off well with an engaging style.
Unfortunately, you spent far too much time writing about the merits of Lunix and Open Source than reviewing the book. Using the review text as a platform for your views on the GPL was inappropriate and didn't tell me what I wanted to know about - the book.
The few paragraphs on the content of the books were sadly lacking and offered little insight into the use of the book for learning about CS or Python.
I'd say your review scores 1 out of 5.
I would rather focus on the idea of getting Federal matching funds for Open Source than proving I'm a worthy soul. In on sense you're right. Its a close friend of mine, the author of OpenVPN who is the hard core Open Source contributor. (see SourceForge) but Since you ask, my personal contribution is a flight control system / collision avoidance based on the simplistic Ant Colony Algorithm. This is a system which would cost about $150 per plane which controls air traffic without infrastructure. It would have avoided many of the collisions in the last two years. Especially the recent tragedy involving a swiss air controller and a russian plane. AIK
So you might want to look at reviews at Amazon and the like.
Of course, Amazon is a business and the reviews are probably not accurate so they can sell more books, but they should put you in the right ballpark. You can also preview some pages there.
Try Haskell instead. Or, perhaps, SML/O'CAML.
What if Green Leaf were a non-profit org. Then they could "receive" the copylefted manuscript as a donated "work of art" This way the artists at least gets a decent tax break instead of being played the fool by the tragedy of the commons.
AIK
Quite to the contrary, I believe it is you who does not understand my observations.
Given a countably infinite amount of time, one can set a Turing machine running on an input, and then simply observe whether it halts or not. Heck, you can set it running on a countably infinite number of words, and see if it halts on each one. In other words, you can solve the halting problem.
Likewise, you can get super-Turing power if you can compute with real numbers (not floating-point approximations, but the true continuum). But again, due to the physics of this world, we can't maintain analog values with an infinite degree of precision (due to thermal noise, etc.) This has even been published in the journal Science by Siegelman, et. al. a few years ago.
In any case, you've made it clear in your post that you are unable to think these things through for yourself. You simply read Feynman, and accept it as gospel truth, because it came from the mouth of a great prophet.
What a moron.
Do you work at Microsoft?
According to the IRS You can deduct Objects of Art and Collection, including electronic media such as Records. While archaic - art certainly includes books about softwae, and even software itself.
What you cannot deduct is The Value of Time and Services
In other words you cannot list the value of your work in terms of the hours spent, but you can list the value as determined by an independant appraiser.
AIK
"How to think like a computer scientist" is a bit much for this book. It's an introduction to Python programming, and at best, a mediocre one. It's aimed at the overpopulated "first book on programming" market. The book reads like a BASIC programming manual of 25 years ago.
Good job! Thats the most clever goatse.cs link I've seen in ages.
That's a crock, or is it croc? If you're thinking Burmese, you are thinking Python.
What's on the telly?
There's a penguin on the telly!
I don't mean what's on top of the television set, I mean what programs is on?
Oh, well I'll switch it on them (dum de dum).
What's a penguin doing on top of the television set?
I don't know. If it laid an egg, it would roll off.
We'll have to watch for that.
BURMA!
Why did you shout Burma?
Sorry, I panicked.
"This is the BBC. And now the penguin on top of your television will explode."
(BOOM!)
Oh, intercourse the Penguin (Tux would like that).
C is a system level language, and is still used widely, especially in OS and VM coding. The whole point is for C to remain stable. I certainly don't see Python being used in these applications, and it doesn't deserve to be used at the system level either.. Python is nothing but a glorified scripting language.
mogorific carpentry experiments
-Kevin
You have failed to understand the point of Computer Science (pun intended). Python is a terrific language for teaching CS because it has the basics of discrete structures: lists, maps (in Python, called dictionaries), tuples, and atomic data types such as strings, ints, and reals. That's all you need.
There's really nothing you can't do once you have lists and maps. Don't object that you can't have O(1) access-time arrays -- you can do that with a map.
I challenge you to describe any algorithm at all that can't be implemented without pointers. If you think you need pointers, you just aren't thinking like a computer scientist.
For some classes, such as AI, there's simply no winner for Prolog, and perhaps Lisp
In general, you are absolutely correct. Of course, this is opinionated and others may disagree. But remember, you can use any Turing-complete language to simulate any other Turing-complete language (that's the entire definition of Turing-complete). Which means I can write a C interpretter in Prolog if I want (and I'm feeling particularly masochistic), and therefore I can simulate pointers using Prolog.
Oh, but you cry "That can't possibly be efficient!" Right again. But you've again missed the point of Computer Science. CS is about efficient algorithms, not efficient programs. That's something we leave to the software engineers and other "implementors." Us CS freaks think about what can be done, we don't actually do it ;-)
from the because-thinking-perl-hurts-too-much dept.
Thinking (and writing) Perl doesn't hurt at all. It's reading Perl that hurts. Write Once Read Never.
A beginner should try the Python Tutorial at python.org or the O'Reilly book Learning Python by Lutz and Ascher. Both are better intro, and the Python Tutorial can get you programming in a day, especially if you have programming experience. Another online book available from the python site that is also very helpful is Dive Into Python by Pilgrim.
Also, I wouldn't brand this book "how to think like a compuyer scientist" because it glosses over too many basic concepts. A course in C or C++ is IMO more in line with beginning to think like a computer scentist. Only after mastering the basic concepts presented in one of these languages (or their equivalent) can you even really begin to appreciate the elegance of a language like python.
You had better go talk to a tax attorney before you land yourself in jail for evasion.
That said, I don't know if I would teach a begining computer science course in python. At my University, our general intro to CSE involves a two class series teaching generic basic theory wrapped around a programming language. We used to teach them with C and C++ but just recently moved to Java. I have been a TA for these classes before. Based on my experiences, I think there are both pluses and minuses to the idea of teaching these classes in python.
Benefits:
- Python is extremely easy to learn, as mentioned before. Much easier than C, C++, or Java.
- Python works really well with Tk, which would make it easy to build out skeleton code (multiplatform skel code at that) for the students using windowing and graphics. Students are 100% happier if they can see what they're working on reflected graphically. Makes it more fun to show off. This is why our projects usually include basic games.
- BASIC Python is truly, completely, multiplatform, working identically on Mac, Win*, and *nix. Some specialized functions in modules don't support all platforms, but nothing that would be important to a begining student. Support issues would be MUCH simpler than C or C++. God, we had huge headaches trying to support MSVC, CodeWarrior, CodeWright, Borland, etc. . .
- There is a great installer script available that will build python modules into either standalone exe's or distributable directories. (Available here if you've never seen this before)
But, there are also some downsides that would have to be weighed. These are:Looking away from basic intro classes, python is great to know. I did a lot of AI code sketches in python, and have used it to slap together simple programs at work. However, I would consider it a tool to be learned after the basics have been beat in. If I had learned python first, it would be a lot harder to force me to do everything in C later.
-s
- - - - - - - -
Don't worry, being eaten by a crocodile is just like going to sleep in a giant blender.
www.DiveIntoPython.org: It is one of the best python books I have read. In fact I go back to it every now and then just for a refresher. J
That's a very negative apporach. I doubt we can make very much progress if every new idea receives the hyper conservative "do that and you'll go to Jail" What is jail anyway? Bruce Perens was ready to go for the sake of the DMCA. Jail has been an important stepping block for many new ideas.
That said - I'm not suggesting anyone go to jail. I'm merely asking if the author considered having his art appraised, and if he received a tax deduction as I believ he can according to the IRS.
What after all is so bloody dangerous about the idea of people create great works of value, donating them to the public, and getting some "public compensation"?
You know that Bill Gates takes every tax break in the book - why should Open Source programmers take any less?
AIK
If you actually look at the book in question, you'll see that the original poster was correct: it's not about computer science at all. It's a Python programming book with a marketing angle relating it to computer science.
If you really want a book which teaches "How to Think Like a Computer Scientist", try SICP. For a good summary of the book, see this comment from the recent "Best Computer Books" article.
While not CopyLefted, Bruce Eckel has online a 0.x version of Thinking in Python, which is more pattern oriented.
When it comes to taxes, the definition of "bloody dangerous" is set by the tax department, and pretty much equates to "anything that reduces tax revenues".
I'm not a tax person, but I think Sheldon may have gotten it right in his original answer to you. Imagine if, instead of donating one of your works, you sold it instead, and then turned around and donated that money. It's a net wash to you - you got income, but you donated it, so you don't pay tax on that income.
In your scenario, you're conveniently leaving out the bit where you receive income for the work. When you donate it, you're taking a tax deduction based on income you never received. A fairly basic point about taxes is that deductions are almost always based on your income, they're not free gifts of cash from the government.
So, it seems to me that any tax department in the world is likely to take a dim view of your idea, since it essentially involves the tax department paying you, rather than you paying them and them giving you deductions. Once again, the tax department is not in the business of giving out cash grants, whether for public works or otherwise.
Your Bill Gates example doesn't really wash for this same reason: he takes deductions from the taxes that he's paying, based on his income. You want to take deductions based on no income. Allowing you to do that would be tantamount to allowing you to print your own dollar bills.
At low level, pointers are everything, and low level is what you want to teach when you're teaching basic data structures and algorithms.
Conceptually and from a computer science perspective, the object references present in languages like Python, Java etc. are equivalent to pointers in all the ways that matter for representation of data structures and algorithms. In the academic community and elsewhere, it's generally considered beneficial to teach such things without reference to the machine pointers which you're referring to, since machine pointers carry a lot of baggage that's unrelated to the abstractions involved in data structures and algorithms.
There's simply no point in demonstrating list implementation with an interpreted language that has very efficient native lists, dictionaries, etc.
To refute this, let me offer a tutorial: A Gentle Introduction to ML. If you work through this tutorial, you'll very soon begin implementing functions in the ML language for basic list operations and the like - functions that already exist in the language. And guess what: the implementations that the beginner typically comes up with in that tutorial are very close to the actual implementations that ML uses - the tutorial gives some examples of actual implementations for comparison.
This high-level operation doesn't even cost much -languages in the ML family, including OCaml, regularly are top performers - see e.g. Doug Bagley's language shootout. They can perform on par with languages like C because their type systems allow sophisticated compile-time optimizations to be performed, and their high-level abstraction features are supported by optimizations such as tail recursion.
C/C++ or Pascal are much better for that; with them you can teach real implementations, not toy ones.
If you believe that C/C++ and Pascal are good languages for teaching computer science, you don't know much about modern computer science. All three of those languages have very weak type systems and lack basic features that allow the construction of high-level abstractions.
Pascal is all but a dead language in the CS community nowadays. The primary use for C is as a decent portable assembler. Learning C has very little to do with computer science, and absolutely nothing to do with teaching computer science concepts.
class ComputerScientist : public Geek {
//... stuff deleted
public:
void ComputerScientist::think() {
if (this->getGender() == Gender::MALE) {
setAbility(Socialization,Ability::BAD);
setBias(Linux,Bias::GOOD);
setPriority(Hygene,Priority::LOW);
} else {
exit(1);
}
}
};
IN TEH FUCHAR, LITERSY WLIL EB OPSHANAL!!!!!111
Well no actually, This only works where you have a day job. But let's say the Author of the Python book in question teaches all day and writes this book in his spare. He donates the art to charity and gets a tax deduction from what he paid in income tax withholding.
In this case the tax department isn't paying you anything - they are simply accepting - on behalf of the public - your contribution in liu of some of the taxes you would otherwise owe on your regular income.
Give and you shall receive.
AIK
The problem as I see it with trying to "Create" new government funding for Open Source is that commercial software is one of the few viable industries in this country right now. It pays a ton of taxes and buys a gaggle of politicians.
The advantage of "discovering" a source of funding is that it is already established, and will be decided by the Supreme Court which is far less susceptable to tax concerns and donations.
If you were to ask the Supreme court is Software is art within the meaning of the IRS statutes regarding Donations - I think they would be hard pressed to say it is not - as it would have to "be" something else within the context of the archaic terms used at the time. It's probably not going to end up as boot rubber or aged cheese. It has to be "Something" and there aren't very many choices. The IRS forbids the donation of very few things really. And mostly requires the appraisal of an expert for valuation. Legally - I think its a slam dunk.
AIK
By using Perl instead of better languages, you're demonstrating that you're not a computer scientist, and that you are so ignorant that you haven't learned any other languages that are much better, more efficient to use, and vastly easier to maintain. Perl advocates are close minded, short sighted, truly stupid for spreading shuch a debilitating disease, and are only interested in preserving their own jobs.
Of course Perl programmers insist that they can do all kinds of wonderful things in Perl -- but that's not because they're using Perl, it's because they're programming a computer. You can do ALL of those wonderful things in any other languages, and many languages are much easier to use and maintain. There's nothing special about Perl. Perl is absolutely NOT more powerful than any other language. If you were a computer scientist, you would know that. Anyone evangelizing Perl or bragging how good they are, is just perceived as a loud mouthed fool by other people who understand computer science.
So here is the Reader's Digest version of "Perl for Computer Scientists":
"What the fuck were you thinking???!??! Stop using Perl and learn some other language, you idiot!"
The evangellical Perl community is just as bad and unethical as the Cigarette Industry.
Larry Wall needs to stop polluting the linguistic environment, and go back to school and take CS101.
If you already know Perl, then once you learn Pythin you will regret every minute you ever wasted on Perl, and never want to look at another line of that disgusting language again.
Perl is such a badly designed language, that's tragically wasteful of your time and effort, and pointlessly complex for no good reason other than ensuring the job security of unskilled laborers who should be working at McDonalds anyway.
of all sciences. Believe it or not, CS means nothing unless you know some other science (but it can also glue other things, like information management, which is not a science but actual data).
unfinished: (adj.)
Hmmm. Why weren't these scripts written in Python?
Linux at home
You can view certain books by O'Reilly on their Open Book page, located here at http://oreilly.com/openbook/
Logik
Kyle
http://www.unlogikal.net/
Perhaps system level languages, "especially in OS and VM coding" are not relevant to Computer Scientists? Your point is certainly valid for learning while getting an advanced degree, but you might as well say that we should not abandon optics while studying astrophysics- true, but it misses the point. In fact "a Glorified Scripting Language" is exactly what is needed for Comp Sci, and any Pyhton enthusiast will glady accept the label, "scripting language!"
Think C I remember from Symantec, a programming platform for 68k macs. Boy am I getting old!
How about someone coming up with Turbo Python!
I wlil haev to get soem STLIA BERFFOT CONTSSEA SHADWO rite awaiy!!!!@!!@
Ooo! I _knew_ I was gonna get flamed for
choosing a pretentious title. Really, it's
mostly meant to be silly (not a marketing
angle).
The book is (just) an introduction to computer
science that focuses on the basics of programming.
It covers the material I've been able to get
college students to understand in one semester,
which means yes to functional and data abstraction
and no to modules as first class citizens.
It's also aimed at people with no programming
experience at all, so I tried to explain the
basics slowly and LOUDLY.
Thanks to all the slashdotters that have commented
on the book!
Cheers,
Allen Downey
I don't know which is worse...
well i'm not sure about the HTML version, but have you any light to shed on the fact that the PDF books (at least the c++ and python books) are not legible? at least on windows? (i'm here at work -- using win 2k, adobe acrobat 5.0).
;)
with the c++ one i get a message saying the document's empty, with the python one i can't get past page 1.
i thought acrobat was supposed to be a platform-independent format?
nalfy
-- Despair is an operating system that ANY human being can run, sort of a psychological JAVA --
Many thanks !
Muchas Gracias, Señor Edward Snowden !
I beg to differ. The two languages are syntactically very different in their approaches to class creation. Have you ever tried object-oriented programming in Perl? I have. It's cumbersome if you've ever programmed in any number of other languages. Of course OOP isn't always appropriate, like if you're trying to remove every fifth line from a log file. In those cases Perl will work just fine. But so will Python and Ruby. Regular expressions exist outside of the Perl world, contrary to popular belief. Perl and Python also handle built in data structures quite differently. Basically they work as you'd expect them to in Python, while in Perl you'll eventually run into some idiosyncracies. Try putting a list inside of a list in Perl and you'll see what I mean. It's easy to nest the structures, but extracting the elements is another matter. Sora
I know this is way too late, but this page has some great links to Python Resources.
Most people would die sooner than think; in fact, they do.