Perl to Python

merlyn on 2007-06-05T23:37:03

"Our team has been spearheading the transition from Perl to Python at the facility", says Grant. "There are three primary reasons for this. The creation of Python bindings to a C++ library is very easy and allows us to utilize core R&D libraries in the rest of the pipeline more quickly. The object-oriented nature of Python is very attractive given our new asset model and should allow us to make changes to that asset model much more easily in the future. And, Python is a first-class citizen in many of the third-party software applications that are used in our industry."
from DreamWorks Animation "Shrek the Third": Linux Feeds an Ogre


reverse ('python', 'perl')

Ron Savage on 2007-06-06T00:59:15

If that quotation is re-written reversing Perl and Python, is it just as true? If so, it does not give any meaningful reason for switching from Perl to Python...

Re:reverse ('python', 'perl')

sigzero on 2007-06-06T01:56:42

You could substitute a lot of languages in that equation.

where are they then?

gabor on 2007-06-06T02:39:40

But I don't seem to see reports on such moves to Perl...

Re:where are they then?

sigzero on 2007-06-06T03:38:11

I don't hear a lot of my friends talking about porn but I know the look at it. : )

perl is like porn?

gabor on 2007-06-06T05:21:38

Do you mean if you do something everyone must be doing it or that while using Perl we need to abuse people?

Re:perl is like porn?

sigzero on 2007-06-06T11:57:06

Neither...of course.

Re:reverse ('python', 'perl')

fireartist on 2007-06-06T08:17:43

The first 2 points could probably be reversed for python => perl, but the 3rd point, no.
Blender, Maya and SoftImage all support embedded python scripting, so python probably is a 'standard' in the 3D / film industry.

Re:reverse ('python', 'perl')

chromatic on 2007-06-06T22:02:37

As far as I know, there's no "probably" about it. Standardizing on Python (as much as you can standardize on a single language) makes a lot of sense here.

Technology X

Phred on 2007-06-06T02:32:14

'We chose to transition our application from Technology Y to Technology X primary for it's superior meta attribute handling. Technology X has been shown to be better and more effective in programming teams for the standard new model of development. Additionally, most blogs now tout the superior productivity of Technology X programmers, and Technology X application users. "Above all, Technology X provides us with end results that are on average upwards of 50% more shiny than Technology Y given the same programmer hours", said John Newspeak in an interview.'

Sometimes it feels good to be a third class citizen.

Re:Technology X

Phred on 2007-06-06T03:25:22

Sorry for my cynical comment here - had a bad coding day today and took the third class citizen thing personally :-)

Ignoring the zealotry...

Alias on 2007-06-06T03:00:05

... the one point I would concede is that because Python is easy to embed, it may well be easier to integrate into some of those weird film animation programs.

While I don't know specifics, if their choices came down the raw c, python and say javascript, I'd probably pick Python too.

Re:Ignoring the zealotry…

Aristotle on 2007-06-06T04:46:58

I’d go for Javascript…

Re:Ignoring the zealotry…

Alias on 2007-06-14T01:25:18

I wouldn't. JavaScript is ok for a light dusting of scripting over the top of something, but it makes for a hideous language to get any real work done in.

Re:Ignoring the zealotry…

Aristotle on 2007-06-14T04:45:23

Really? I was quite delighted to find out how nice it really is when I dove into it in anger a few years ago. To me it feels like a cross of Perl and “something” (which I guess I’d know was Self, if I knew Self), trying to hide behind a C/Java-ish syntax.

At least it has multiline/-statement closures…

Re:Ignoring the zealotry...

slanning on 2007-06-06T10:14:01

Like they said, accessing their C++ libraries is a lot easier in Python. While I'm not familiar with doing that in Python, I'm sure it can't suck as much as in Perl. Or is there some other reason that there are oftentimes no Perl bindings (or ancient and badly supported) for a particular C/C++ library, whereas there are for Python. Is it just that Python is more popular, or that Python as a language matches up better with C++, and nothing to do with the suckiness of XS?

I wonder myself why they don't use Lua. I thought that was a popular scripting language especially in game-programming, so I'm not sure why it wouldn't be for computer graphics in general.

Lua?

ferreira on 2007-06-06T10:54:50

Lua is minimalist. Even though it looks like a wonderful technology for embedded scripting engines, it doesn't have a history of many mature and varied libraries to get you up quickly. It seems like the people at game programming get over it because they really just need the scripting engine and all else is hand-rolled with the game. I don't know if that's the same for film industry.

job at DreamWorks

slanning on 2007-06-06T13:52:54

I remember seeing a Perl job posting at DreamWorks. I thought that would be a sweet job, if only I had computer animation experience. Now it looks like it would be more of a legacy-app maintenance job...