On Wednesday 26 January 2005 21:18, Micha Feigin wrote: > 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.
I think it's called SciPy. I think it's not as complete as PDL, which is itself not as complete as Matlab. > 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. Yes. Scilab, however, is incompatible with Matlab in its syntax (some things there are more powerful, or otherwise different). There's a program that converts Matlab code to Scilab one, but not the other way around. > > There are also numerous libraries for c (a lot of them written in fortran > BTW) which allow you to do almost anything. > Hmmm.. yes. > I'm somewhat stuck with matlab, with occasional excursions to c though > since I need to collaborate with others. > OK. > > 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. > Right. I don't suppose the same program in C would have been much faster. > > 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. :-) Nice. > > BTW matlab also has a profiler and you can alway use the internal compiler > to make faster running executables. OK. > > > (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. > Right. Of course, most students don't have the knowledge and/or time constraints to do this. 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]