Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.544.160 Times

macstl 0.3.1

  Date Added: June 13, 2010  |  Visits: 539


Report Broken Link
Printer Friendly Version

Product Homepage
Download (72 downloads)

macstl is a C++ header library designed to bring the world of generic programming to the Macintosh, and deliver the surprising speed of SIMD in an intuitive cross-platform package. For example, a simple loop calculating a trigonometric function over an array can be speeded up 450 times. Generic programming is the art - some say, the black art - of making software components super-reusable and yet ultra-efficient. Our tool is the C++ template, and our result is code nearly as fast as hand-coded machine language. macstl was inspired by the premier generic library, the Standard Template Library (now part of the C++ Standard Library), but with a distinct Macintosh flavor. Many components let you use low-level Mac OS X functionality like SIMD acceleration and memory copy-on-write easily and intuitively. Although macstl started on the Mac, it now has a cross-platform look. Over 14,000 source lines of code compile cleanly on different C++ compilers. The SIMD classes work seamlessly on PowerPCs running Mac OS X and Pentiums running Windows XP. macstl provides these sets of classes: - valarray - numeric arrays highly optimized for SIMD architectures like Altivec and MMX/SSE/SSE2/SSE3. - vec - a portable, extensible SIMD toolkit with intuitive, fast functions; some of the trig functions cant be beat so far… - mach - allocator and partially specialized vector for fast OS-level copy-on-write. - core - adapting Core Foundation and Foundation classes for STL. - com - interface pointer and a fast, lightweight server implementation for Microsoft COM and Apple CFPlugIns. - mmapping - treating files as STL containers. - macstlizer - scripts to convert Altivec C source code into macstl C++ source code, headers to map Altivec to SSE intrinsics. - … and more. Whats New in This Release: - Fixed class scope vector typedefs, missing PowerPC intrinsics header, vector initializer syntax for FSF 3.4 [ILi*]. - Added complex conj function for vec and valarray [ILi*]. - Improved valarray expression performance: v1 [slice]. - Improved valarray code generation: CSE, inlining limits, literal terms, array term elements, statarray construction, compiling -faltivec without -maltivec for Apple gcc 4.0. - Added refarray class [PBa]. - Fixed buffer overflow in integral valarrays for SSE2; added optimizations for valarray expressions: v1 >> k and v1 << k for SSE2 [MSh]. - Fixed accumulate array dispatch, integer constant overflow, literal benchmark test for SSE2; fixed chunking iterator pessimization for gcc 3.3/4 [ILi, RBe]. - Added makefile for Linux x86 [ILi*]. - Added support for FSF gcc 3.4 on Cygwin 1.5. - Added differently typed valarray construct and assign from terms, valarrays of sized booleans, select with sized booleans [ILi]. - Fixed unix makefile directory. - Added macstlizer conversions: abs, abss, cmpeq, max, min. - Improved readme file.. A C++ header library to bring the world of generic programming to the Macintosh.

Requirements: No special requirements
Platforms: Linux
Keyword: C Header C++ Code Fast Header Libraries Library Macstl Os Programming Simd Valarray
Users rating: 0/10

License: Freeware Size: 174.08 KB
More Reviews or Write Review

Code Management Tools  -  C to C++ 1.4.0
C to C++ is a Python script that converts C code to C++ code. The main program is that performs successive stages for converting C to C++. A script, ctocpp gives it as parameter to the python interpreter with options you add. The...
102.4 KB  
Development Editors  -  Code::Blocks EDU Portable 1.1.1
Code::Blocks is an open source, free, configurable programming environment for C/C++. The Code::Blocks EDU-Portable interface, integrated help, tools and default compilation settings are all configured for ease of learning C and C++. The...
116 MB  
Libraries  -  Digital Mars C and C++ Compiler 8.5+
Digital Mars C/C++ Compiler contains - Win32 console versions of the tools; C and C++ compilers; Optlink Linker; Librarian. Standard and Win32 header files; Runtime linkable libraries; Does not come with a debugger, but works with the Symantec or...
2.87 MB  
Libraries  -  C to C++ Converter 1.4
C to C++ Converter is a script that translates C to C++ in several steps. 1) generating classes, 2) converting functions to methods, 3) replacing calls to functions by references to methods. The main script calls other specialized ones but you can...
150 KB  
Music  -  RADIO C.R.C. Targato Italia 3.0
On line from Neaples the radio all over the world! Radio C.R.C. Targato Italia, Neaples in your pocket: tune it! Requirements: iOS 7.0 or later. Compatible with iPhone, iPad, and iPod touch. This app is optimized for iPhone 5.
1.9 MB  
Libraries  -  Aapl C++ Template Library 2.14
Aapl is a C++ template library for generic programming. Aapl supports different generic programming paradigms by providing variations of standard data structures. For example, a by-value linked list template may be used to store a user supplied...
122.88 KB  
Libraries  -  libcontain 0.2 Alpha1
libcontain library provides a large and growing number of fast and thread-safe containter objects written in C and C++. The libcontain library now provides the following container types: - a series of hash tables libcontain includes the hash...
378.88 KB  
Science  -  fftw++ 1.09
FFTW++ is a C++ header class for the FFTW Fast Fourier Transform library that automates memory allocation, alignment, planning, and wisdom. In 2D and 3D, implicit dealiasing of convolutions substantially reduces memory usage and computation time.
140.92 KB  
Libraries  -  Instant 0.9
Instant is a Python module that allows for instant inlining of C and C++ code in Python. Instant is a small Python module built on top of SWIG. Example of use: >>> c_code = """ double sum(double a, double b){ return a+b; } """ >>> import...
34.82 KB  
Libraries  -  b64 1.2.4
b64 is a very small and simple library that provides Base-64 encoding and decoding, according to RFC-1113, in C and C++. The b64 project is released under the BSD license, which basically means its free for any use, but you cant claim its yours....
358.4 KB  
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB  
Libraries  -  App::SimpleScan::Substitution::Line 2.02
App::SimpleScan::Substitution::Line is a line with optional fixed variable values. SYNOPSIS my $line = App::SimpleScan::Substitution::Line->new(" this "); # Use only this value when substituting " ". $line->fix(substituite =>...
54.27 KB