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.891.612 Times

Pyrex 0.9.4.1

  Date Added: May 26, 2010  |  Visits: 658

Pyrex

Report Broken Link
Printer Friendly Version


Product Homepage
Download (77 downloads)



Pyrex is a Language for Writing Python Extension Modules. Pyrex is a language specially designed for writing Python extension modules. Its designed to bridge the gap between the nice, high-level, easy-to-use world of Python and the messy, low-level world of C. You may be wondering why anyone would want a special language for this. Python is really easy to extend using C or C++, isnt it? Why not just write your extension modules in one of those languages? Well, if youve ever written an extension module for Python, youll know that things are not as easy as all that. First of all, there is a fair bit of boilerplate code to write before you can even get off the ground. Then youre faced with the problem of converting between Python and C data types. For the basic types such as numbers and strings this is not too bad, but anything more elaborate and youre into picking Python objects apart using the Python/C API calls, which requires you to be meticulous about maintaining reference counts, checking for errors at every step and cleaning up properly if anything goes wrong. Any mistakes and you have a nasty crash thats very difficult to debug. Various tools have been developed to ease some of the burdens of producing extension code, of which perhaps SWIG is the best known. SWIG takes a definition file consisting of a mixture of C code and specialised declarations, and produces an extension module. It writes all the boilerplate for you, and in many cases you can use it without knowing about the Python/C API. But you need to use API calls if any substantial restructuring of the data is required between Python and C. Whats more, SWIG gives you no help at all if you want to create a new built-in Python type. It will generate pure-Python classes which wrap (in a slightly unsafe manner) pointers to C data structures, but creation of true extension types is outside its scope. Another notable attempt at making it easier to extend Python is PyInline , inspired by a similar facility for Perl. PyInline lets you embed pieces of C code in the midst of a Python file, and automatically extracts them and compiles them into an extension. But it only converts the basic types automatically, and as with SWIG, it doesnt address the creation of new Python types. Pyrex aims to go far beyond what any of these previous tools provides. Pyrex deals with the basic types just as easily as SWIG, but it also lets you write code to convert between arbitrary Python data structures and arbitrary C data structures, in a simple and natural way, without knowing anything about the Python/C API. Thats right -- nothing at all! Nor do you have to worry about reference counting or error checking -- its all taken care of automatically, behind the scenes, just as it is in interpreted Python code. And whats more, Pyrex lets you define new built-in Python types just as easily as you can define new classes in Python. Whats New in This Release: - Tiny bugfix to correct a tab/space problem in the distutils extension..

Requirements: No special requirements
Platforms: Linux
Keyword: Api C Api Extension Interpreters Language Programming Pyrex Python Swig Types Writing Python Extension Modules
Users rating: 0/10

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


PYREX RELATED
Libraries  -  Gtk2::api 1.145
Gtk2::api is a mapping the Gtk+ C API to perl. ABSTRACT The Gtk2 module attempts to stick as close as is reasonable to the C API, to minimize the need to maintain documentation which is nearly a copy of the C API reference documentation....
655.36 KB  
Libraries  -  LibMySequoia 0.9.7
LibMySequoia is an alternative library for MySQL API C client, using Carob to benefit from clustering. So, native mysql client programs can use the Sequoia clustering solution without changing any line of code in the application. HOW TO USE IT...
368.64 KB  
Libraries  -  Linux QoS Library 0.8.0
The Linux QoS Library (LQL) provides a GPL licensed, GObject based C API to manipulate the network queueing disciplines, classes and classifiers in the Linux kernel. LQL does not use the TC command as a back-end. Instead, LQL communicates with...
460.8 KB  
Libraries  -  libiso8601 0.0.1
libiso8601 provides a C API for parsing and manipulating ISO8601 times/dates. Each time/date object is specified to the nearest nanosecond. Parsed times which are specified to less accuracy give a start/end time and the parser can also record the...
20.48 KB  
Libraries  -  MP3::Player::PktConcert 0.01
MP3::Player::PktConcert is a Perl OO wrapper to John Seagulls C API to the Intel Pocket Concert. SYNOPSIS use MP3::Player::PktConcert; my $pocket_concert = new MP3::Player::PktConcert; my $proc_port = $pocket_concert->mount();...
13.31 KB  
Code Management Tools  -  Skaringa r3p7
Skaringa is an API for Java and XML language binding. It transforms Java objects into XML documents and back, and can generate XML schema definitions for a Java class. Typical applications are data exchange, object persistence, object...
204.8 KB  
Database Tools  -  DBD-InterBase 0.44
DBD-InterBase is a Perl-DBI driver for the InterBase Databases and Firebird, written using the InterBase C API.. Get DBD::InterBase at SourceForge.net. Fast, secure and free downloads from the largest Open Source applications and software...
83.97 KB  
Utilities  -  Gnocl 0.9.95
Gnocl is a GTK+ and Gnome extension for the programming language Tcl. It provides easy to use commands to build quickly GTK+ / Gnome compliant applications including canvas widget, GConf and applet support.
993.28 KB  
Network & Internet  -  tpl 1.2
Tpl is a binary data interchange format and C API. C programs can use tpl to store or load serialized images of structured C data. The data is stored in its native binary format. The data can consist of the basic C types, binary buffers and...
296.96 KB  
Programming  -  NLPP-Native Language Programming Project 70
NLPP (The Native Language Programming Project) aims to permit foreign programmers to program using commands (such as if) in their own language (such as 'si' for Spanish). We also aim to create an easily extensible program so that programmers all...
328.15 KB  
NEW DOWNLOADS IN LINUX SOFTWARE, PROGRAMMING
Linux Software  -  Polling Autodialer Software 3.4
ICTBroadcast Auto Dialer software has a survey campaign for telephone surveys and polls. This auto dialer software automatically dials a list of numbers and asks them a set of questions that they can respond to, by using their telephone keypad....
488 B  
Linux Software  -  Total Video Converter Mac Free 3.5.5
Total Video Converter Mac Free developed by EffectMatrix Ltd is the official legal version of Total Video Converter which was a globally recognized brand since 2006. Total Video Converter Mac Free is a free but powerful all-in-one video...
17.7 MB  
Linux Software  -  Skeith mod_log_sql Analyzer 2.10beta2
Skeith is a php based front end for analyzing logs for Apache using mod_log_sql.
47.5 KB  
Linux Software  -  SLAX 6.0+
Slax is a modern, portable, small and fast Linux operating system with a modular approach and outstanding design. Despite its small size, Slax provides a wide collection of pre-installed software for daily use, including a well organized graphical...
190 KB  
Linux Software  -  GTK+ 2.5
GTK+, which stands for the GIMP Toolkit, is a library for creating graphical user interfaces for the X Window System. It is designed to be small, efficient, and flexible. GTK+ is written in C with a very object-oriented approach. Language bindings...
60 MB  
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 freedesktop.org, 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