[mythtv-users] MythTV vs. Freevo

Jason Tackaberry tack at auc.ca
Sat Apr 12 21:32:40 UTC 2003


On Sat, 2003-04-12 at 11:08, Joseph A. Caputo wrote:
> This is starting to get off-topic, but...  IMHO C++ is not any more or less 
> "high-level" than Perl, Python, etc.  The main difference is that it is a 
> compiled language rather than a scripted/interpreted language, and as such 

I think you might be confused about what "high level" means.

Consider Perl references versus C/C++ pointers.  In C, you pass pointers
around, and you always have the possibility of having invalid pointers. 
Try writing to an invalid pointer and the operating system will spank
you in various ways (segfault, GPF, locking up, depending in your
platform).  With Perl or Python, you pass around references, and you
always know they're going to be valid, and garbage collection happens
for you when all reference to that object go away.

It's difficult to argue that a language with late bindings,
introspection, garbage collection, etc. isn't higher level than a
language like C++ where the programmer must explicitly deal with these
issues.

> introduces extra learning dependencies, such as using compilers &
> linkers, writing makefiles, and explicit memory management.  However,
> the features of the language itself (syntactically) are not any less
> "high-level".

I'll grant you that compiled vs. interpreted and project management
approaches (e.g. Makefiles) don't differentiate high and low level
languages.  (For example, Python can be compiled into bytecode.)  But
certainly having to deal with memory management or worry about
architecture issues (endianness, for example) is precisely (by
definition) what makes a language lower level than a language that does
not have to worry about these issues.

Expressiveness is also another indicator, but to a lesser extent. 
Compare using regular expressions in Perl with using libpcre from C. 
Perl regular expressions are not merely syntactic sugar here.  Regexp in
Perl adds significant expressive power to the language.  This is what
differentiates it from lower level languages like C and C++ which lack
the constructs for this level of expressiveness.

Jason.

-- 
Jason Tackaberry  ::  tack at auc.ca  :: 705-949-2301 x330 
Academic Computing Support Specialist
Information Technology Services
Algoma University College  ::  www.auc.ca




More information about the mythtv-users mailing list