On Wed, 26 Jan 2005 19:03:41 +0200 Shlomi Fish <[EMAIL PROTECTED]> wrote:
> On Wednesday 26 January 2005 18:04, Micha Feigin wrote: > > On Wed, 26 Jan 2005 10:52:14 +0200 > > > > [EMAIL PROTECTED] (Yedidyah Bar-David) wrote: > > > On Wed, Jan 26, 2005 at 10:25:58AM +0200, Ira Abramov wrote: > > > > Quoting Tzafrir Cohen, from the post of Wed, 26 Jan: > > > > > On Tue, Jan 25, 2005 at 04:28:12PM +0200, Micha Feigin wrote: > > > > > > first also makes people use c++ as a functional language instead of > > > > > > as > > > > an OO > > > > > > > > language. > > > > > > > > > > Just to get the terminology right: I figure you meant "procedural". > > > > > > > > every 9-12 months, this argument about the best first language comes > > > > up. half of the people arguing with opinions they won't gudge from and > > > > half trying to throw in half-knowledgable remarks to show they too > > > > exist, and never does anyone agree. > > > > > > > > so allow me to add to the tradition! Python, gentlemen! it can be OO or > > > > Procedural (and even pure functional I was once told). the syntax is > > > > clean, very little syntactic sugar, no odd compilersyntax for a newbie > > > > to learn, richer than Java, clearer than C and C++, and more widely > > > > used in the practical world than Pascal or LISP. > > > > > > And, may I add, has a nice, free book, called "Learning with Python". > > > Maybe not as deep as "Structure and Interpretation ...", but not bad > > > either. > > > > Notice that "Structure and Interpretation ..." is not a lisp book, it used > > lisp as a tool. Will have to look at learning python though, always > > wondered if its going to be useful enough for me to spend the time > > learning, although I think that for my work I am stuck with matlab and c > > (really don't feel like learning fortran at this point ;-) > > > > Well, Perl, Python and friends can be used for many tasks for which neiter > Matlab nor C would be very suitable. Things like text processing and > generation, GUI programming, system administration, database handling, > networking, etc. > > Of course, the combination of Matlab and C would be more suitable for > different tasks. I used Matlab extensively at the Technion, and I was very > impressed by the ease of programming certain tasks by translating them to > tensors' manipulation. Of course, Matlab as a language (from the CS > point-of-view) sucks pretty badly and it also has a very limited debugger. > > There is a Perl extension called PDL (= Perl Data Language), which aims to > supply Perl with the same functionality as Matlab and similar programs. > (http://pdl.perl.org/). I suppose there are similar extensions for other > agile languages. > Worked a bit with PDL and it was nice, IIRC there is a similar extension to python, but I have no experience with it. There is scilab which is a nice free matlab like environment. I don't have much experience with it wither but it seems better then octave. There are also numerous libraries for c (a lot of them written in fortran BTW) which allow you to do almost anything. I'm somewhat stuck with matlab, with occasional excursions to c though since I need to collaborate with others. > BTW, I heard from some people who wrote programs in Matlab for their projects > and home-assignments, that took hours on end to run. My programs never took a Depends on how they wrote them and how heavy the computation is. I have well written programs that can run for several hours but considering the program built a 50,000x50,000 matrix and then computed the first 3000 eigenvalues I think three hours is a short time. > lot of time to run, but then again, I knew how to translate them into > efficient Matrix manipulations. Is it normal for some Matlab program to take > a lot of time to run, even if it's well-written, or does this indicate Matlab > illiteracy? > If you write your code to use matrix notation it will run rather fast. Matlab can be rediculosly slow with loops. I tried writing the same code using matrix notation and loops and it turned out to be a difference of a few seconds compared to over an hour. BTW matlab also has a profiler and you can alway use the internal compiler to make faster running executables. > (Matlab is interpreted by default, but its matrix operations and many > built-in-functions are hard-coded.) > You can also write extenssions in c and java. > Regards, > > Shlomi Fish > > --------------------------------------------------------------------- > Shlomi Fish [EMAIL PROTECTED] > Homepage: http://www.shlomifish.org/ > > Knuth is not God! It took him two days to build the Roman Empire. > > ================================================================= > To unsubscribe, send mail to [EMAIL PROTECTED] with > the word "unsubscribe" in the message body, e.g., run the command > echo unsubscribe | mail [EMAIL PROTECTED] > > > +++++++++++++++++++++++++++++++++++++++++++ > This Mail Was Scanned By Mail-seCure System > at the Tel-Aviv University CC. > ================================================================= To unsubscribe, send mail to [EMAIL PROTECTED] with the word "unsubscribe" in the message body, e.g., run the command echo unsubscribe | mail [EMAIL PROTECTED]
