Stata The Stata listserver
[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

st: Mata vs. C


From   James Muller <[email protected]>
To   [email protected]
Subject   st: Mata vs. C
Date   Thu, 18 Aug 2005 00:00:35 +1000

Just on plugins and Mata and such, Mata also has one major advantage over C. Compiling via Stata means that the source code can be practically distributed rather that the binary code, which means not only cross-platform stability, but security through transparency (not that everybody will read the code, but just because they can).

I've tossed up the idea of posting on statalist to query about volunteers to compile C code on different platforms, but decided not to for security reasons. The only binary code I trust myself to distribute to others is the code I compile myself. Even on the friendly statalist there may be the occasional subversive.

If StataCorp were feeling like they have (vastly) too much spare time, it would be cool to make some sort of a cleaner arrangement with compiling plugins. Through just skimming through the Mata manual I see particular areas where it seems they've taken the major C libraries and cut bits of them out, but oh how those lost functions can be useful. Indeed if a better C arrangement were available, Stata could be extended in such ways as, for example, allowing bits of useful GIS functionality, or making available Stata API's for different types of database server. I think people stay away from it because plugins in Stata are scary and platform dependent; a pity, because they can do things that Mata will never.

What would be perfect is if every Stata release came with C and FORTRAN compilers that are perfectly cross-platform... though of course reality prevents that.

Anyway, the more I think about Mata the more I like it.

James

*
* For searches and help try:
* http://www.stata.com/support/faqs/res/findit.html
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/




© Copyright 1996–2024 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index