preprocessor
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 107
Python Hypertext Preprocessor 0.92
PyHP is a system to embed Python code in an HTML document in a way similar to how PHP works. more>>
PyHP is a system to embed Python code in an HTML document in a way similar to how PHP works. PyHP allows use of the Python programming language in scripts similar to PHP. PyHP uses the Python 2.0 language to parse elements embedded in an HTML page.
When I started this, I was enamoured with PHP. Ive since discovered that embedding code in HTML does not seem like the most logical way to do things. If someone wants to pick this up, email me. In the mean time, if you want a truely novel approach to web design with Python, check out the very cool Quixote framework.
THis is a small, fast, hypertext preprocessor that used the worlds greatest scripting language, Python, as its base. There was another program out there that did this, PMZ, but I quickly found what I believed to be shortcomings in it.
Namespace polution
My main problem with PMZ is that it does not execute its programs in a seperate name space. If you define a variable name fields in the global namespace then PMZ will crap out because there is a variable of that name that is of vital importance to the interpreter itself. I did not find this to be acceptable, and Python 2.0s InteractiveInterpreter class made it easy to get around this in PyHP.
Speed
PyHP was designed for use with Apaches mod_python. It will run just fine as a standalone program, but it has been designed to be accelerated under mod_python by automatically caching modules that have been imported and supporting the manual caching of variables as well
Header specification
PMZ has a fixed set of headers that cannot be modified by a PMZ script. PyHP allows script writers to specify what headers are attached to their documents, even to do so in the middle of the HTML file.
Enhancements:
- Fixed a critical bug caused by the previous changes
- Added better documentation
- Tested before releasing
<<lessWhen I started this, I was enamoured with PHP. Ive since discovered that embedding code in HTML does not seem like the most logical way to do things. If someone wants to pick this up, email me. In the mean time, if you want a truely novel approach to web design with Python, check out the very cool Quixote framework.
THis is a small, fast, hypertext preprocessor that used the worlds greatest scripting language, Python, as its base. There was another program out there that did this, PMZ, but I quickly found what I believed to be shortcomings in it.
Namespace polution
My main problem with PMZ is that it does not execute its programs in a seperate name space. If you define a variable name fields in the global namespace then PMZ will crap out because there is a variable of that name that is of vital importance to the interpreter itself. I did not find this to be acceptable, and Python 2.0s InteractiveInterpreter class made it easy to get around this in PyHP.
Speed
PyHP was designed for use with Apaches mod_python. It will run just fine as a standalone program, but it has been designed to be accelerated under mod_python by automatically caching modules that have been imported and supporting the manual caching of variables as well
Header specification
PMZ has a fixed set of headers that cannot be modified by a PMZ script. PyHP allows script writers to specify what headers are attached to their documents, even to do so in the middle of the HTML file.
Enhancements:
- Fixed a critical bug caused by the previous changes
- Added better documentation
- Tested before releasing
Download (0.015MB)
Added: 2006-06-22 License: GPL (GNU General Public License) Price:
1220 downloads
interface preprocessor for PHP 0.2.10
interface preprocessor for PHP are methods to create user interfaces in PHP. more>>
ippfp is an easy-to-use library which provides oo-methods for creating and rendering user interfaces in PHP independently from output format. It features HTML, GTK, PDF and ncurses.
You can create input masks such as forms for databases or other user interfaces. ippfp features abstraction, elements can be accessed like data structures, they have values and various attributes.
For me ippfp is a construction kit to build software quickly.
Another purpose could be the automatically generation by software.
You can select one of these packages to display:
- HTML
- PDF
- GTK
- ncurses
Available elements:
- button
- checkbox
- choice
- fopen (file open)
- grid
- image
- label (readonly text)
- link
- multiplechoice
- password
- radio
- text
- textarea
- table
The library puts the elements together in a frame. For HTML a HTML page will be created which contains the elements, GTK and ncurses have appropriate windows. The data of elements will be stored in session variables.
One does not need to care for details of formats like HTML-tags or GTK-classes. For navigating within a program the button element should be used. To arrange elements the elements "grid" or rather "table" are the right choices.
Elements are created with the "create"-functions which are members of the ippfp main instance and returns objects respective to the goal. To make them visible they will be grouped in a "view" which will be given to the ippfp main instance for processing.
This is a flexible way because an existing element can be used in several views. Thus, elements will be included by reference, not by copy. The advantages are: if an element is in a state, it is independent from the current view and related informations are available globally.
For example: create a text element:
$myText = $ippfp->createText("default", 20, "my_text");
...
echo $myText->getValue();
Your code should be organised into php functions. For example if a button is used, it calls the function given as attribute. It is expedient to integrate your views into this functions.
Enhancements:
- switched from html to xhtml, format identifier is XHTML
- a simple debug function added, for internal debugging, writes messages into a file (usefull for ncurses)
- pdf passes the "tabellentest", tables and grids can extend over a big number of pages, and can contain big text
- some bugfixes in xhtml and pdf
<<lessYou can create input masks such as forms for databases or other user interfaces. ippfp features abstraction, elements can be accessed like data structures, they have values and various attributes.
For me ippfp is a construction kit to build software quickly.
Another purpose could be the automatically generation by software.
You can select one of these packages to display:
- HTML
- GTK
- ncurses
Available elements:
- button
- checkbox
- choice
- fopen (file open)
- grid
- image
- label (readonly text)
- link
- multiplechoice
- password
- radio
- text
- textarea
- table
The library puts the elements together in a frame. For HTML a HTML page will be created which contains the elements, GTK and ncurses have appropriate windows. The data of elements will be stored in session variables.
One does not need to care for details of formats like HTML-tags or GTK-classes. For navigating within a program the button element should be used. To arrange elements the elements "grid" or rather "table" are the right choices.
Elements are created with the "create"-functions which are members of the ippfp main instance and returns objects respective to the goal. To make them visible they will be grouped in a "view" which will be given to the ippfp main instance for processing.
This is a flexible way because an existing element can be used in several views. Thus, elements will be included by reference, not by copy. The advantages are: if an element is in a state, it is independent from the current view and related informations are available globally.
For example: create a text element:
$myText = $ippfp->createText("default", 20, "my_text");
...
echo $myText->getValue();
Your code should be organised into php functions. For example if a button is used, it calls the function given as attribute. It is expedient to integrate your views into this functions.
Enhancements:
- switched from html to xhtml, format identifier is XHTML
- a simple debug function added, for internal debugging, writes messages into a file (usefull for ncurses)
- pdf passes the "tabellentest", tables and grids can extend over a big number of pages, and can contain big text
- some bugfixes in xhtml and pdf
Download (0.13MB)
Added: 2005-06-17 License: LGPL (GNU Lesser General Public License) Price:
1590 downloads
The Epeios XML preprocessor 0.2.1 2007-05-17
The Epeios XML preprocessor (expp in short) is a tool which transforms an XML file to another XML file. more>>
The Epeios XML preprocessor (expp in short) is a tool which transforms an XML file to another XML file, by using tags owned by a given namespace (xpp by default, but you can change it). This tags allow to handle macros, to affect value to variables ant to test their values, to include files, ... In a glance, expp aims to be to XML what cpp is to C/C++.
The expp tool exclusively uses system and C/C++ standard libraries. It even has its own XML parser. So, no other package have to be installed for expp to work properly.
The expp tool is also used to test the Epeios XML library, and is also intended as an example to show how to use this library.
The Windows binary is included in the package. To obtain the linux binary, (or the cygwin one), simply unpack the package, and launch make in the obtained directory.
Enhancements:
- This version fixes two bugs.
- The first is about a missing error message when a nesting overflow occurs.
- The second is about the inclusion of a file, with relative path, from an included file; the base directory is now the one of the included file, and no longer the one of the first file.
<<lessThe expp tool exclusively uses system and C/C++ standard libraries. It even has its own XML parser. So, no other package have to be installed for expp to work properly.
The expp tool is also used to test the Epeios XML library, and is also intended as an example to show how to use this library.
The Windows binary is included in the package. To obtain the linux binary, (or the cygwin one), simply unpack the package, and launch make in the obtained directory.
Enhancements:
- This version fixes two bugs.
- The first is about a missing error message when a nesting overflow occurs.
- The second is about the inclusion of a file, with relative path, from an included file; the base directory is now the one of the included file, and no longer the one of the first file.
Download (0.38MB)
Added: 2007-05-18 License: GPL (GNU General Public License) Price:
889 downloads
sp_preproc 1.280
sp_preproc is a SystemPerl Preprocessor. more>>
sp_preproc is a SystemPerl Preprocessor.
SYNOPSIS
sp_preproc
sp_preproc takes a .sp (systemperl) file and creates the SystemC header and C files.
It is generally only executed from the standard build scripts.
ARGUMENTS
--help
Displays this message and program version and exits.
--hier-only
Read only hierarchy information, ignore all signal information. Useful for faster generation of sp_lib files.
--inline
Edit the existing source code "inline". Similar to the Verilog-mode AUTOs. Use --inline --noautos to remove the expanded automatics.
--libfile
Filename to write a list of sp_cells into, for later use as a --libcell to another sp_preproc run.
--libcell
Files listed before --libcell will be preprocessed or inlined as appropriate. Files after noexpand will only be used for resolving references, they will not be linked, linted, or otherwise checked. --nolibcell can be used to re-enable checking of subsequent files.
--ncsc
Create output files compatible with Cadence NC-SystemC.
--nolint
Disable lint style error checks, such as required to run doxygen on the SystemPerl output.
--preproc
Preprocess the code, writing to separate header and cpp files.
--trace-duplicates
Include code to trace submodule signals connected directly to a parent signal, generally for debugging interconnect. Without this switch such signals will be presumed to have the value of their parent modules signal, speeding and compressing traces.
--tree filename
Write a report showing the design hierarchy tree to the specified filename. This format may change, it should not be parsed by tools.
--noautos
With --inline, remove any expanded automatics.
--verbose
Shows which files are being written, or are the same.
--write-verilog filename
Write the SystemC interconnections in Verilog format to the specified filename. Note this does not include logic, it only contains module ports and cells.
-M
Makes the dependency listing (similar to cpp -M).
-Dvar=value
Sets a define to the given value (similar to cpp -D).
-f file
Parse parameters from the given file.
<<lessSYNOPSIS
sp_preproc
sp_preproc takes a .sp (systemperl) file and creates the SystemC header and C files.
It is generally only executed from the standard build scripts.
ARGUMENTS
--help
Displays this message and program version and exits.
--hier-only
Read only hierarchy information, ignore all signal information. Useful for faster generation of sp_lib files.
--inline
Edit the existing source code "inline". Similar to the Verilog-mode AUTOs. Use --inline --noautos to remove the expanded automatics.
--libfile
Filename to write a list of sp_cells into, for later use as a --libcell to another sp_preproc run.
--libcell
Files listed before --libcell will be preprocessed or inlined as appropriate. Files after noexpand will only be used for resolving references, they will not be linked, linted, or otherwise checked. --nolibcell can be used to re-enable checking of subsequent files.
--ncsc
Create output files compatible with Cadence NC-SystemC.
--nolint
Disable lint style error checks, such as required to run doxygen on the SystemPerl output.
--preproc
Preprocess the code, writing to separate header and cpp files.
--trace-duplicates
Include code to trace submodule signals connected directly to a parent signal, generally for debugging interconnect. Without this switch such signals will be presumed to have the value of their parent modules signal, speeding and compressing traces.
--tree filename
Write a report showing the design hierarchy tree to the specified filename. This format may change, it should not be parsed by tools.
--noautos
With --inline, remove any expanded automatics.
--verbose
Shows which files are being written, or are the same.
--write-verilog filename
Write the SystemC interconnections in Verilog format to the specified filename. Note this does not include logic, it only contains module ports and cells.
-M
Makes the dependency listing (similar to cpp -M).
-Dvar=value
Sets a define to the given value (similar to cpp -D).
-f file
Parse parameters from the given file.
Download (0.10MB)
Added: 2007-05-30 License: Perl Artistic License Price:
877 downloads
TagReport 0.3
TagReport is a nifty little project Ive been working on which is mostly a giant C++ exploration exercise. more>>
TagReport is a nifty little project Ive been working on which is mostly a giant C++ exploration exercise. The program is very simple at this stage; the indexer part is really an HTML output function right now, that mimics the "Winamp Generated Playlist" format commonly seen on the Internet.
Currently it supports 4 libraries with which it can process audio files; libFLAC for FLAC files, libvorbisfile for Ogg Vorbis audio, libid3tag for MP3 audio, and TagLib, an all-in-one library that supports both Ogg Vorbis and MP3 reading.
Enhancements:
- Many many many new things, hence the version leap
- FLAC support: started with forking metaflac, now uses libFLAC
- Support for using libvorbisfile and libid3tag to process MP3s when TagLib is not available
- Piles of code cleanups
- Fix a giant configure bug involving when we search for where the preprocessor is
- Add a man page in SGML. Should not have to be built by normal users, though.
- Move all tag/comment-retrieving code to ftfuncs.{cc,h}
- Move all HTML-related code to html.cc
<<lessCurrently it supports 4 libraries with which it can process audio files; libFLAC for FLAC files, libvorbisfile for Ogg Vorbis audio, libid3tag for MP3 audio, and TagLib, an all-in-one library that supports both Ogg Vorbis and MP3 reading.
Enhancements:
- Many many many new things, hence the version leap
- FLAC support: started with forking metaflac, now uses libFLAC
- Support for using libvorbisfile and libid3tag to process MP3s when TagLib is not available
- Piles of code cleanups
- Fix a giant configure bug involving when we search for where the preprocessor is
- Add a man page in SGML. Should not have to be built by normal users, though.
- Move all tag/comment-retrieving code to ftfuncs.{cc,h}
- Move all HTML-related code to html.cc
Download (0.058MB)
Added: 2006-07-31 License: GPL (GNU General Public License) Price:
1180 downloads
STclass 4.0 RC7
STclass is a Contract Based Built-in Testing Framework (CBBT) for Java. more>>
STclass is a Contract Based Built-in Testing Framework (CBBT) for Java.
The goal of the STclass project is to diffuse a professional testing framework for the Java language. The Tigris site shoud support the maintenance and the evolution of the tool.
Main features:
- Runtime evaluable contracts definition and evaluation:
OCL like class invariants, pre and postconditions on methods;
contracts defined in javadoc comments (can be extracted by javadoc);
contracts inheritance from parent class and interfaces following the Meyers rules;
- Class level unit testing:
test are organized in TestUnits, TestCases and TestSuites;
Setup and Teardown actions can be associated to TestCase, a testUnit can participate to several TestCases;
tests are contract-based: TestUnits define only scenarii, oracles are evaluated by contracts;
tests are built-in: all the test definition is made in comments of the source code;
tests are inheritable from parent classes and interfaces;
- A preprocessor generates from the source an instrumented code with a main function: running the test is only running the class itself. Options manage the test conditions; it is possible to launch TestUnits individualy in verification mode; with Ant or other scripts, package or system test can be performed.
- Test result are saved in XML format, postprocessing tools produce nice HTML reports; using the JIP profiler, a statisitic and profiling analysis can be made during the test, its resuts are added to the HTML report.
Enhancements:
- Several bugs were fixed.
- Change option management is now based on property files.
- Good integration with Ant was achieved.
- IDEs including NetBeans and Eclipse are now supported.
- A new code_cover command that makes coverage tests with EMMA was added.
<<lessThe goal of the STclass project is to diffuse a professional testing framework for the Java language. The Tigris site shoud support the maintenance and the evolution of the tool.
Main features:
- Runtime evaluable contracts definition and evaluation:
OCL like class invariants, pre and postconditions on methods;
contracts defined in javadoc comments (can be extracted by javadoc);
contracts inheritance from parent class and interfaces following the Meyers rules;
- Class level unit testing:
test are organized in TestUnits, TestCases and TestSuites;
Setup and Teardown actions can be associated to TestCase, a testUnit can participate to several TestCases;
tests are contract-based: TestUnits define only scenarii, oracles are evaluated by contracts;
tests are built-in: all the test definition is made in comments of the source code;
tests are inheritable from parent classes and interfaces;
- A preprocessor generates from the source an instrumented code with a main function: running the test is only running the class itself. Options manage the test conditions; it is possible to launch TestUnits individualy in verification mode; with Ant or other scripts, package or system test can be performed.
- Test result are saved in XML format, postprocessing tools produce nice HTML reports; using the JIP profiler, a statisitic and profiling analysis can be made during the test, its resuts are added to the HTML report.
Enhancements:
- Several bugs were fixed.
- Change option management is now based on property files.
- Good integration with Ant was achieved.
- IDEs including NetBeans and Eclipse are now supported.
- A new code_cover command that makes coverage tests with EMMA was added.
Download (3.8MB)
Added: 2006-11-21 License: GPL (GNU General Public License) Price:
1068 downloads
WriteTarget 0.92
WriteTarget is a template based text generator. more>>
WriteTarget is a template based text generator. The project can be used to easily generate text in ANY computer language. HTML and C programming language examples are included in templates section. While using Bash as text substitution engine, it provides programming power, rich, stable and mature set of features and some portability.
It is simple and easy to use, see below for "Hello World" example. It does not define its own language, as M4 or Autogen do, it is not sophisticated nor complicated. It rather demonstrates power of classic well-known shell language, exploiting its not so known possibilities. The Bash programming language has all the capabilities which are necessery to generate text from templates - string expansion, variables, functions and so on.
WriteTarget just makes this a bit easier, defining several elagant functions. If you are new to Bash, you may want to read some tutorial, as this one, but standard Bash manual is also good starting point. It is rather short (as for programming language manual), and worth reading. Just type man bash in your console. If you have no man command, do not panic, type man bash in Google. The WriteTarget is just a simple way to turn your favourite interpreter into templatized blog engine, wiki-like CMS, C++ or Java code generator or - simply - macro preprocessor.
One can use WriteTarget for HTML generating, for C-code programming and for any text populating. There are two essential functions in WriteTarget: target - defining text destination, the point in template where the text will be inserted - and write - writing the text at this point.
<<lessIt is simple and easy to use, see below for "Hello World" example. It does not define its own language, as M4 or Autogen do, it is not sophisticated nor complicated. It rather demonstrates power of classic well-known shell language, exploiting its not so known possibilities. The Bash programming language has all the capabilities which are necessery to generate text from templates - string expansion, variables, functions and so on.
WriteTarget just makes this a bit easier, defining several elagant functions. If you are new to Bash, you may want to read some tutorial, as this one, but standard Bash manual is also good starting point. It is rather short (as for programming language manual), and worth reading. Just type man bash in your console. If you have no man command, do not panic, type man bash in Google. The WriteTarget is just a simple way to turn your favourite interpreter into templatized blog engine, wiki-like CMS, C++ or Java code generator or - simply - macro preprocessor.
One can use WriteTarget for HTML generating, for C-code programming and for any text populating. There are two essential functions in WriteTarget: target - defining text destination, the point in template where the text will be inserted - and write - writing the text at this point.
Download (0.006MB)
Added: 2007-06-16 License: GPL (GNU General Public License) Price:
863 downloads
Sin/Cos calculator
Sin/Cos calculator is a mathematical comand-line calculator. more>>
Sin/Cos calculator is a mathematical comand-line calculator.
I was chatting to this guy on IRC who was moaning about his homework. trying to write a program to do this in bash. I said youd be much better off doing it in C, and wrote this. Gave it to him the next day after theyd finished the chapter.
As it does both, theres two executables, it builds main() depending on preprocessor definition... more in the source file.
Compile with:
gcc -lm sin_rule.c -ansi -pedantic -DSINE_RULE -o sin-rule
./sin-rule
<<lessI was chatting to this guy on IRC who was moaning about his homework. trying to write a program to do this in bash. I said youd be much better off doing it in C, and wrote this. Gave it to him the next day after theyd finished the chapter.
As it does both, theres two executables, it builds main() depending on preprocessor definition... more in the source file.
Compile with:
gcc -lm sin_rule.c -ansi -pedantic -DSINE_RULE -o sin-rule
./sin-rule
Download (0.004MB)
Added: 2007-03-05 License: BSD License Price:
971 downloads
Xplore 1.2a
Xplore is a powerful and highly configurable Motif file manager with an Explorer-like user interface. more>>
Xplore is a powerful and highly configurable Motif file manager with an Explorer-like user interface.
Main features:
- customizable four-pane layout, which includes a directory tree view, file view with different display styles, the "shelf," a kind of clipboard inspired by the NeXT file manager, and a "log" pane which captures the output of launched programs
- files can be moved, copied, executed etc. with simple mouse operations, including drag and drop between different xplore windows
- full keyboard navigation support, including an incremental filename search facility
- builtin automounting facility for special file systems like floppies, cdroms, etc.
- comprehensive session management features, with full support for the X11R5 and R6 session management protocols
- includes man page and many XPM icons
- offers extensive configuration options. In particular, file types are fully configurable, including separate push and drop actions a la xfm, and type-specific popup menus. A free-format configuration language featuring C preprocessor commands allows you to set up rather complex configurations with moderate effort, and a configuration dialog allows you to quickly add new and change existing file types at runtime.
<<lessMain features:
- customizable four-pane layout, which includes a directory tree view, file view with different display styles, the "shelf," a kind of clipboard inspired by the NeXT file manager, and a "log" pane which captures the output of launched programs
- files can be moved, copied, executed etc. with simple mouse operations, including drag and drop between different xplore windows
- full keyboard navigation support, including an incremental filename search facility
- builtin automounting facility for special file systems like floppies, cdroms, etc.
- comprehensive session management features, with full support for the X11R5 and R6 session management protocols
- includes man page and many XPM icons
- offers extensive configuration options. In particular, file types are fully configurable, including separate push and drop actions a la xfm, and type-specific popup menus. A free-format configuration language featuring C preprocessor commands allows you to set up rather complex configurations with moderate effort, and a configuration dialog allows you to quickly add new and change existing file types at runtime.
Download (0.5MB)
Added: 2005-04-29 License: GPL (GNU General Public License) Price:
946 downloads
Umbrello UML Modeller 1.5.71
Umbrello UML Modeller is a Unified Modelling Language diagram programme for KDE. more>>
Umbrello UML Modeller is a Unified Modelling Language diagram programme for KDE.
Umbrello UML Modeller allows you to create diagrams of software and other systems in a standard format.
Our handbook gives a good introduction to Umbrello and UML modelling.
Enhancements:
- Bugs/wishes from http://bugs.kde.org:
- Preprocessor keywords ignored which causes endless loop in code import (119125)
- Code generator for D language (124805)
- Unstable saves and loads, class names become dirty (145709)
- Crash on deleting class in list view (145762)
- Class attribute documentation not generated for python (145916)
- Python code generator does not wrap lines properly (145918)
- Attribute documentation not generated for Export to XHTML (145972)
- Crash when moving a class in a Java UML diagram (146058)
- Arrowheads are not shown (146064)
- Crash when creating a class that refers to more than one other classes/datatypes (146367)
<<lessUmbrello UML Modeller allows you to create diagrams of software and other systems in a standard format.
Our handbook gives a good introduction to Umbrello and UML modelling.
Enhancements:
- Bugs/wishes from http://bugs.kde.org:
- Preprocessor keywords ignored which causes endless loop in code import (119125)
- Code generator for D language (124805)
- Unstable saves and loads, class names become dirty (145709)
- Crash on deleting class in list view (145762)
- Class attribute documentation not generated for python (145916)
- Python code generator does not wrap lines properly (145918)
- Attribute documentation not generated for Export to XHTML (145972)
- Crash when moving a class in a Java UML diagram (146058)
- Arrowheads are not shown (146064)
- Crash when creating a class that refers to more than one other classes/datatypes (146367)
Download (2.3MB)
Added: 2007-06-08 License: GPL (GNU General Public License) Price:
886 downloads
cddsolve 0.9
cddsolve project is a double dummy bridge solver. more>>
cddsolve project is a double dummy bridge solver.
It utilizes alpha-beta pruning and minimax searching to find the number of tricks a given side can take under the assumption of optimal play.
While the complexity of the problem may be enormous depending on the given deal and contract, cddsolve is fast enough to be actually helpfull for many double dummy bridge problems.
cddsolve has an predecessor called ddsolve which is implemented in python and also available on this page.
ddsolve is considered to be a prototypical implementation to demonstrate the basic algorithms and quantify the impact of different optimizations.
Enhancements:
- cleaned up the preprocessor macros and added some bogus return values to make recent gccs happy.
- incremented the TPBUCKETCOUNT in ddtranspos.c, trading computational speed against memory footprint. shoe size is about 10mb larger now.
- released 0.9.
<<lessIt utilizes alpha-beta pruning and minimax searching to find the number of tricks a given side can take under the assumption of optimal play.
While the complexity of the problem may be enormous depending on the given deal and contract, cddsolve is fast enough to be actually helpfull for many double dummy bridge problems.
cddsolve has an predecessor called ddsolve which is implemented in python and also available on this page.
ddsolve is considered to be a prototypical implementation to demonstrate the basic algorithms and quantify the impact of different optimizations.
Enhancements:
- cleaned up the preprocessor macros and added some bogus return values to make recent gccs happy.
- incremented the TPBUCKETCOUNT in ddtranspos.c, trading computational speed against memory footprint. shoe size is about 10mb larger now.
- released 0.9.
Download (0.024MB)
Added: 2006-11-20 License: GPL (GNU General Public License) Price:
1068 downloads
PlusPlus 1.23
PlusPlus is a Delphi, VB, Java-like Perl preprocessor. more>>
PlusPlus is a Delphi, VB, Java-like Perl preprocessor.
SYNOPSIS
### Case 1: plain script
use PlusPlus;
/*
This is
a long awaited
multiline
comment
*/
my $nested_hash = {outer => {inner => {a => 1, b => [19, 73], c => 3}}}
$nested_hash.outer.inner.a = 5; # colon in variable names
$nested_hash.outer.inner.b.[1] = 37;
$dbh.do ("DROP DATABASE TEST"); # colon in method names
with ($nested_hash.outer.inner) { # with operator
($.a, $.c) = (10, 30);
print " b[0] = $.b.[0]n";
};
function f ($x, $y = 0) { # named parameters and default values
return sin ($x) * cos ($y)
};
### Case 2: working with a database
use PlusPlus;
use DBI;
my $dbh = DBI -> connect ($dsn, $user, $password);
select name, phone from staff where salary between ? and ? -> my $sth;
forsql $sth (1000, 1500) {
print "< tr > < td > $.name < /td > < td > $.phone < /td > < /tr >"
}
### Case 3: procedural module
use PlusPlus;
module Child (Ancestor::Mother, Ancestor::Father);
sub foo { ... }; # not exported
export sub bar { ... }; # exported by default
export_ok sub baz { ... }; # can be imported explicitly
### Case 4: class
class Child (Ancestor::Mother, Ancestor::Father);
method init { # constructor callback
($.x, $.y) = (10, 3);
}
method diag { # some method
sqrt ($.x * $.x + $.y * $.y)
}
method do_it_to_me ($coderef) { # one more method
&$coderef ($self);
}
getter fldname { # getter method
print "They asked my value!n";
return $.fldname;
}
setter fldname ($value) { # setter method
$.setting_counter ++;
$.fldname = $value;
}
<<lessSYNOPSIS
### Case 1: plain script
use PlusPlus;
/*
This is
a long awaited
multiline
comment
*/
my $nested_hash = {outer => {inner => {a => 1, b => [19, 73], c => 3}}}
$nested_hash.outer.inner.a = 5; # colon in variable names
$nested_hash.outer.inner.b.[1] = 37;
$dbh.do ("DROP DATABASE TEST"); # colon in method names
with ($nested_hash.outer.inner) { # with operator
($.a, $.c) = (10, 30);
print " b[0] = $.b.[0]n";
};
function f ($x, $y = 0) { # named parameters and default values
return sin ($x) * cos ($y)
};
### Case 2: working with a database
use PlusPlus;
use DBI;
my $dbh = DBI -> connect ($dsn, $user, $password);
select name, phone from staff where salary between ? and ? -> my $sth;
forsql $sth (1000, 1500) {
print "< tr > < td > $.name < /td > < td > $.phone < /td > < /tr >"
}
### Case 3: procedural module
use PlusPlus;
module Child (Ancestor::Mother, Ancestor::Father);
sub foo { ... }; # not exported
export sub bar { ... }; # exported by default
export_ok sub baz { ... }; # can be imported explicitly
### Case 4: class
class Child (Ancestor::Mother, Ancestor::Father);
method init { # constructor callback
($.x, $.y) = (10, 3);
}
method diag { # some method
sqrt ($.x * $.x + $.y * $.y)
}
method do_it_to_me ($coderef) { # one more method
&$coderef ($self);
}
getter fldname { # getter method
print "They asked my value!n";
return $.fldname;
}
setter fldname ($value) { # setter method
$.setting_counter ++;
$.fldname = $value;
}
Download (0.007MB)
Added: 2007-06-05 License: Perl Artistic License Price:
871 downloads
objcache 1.042
objcache is a Perl module that caches results of running gcc/ghs on argument list. more>>
objcache is a Perl module that caches results of running gcc/ghs on argument list.
SYNOPSIS
objcache --read --write g++
objcache is called with a full g++ or cxppc command line. It acts as if the compiler is called directly with all arguments.
With --read and --write, objcache returns almost instantly when the same source is recompiled. It does this by caching a hash of the preprocessed gcc source files. If gcc is invoked with the same inputs, the cache returns the object files without needing to invoke the compiler.
DETAILS
GCC is run in preprocessor mode to create a single source file. This source file is then hashed. Likewise any compiler switches are hashed, but with any define related switches (-Dfoo -Dfoo=value -Ufoo) stripped out as they are represented in the preprocessor output. (This increases cache hits when there are many #ifdef controlled compiles going on.)
The source hash is then looked up in the cache. If it hits, the objects are copied from the cache into the local directory, and objcache exits. The files on disk will thus look like the compile finished, but much faster.
If the source hash misses, the compiler is invoked. The output of the compiler is written to the cache. objcache also determines how long the compile took (for informing the user), and may run the compile on another machine.
EXAMPLE MAKEFILE
This example will use the cache, and compile on all machines in the network with the "gcc" class. Its also written to work if the objcache is not installed. This uses the Schedule::Load package to determine what machines have free resources in the network.
ifeq ($(SLCHOOSED_HOST),)
export OBJCACHE :=
else
export OBJCACHE_HOSTS := $(shell rschedule --class class_gcc hostnames)
export OBJCACHE_JOBS := -j $(shell objcache --jobs "$(OBJCACHE_HOSTS)")
export OBJCACHE := @objcache --read --write
endif
%.o: %.cpp
$(OBJCACHE) ${CXX} ${CPPFLAGS} -c $<
If you are using a submake (where one makefile calls another), you may place the export lines in the top level makefile. Then, spawn the submakes using the number of jobs calculated by objcache --jobs:
top_level_target:
$(MAKE) $(OBJCACHE_JOBS) top_level_target
<<lessSYNOPSIS
objcache --read --write g++
objcache is called with a full g++ or cxppc command line. It acts as if the compiler is called directly with all arguments.
With --read and --write, objcache returns almost instantly when the same source is recompiled. It does this by caching a hash of the preprocessed gcc source files. If gcc is invoked with the same inputs, the cache returns the object files without needing to invoke the compiler.
DETAILS
GCC is run in preprocessor mode to create a single source file. This source file is then hashed. Likewise any compiler switches are hashed, but with any define related switches (-Dfoo -Dfoo=value -Ufoo) stripped out as they are represented in the preprocessor output. (This increases cache hits when there are many #ifdef controlled compiles going on.)
The source hash is then looked up in the cache. If it hits, the objects are copied from the cache into the local directory, and objcache exits. The files on disk will thus look like the compile finished, but much faster.
If the source hash misses, the compiler is invoked. The output of the compiler is written to the cache. objcache also determines how long the compile took (for informing the user), and may run the compile on another machine.
EXAMPLE MAKEFILE
This example will use the cache, and compile on all machines in the network with the "gcc" class. Its also written to work if the objcache is not installed. This uses the Schedule::Load package to determine what machines have free resources in the network.
ifeq ($(SLCHOOSED_HOST),)
export OBJCACHE :=
else
export OBJCACHE_HOSTS := $(shell rschedule --class class_gcc hostnames)
export OBJCACHE_JOBS := -j $(shell objcache --jobs "$(OBJCACHE_HOSTS)")
export OBJCACHE := @objcache --read --write
endif
%.o: %.cpp
$(OBJCACHE) ${CXX} ${CPPFLAGS} -c $<
If you are using a submake (where one makefile calls another), you may place the export lines in the top level makefile. Then, spawn the submakes using the number of jobs calculated by objcache --jobs:
top_level_target:
$(MAKE) $(OBJCACHE_JOBS) top_level_target
Download (0.025MB)
Added: 2007-05-29 License: Perl Artistic License Price:
878 downloads
idl2pysrv 0.37
idl2pysrv is a IDL compiler to Python RPC-GIOP skeleton server. more>>
idl2pysrv is a IDL compiler to Python RPC-GIOP skeleton server.
SYNOPSIS
idl2pysrv [options] spec.idl
OPTIONS
All options are forwarded to C preprocessor, except -h -i -J -v -x.
With the GNU C Compatible Compiler Processor, useful options are :
-D name
-D name=definition
-I directory
-I-
-nostdinc
Specific options :
-h
Display help.
-i directory
Specify a path for import (only for version IDL 3.0).
-J directory
Specify a path for Python package.
-v
Display version.
-x
Enable export (only for version IDL 3.0).
idl2pysrv parses the given input file (IDL) and generates :
a set of Python sources : an optional _spec_skel.py and pkg_skel/__init__.py for each package
setup_skel.py
idl2pysrv is a Perl OO application what uses the visitor design pattern. The parser is generated by Parse::Yapp.
idl2pysrv needs a cpp executable.
<<lessSYNOPSIS
idl2pysrv [options] spec.idl
OPTIONS
All options are forwarded to C preprocessor, except -h -i -J -v -x.
With the GNU C Compatible Compiler Processor, useful options are :
-D name
-D name=definition
-I directory
-I-
-nostdinc
Specific options :
-h
Display help.
-i directory
Specify a path for import (only for version IDL 3.0).
-J directory
Specify a path for Python package.
-v
Display version.
-x
Enable export (only for version IDL 3.0).
idl2pysrv parses the given input file (IDL) and generates :
a set of Python sources : an optional _spec_skel.py and pkg_skel/__init__.py for each package
setup_skel.py
idl2pysrv is a Perl OO application what uses the visitor design pattern. The parser is generated by Parse::Yapp.
idl2pysrv needs a cpp executable.
Download (0.061MB)
Added: 2007-05-31 License: Perl Artistic License Price:
876 downloads
Quite Universal Circuit Simulator 0.0.12
Quite Universal Circuit Simulator is a circuit simulator with graphical user interface (GUI). more>>
Quite Universal Circuit Simulator (Qucs) is an integrated circuit simulator which means you are able to setup a circuit with a graphical user interface (GUI) and simulate the large-signal, small-signal and noise behaviour of the circuit. After that simulation has finished you can view the simulation results on a presentation page or window.
The software aims to support all kinds of circuit simulation types, e.g. DC, AC, S-parameter, Harmonic Balance analysis, noise analysis, etc.
Qucsator, the simulation backend, is a command line circuit simulator. It takes a network list in a certain format as input and outputs a Qucs dataset.
Whats New in This Release:
The new release comes with a new translation into Ukrainian, a selectable preprocessor in the SPICE file component and two new components, i.e. an exponential voltage and current source. Libraries
can now contain analogue as well as digital subcircuits. Analogue modelling is substantially strengthened by symbolically defined devices. And last but not least pure digital simulations can be also performed by Verilog-HDL as an alternative to VHDL.
In the simulation backend the equation defined devices (EDD) have been implemented as well as the two new signal sources. Also the list of
available functions in the equation solver has been extended to support vt(), hypot(), limexp(), arcsec(), arccosec(), arsech() and arcosech(). Furthermore logical and rational operators as well as the ternary ?: construct can be used in equations.
<<lessThe software aims to support all kinds of circuit simulation types, e.g. DC, AC, S-parameter, Harmonic Balance analysis, noise analysis, etc.
Qucsator, the simulation backend, is a command line circuit simulator. It takes a network list in a certain format as input and outputs a Qucs dataset.
Whats New in This Release:
The new release comes with a new translation into Ukrainian, a selectable preprocessor in the SPICE file component and two new components, i.e. an exponential voltage and current source. Libraries
can now contain analogue as well as digital subcircuits. Analogue modelling is substantially strengthened by symbolically defined devices. And last but not least pure digital simulations can be also performed by Verilog-HDL as an alternative to VHDL.
In the simulation backend the equation defined devices (EDD) have been implemented as well as the two new signal sources. Also the list of
available functions in the equation solver has been extended to support vt(), hypot(), limexp(), arcsec(), arccosec(), arsech() and arcosech(). Furthermore logical and rational operators as well as the ternary ?: construct can be used in equations.
Download (3.7MB)
Added: 2007-06-17 License: GPL (GNU General Public License) Price:
873 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above preprocessor search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed