can perform
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 1135
AxKit::XSP::PerForm 1.83
AxKit::XSP::PerForm is an XSP Taglib for making complex forms easy. more>>
AxKit::XSP::PerForm is an XSP Taglib for making complex forms easy.
SYNOPSIS
AxAddXSPTaglib AxKit::XSP::PerForm
PerForm is a large and complex taglib for AxKit XSP that facilitates creating large and complex HTML, WML, or other types of data-entry forms. PerForm tends to make life easier for you if your form data is coming from different data sources, such as DBI, or even XML.
PerForm works as an XSP taglib, meaning you simply add some custom XML tags to your XSP page, and PerForm does the rest. Well, almost... PerForm works mainly by callbacks, as you will see below.
EXAMPLE FORM
Ignoring the outside XSP and namespace declarations, assuming the prefix "f" is bound to the PerForm namespace:
< f:form name="add_user" >
First name: < f:textfield name="firstname" width="30" maxlength="50"/ >
< br / >
Last name: < f:textfield name="lastname" width="30" maxlength="50"/ >
< br / >
< f:submit name="save" value="Save" goto="users.xsp" / >
< f:cancel name="cancel" value="Cancel" goto="home.html" / >
< /f:form >
Now it is important to bear in mind that this is just the form, and alone it is fairly useless. You also need to add callbacks. Youll notice with each of these callbacks you recieve a $ctxt object. This is simply an empty hash-ref that you can use in the callbacks to maintain state. Actually "empty" is an exhageration - it contains two entries always: Form and Apache. "Form" is a simply a hashref of the entries in the form (actually it is an Apache::Table object, which allows for supporting multi-valued parameters). So for example, the firstname below is in $ctxt-{Form}{firstname} >. "Apache" is the $r apache request object for the current request, which is useful for access to the URI or headers.
sub validate_firstname {
my ($ctxt, $value) = @_;
$value =~ s/^s*//;
$value =~ s/s*$//;
die "No value" unless $value;
die "Invalid firstname - non word character not allowed"
if $value =~ /W/;
}
sub validate_lastname {
return validate_firstname(@_);
}
sub submit_save {
my ($ctxt) = @_;
# save values to a database
warn("User: ", $ctxt->{Form}{firstname}, " ", $ctxt->{Form}{lastname}, "n");
}
Now these methods need to be global to your XSP page, rather than "closures" within the XSP pages main handler routine. How do you do that? Well its simple. Just put them within a < xsp:logic > section before any user defined tags. For example, if your XSP page happens to use XHTML as its basic format (something I do a lot), your page might be constructed as follows (namespace declarations omitted for brevity):
< xsp:page >
< xsp:logic >
... form logic here ...
< /xsp:logic >
< html >
< head >< title >An Example Form< /title >< /head >
< body >
< h1 >An Example Form< /h1 >
< f:form >
... form definition here ...
< /f:form >
< /body >
< /html >
< /xsp:page >
[Note that the page-global methods is a useful technique in other situations, because unlike Apache::Registry scripts, this wont create a closure from methods defined there].
<<lessSYNOPSIS
AxAddXSPTaglib AxKit::XSP::PerForm
PerForm is a large and complex taglib for AxKit XSP that facilitates creating large and complex HTML, WML, or other types of data-entry forms. PerForm tends to make life easier for you if your form data is coming from different data sources, such as DBI, or even XML.
PerForm works as an XSP taglib, meaning you simply add some custom XML tags to your XSP page, and PerForm does the rest. Well, almost... PerForm works mainly by callbacks, as you will see below.
EXAMPLE FORM
Ignoring the outside XSP and namespace declarations, assuming the prefix "f" is bound to the PerForm namespace:
< f:form name="add_user" >
First name: < f:textfield name="firstname" width="30" maxlength="50"/ >
< br / >
Last name: < f:textfield name="lastname" width="30" maxlength="50"/ >
< br / >
< f:submit name="save" value="Save" goto="users.xsp" / >
< f:cancel name="cancel" value="Cancel" goto="home.html" / >
< /f:form >
Now it is important to bear in mind that this is just the form, and alone it is fairly useless. You also need to add callbacks. Youll notice with each of these callbacks you recieve a $ctxt object. This is simply an empty hash-ref that you can use in the callbacks to maintain state. Actually "empty" is an exhageration - it contains two entries always: Form and Apache. "Form" is a simply a hashref of the entries in the form (actually it is an Apache::Table object, which allows for supporting multi-valued parameters). So for example, the firstname below is in $ctxt-{Form}{firstname} >. "Apache" is the $r apache request object for the current request, which is useful for access to the URI or headers.
sub validate_firstname {
my ($ctxt, $value) = @_;
$value =~ s/^s*//;
$value =~ s/s*$//;
die "No value" unless $value;
die "Invalid firstname - non word character not allowed"
if $value =~ /W/;
}
sub validate_lastname {
return validate_firstname(@_);
}
sub submit_save {
my ($ctxt) = @_;
# save values to a database
warn("User: ", $ctxt->{Form}{firstname}, " ", $ctxt->{Form}{lastname}, "n");
}
Now these methods need to be global to your XSP page, rather than "closures" within the XSP pages main handler routine. How do you do that? Well its simple. Just put them within a < xsp:logic > section before any user defined tags. For example, if your XSP page happens to use XHTML as its basic format (something I do a lot), your page might be constructed as follows (namespace declarations omitted for brevity):
< xsp:page >
< xsp:logic >
... form logic here ...
< /xsp:logic >
< html >
< head >< title >An Example Form< /title >< /head >
< body >
< h1 >An Example Form< /h1 >
< f:form >
... form definition here ...
< /f:form >
< /body >
< /html >
< /xsp:page >
[Note that the page-global methods is a useful technique in other situations, because unlike Apache::Registry scripts, this wont create a closure from methods defined there].
Download (0.013MB)
Added: 2007-07-23 License: Perl Artistic License Price:
823 downloads
Flash Operator Panel 0.26
Flash Operator Panel is a switchboard type application for the Asterisk PBX. more>>
Flash Operator Panel is a switchboard type application for the Asterisk PBX. It runs on a web browser with the flash plugin.
It is able to display information about your PBX activity in real time. The layout is configurable (button sizes and colors, icons, etc). You can have more than 100 buttons active per screen. On the Live Demo there are 28 buttons defined.
It also supports contexts: you can have one server running and many different client displays (for hosted PBX, different departments, etc). It can integrate with CRM software, by poping up a web page (and passing the CLID) when a specified button is ringing.
You can see at a glance:
- What extensions are busy, ringing or available
- Who is talking and to whom (clid, context, priority)
- SIP and IAX registration status and reachability
- Meetme room status (number of participants)
- Queue status (number of users waiting)
- Message Waiting Indicator and count
- Parked channels
- Logged in Agents
You can perform these actions:
- Hang-up a channel
- Transfer a call leg via drag&drop
- Originate calls via drag&drop
- Barge in on a call using drag&drop
- Set the caller id when transferring or originating a call
- Automatically pop up web page with customer details
- Click-to-Dial from a web page
- Mute/Unmute meetme participants
- It has two parts: a server writen in PERL, and the flash client. It was tested and its known to work under Windows, Mac and Linux browsers.
<<lessIt is able to display information about your PBX activity in real time. The layout is configurable (button sizes and colors, icons, etc). You can have more than 100 buttons active per screen. On the Live Demo there are 28 buttons defined.
It also supports contexts: you can have one server running and many different client displays (for hosted PBX, different departments, etc). It can integrate with CRM software, by poping up a web page (and passing the CLID) when a specified button is ringing.
You can see at a glance:
- What extensions are busy, ringing or available
- Who is talking and to whom (clid, context, priority)
- SIP and IAX registration status and reachability
- Meetme room status (number of participants)
- Queue status (number of users waiting)
- Message Waiting Indicator and count
- Parked channels
- Logged in Agents
You can perform these actions:
- Hang-up a channel
- Transfer a call leg via drag&drop
- Originate calls via drag&drop
- Barge in on a call using drag&drop
- Set the caller id when transferring or originating a call
- Automatically pop up web page with customer details
- Click-to-Dial from a web page
- Mute/Unmute meetme participants
- It has two parts: a server writen in PERL, and the flash client. It was tested and its known to work under Windows, Mac and Linux browsers.
Download (0.23MB)
Added: 2006-05-10 License: GPL (GNU General Public License) Price:
727 downloads
PacKommander 2.5
PacKommander is a GUI wrapper for the pacman package manager of Arch Linux. more>>
PacKommander is a GUI wrapper for the pacman package manager of Arch Linux.
It is my very first Kommander script; but it does the job pretty well. Use it to install, upgrade, search, remove, query packages (local or repository) as well as synchronize database, upgrade system and clear file cache.
Main features:
- Quite light-weight and fast.
- Can perform almost all the tasks that CLI pacman can do. This includes install /upgrade /remove /query /view details /search packages both from server repositories as well as local packages in hard disk.
- Can be (in fact, must be) started as normal user to perform non-admin tasks like search/query pacakges. Root privilege is sought for automatically (using gksudo) as and when required (e.g. to install/remove packages).
- Can handle multiple packages at a time using a Package Queue system. Essentially, a list of queued packages is shown (packages can be added/removed from queue), from where you can select and manipulate multiple packages.
- Certain tasks like Upgrading entire system, syncing database with server, clearing cache, optimizing pacman, etc can be done by a click of a button.
- Hand-editing of certain configuration files is also supported using nano editor in xterm.
- Every task is actually carried out by pacman. The progress can be seen in the external xterm window and the user has to interact with it limitedly (for confirmations, etc.)
- The UI is fully configurable using Kommander-editor.
<<lessIt is my very first Kommander script; but it does the job pretty well. Use it to install, upgrade, search, remove, query packages (local or repository) as well as synchronize database, upgrade system and clear file cache.
Main features:
- Quite light-weight and fast.
- Can perform almost all the tasks that CLI pacman can do. This includes install /upgrade /remove /query /view details /search packages both from server repositories as well as local packages in hard disk.
- Can be (in fact, must be) started as normal user to perform non-admin tasks like search/query pacakges. Root privilege is sought for automatically (using gksudo) as and when required (e.g. to install/remove packages).
- Can handle multiple packages at a time using a Package Queue system. Essentially, a list of queued packages is shown (packages can be added/removed from queue), from where you can select and manipulate multiple packages.
- Certain tasks like Upgrading entire system, syncing database with server, clearing cache, optimizing pacman, etc can be done by a click of a button.
- Hand-editing of certain configuration files is also supported using nano editor in xterm.
- Every task is actually carried out by pacman. The progress can be seen in the external xterm window and the user has to interact with it limitedly (for confirmations, etc.)
- The UI is fully configurable using Kommander-editor.
Download (0.053MB)
Added: 2007-06-27 License: GPL (GNU General Public License) Price:
849 downloads
Kommander 1.3
Kommander is a two part application. more>>
Kommander project is a two part application. The first part is the editor where you visually build dialogs and applications and edit the scripting elements. The second part is the executor which processes the generated XML file.
Kommander is a non traditional "disruptive" technology. It does not compile applications but it does not do build its interface through interpreted scripting and its DCOP calls are compiled functions.
So it produces dialogs and applications that are very small for internet transmission, run very fast and do not have binary issues.
Kommander dialogs integrate easily into KDE applications because it speaks their Inter Process Communication language, DCOP.
They can perform thousands of operatons per second and they have a full compliment of KDE widgets to build with. If you are an application developer you can also easily add widget plugins as well as use Kommander to deliver internationalized extentions to your users that dont require compiling.
Enhancements:
- 1.3 is a development release because it is not part of the official KDE packages as it introduces features and strings.
- It is however mostly a bug fix release with a new text editor and is backwards compatible with the latest 3.5x release.
- It is HIGHLY recommended for all people using the editor.
- Its a major improvement.
<<lessKommander is a non traditional "disruptive" technology. It does not compile applications but it does not do build its interface through interpreted scripting and its DCOP calls are compiled functions.
So it produces dialogs and applications that are very small for internet transmission, run very fast and do not have binary issues.
Kommander dialogs integrate easily into KDE applications because it speaks their Inter Process Communication language, DCOP.
They can perform thousands of operatons per second and they have a full compliment of KDE widgets to build with. If you are an application developer you can also easily add widget plugins as well as use Kommander to deliver internationalized extentions to your users that dont require compiling.
Enhancements:
- 1.3 is a development release because it is not part of the official KDE packages as it introduces features and strings.
- It is however mostly a bug fix release with a new text editor and is backwards compatible with the latest 3.5x release.
- It is HIGHLY recommended for all people using the editor.
- Its a major improvement.
Download (1.2MB)
Added: 2006-09-19 License: GPL (GNU General Public License) Price:
1133 downloads
THC-LEAPcracker 0.1
THC LEAP Cracker Tool suite contains tools to break the NTChallengeResponse encryption technique. more>>
THC-LEAPcracker suite contains tools to break the NTChallengeResponse encryption technique e.g. used by Cisco Wireless LEAP Authentication.
Also tools for spoofing challenge-packets from Access Points are included, so you are able to perform dictionary attacks against all users.
<<lessAlso tools for spoofing challenge-packets from Access Points are included, so you are able to perform dictionary attacks against all users.
Download (0.17MB)
Added: 2006-03-08 License: GPL (GNU General Public License) Price:
1326 downloads
checksysreport 1.0-0
checksysreport performs some automatic tests against a directory containing an untarred Red Hat Enterprise Linux sysreport. more>>
checksysreport project can perform some automatic tests against a directory containing an untarred Red Hat Enterprise Linux sysreport.
You will need a valid Red Hat Network login in order to use it, as it fetches information from RHN using the RHN API (see https://rhn.redhat.com/rpc/api/).
A graphical tool, yadarh, is also included: it uses the cache generated by checksysreport to display RPMs in a given channel and lets you browse them to have a list of errata and new entries in changelogs that come with other versions of the same package.
Enhancements:
Checksysreport 1.0 comes with a server and a client side so several clients can share a common cache repository.
- There is a checksysreport-server package that share its cache to checksysreport clients using postgresql.
- The server also accept sysreports to analyse from a web page.
- A cosmetic bug when copying changelogs diff in yadarh has been fixed.
- Fetching data from rhn is threaded.
- Client can be configured to use a satellite instead of rhn.redhat.com
- Makefile works for 108.redhat.coms svn
- Cleaner packaging, thanks to David Juran.
<<lessYou will need a valid Red Hat Network login in order to use it, as it fetches information from RHN using the RHN API (see https://rhn.redhat.com/rpc/api/).
A graphical tool, yadarh, is also included: it uses the cache generated by checksysreport to display RPMs in a given channel and lets you browse them to have a list of errata and new entries in changelogs that come with other versions of the same package.
Enhancements:
Checksysreport 1.0 comes with a server and a client side so several clients can share a common cache repository.
- There is a checksysreport-server package that share its cache to checksysreport clients using postgresql.
- The server also accept sysreports to analyse from a web page.
- A cosmetic bug when copying changelogs diff in yadarh has been fixed.
- Fetching data from rhn is threaded.
- Client can be configured to use a satellite instead of rhn.redhat.com
- Makefile works for 108.redhat.coms svn
- Cleaner packaging, thanks to David Juran.
Download (0.085MB)
Added: 2007-05-13 License: GPL (GNU General Public License) Price:
896 downloads
ManyEars 0.1.0
ManyEars project makes use of an array of microphones to perform sound source localization, tracking, and separation. more>>
ManyEars project makes use of an array of microphones to perform sound source localization, tracking, and separation.
It is designed to provide auditory capabilities to mobile robots, but it can equally be used for video conferencing or other applications. The project is based on the FlowDesigner development environment.
<<lessIt is designed to provide auditory capabilities to mobile robots, but it can equally be used for video conferencing or other applications. The project is based on the FlowDesigner development environment.
Download (0.43MB)
Added: 2007-05-31 License: GPL (GNU General Public License) Price:
876 downloads
cxSSHAdmin 0.7
cxSSHAdmin is a menu (ncurses with dialog) based utility to perform various administration tasks via SSH. more>>
cxSSHAdmin is a menu (ncurses with dialog) based utility to perform various administration tasks via SSH.
Main features:
- The ability to login to a selected host from a list
- Ability to execute one command on multiple hosts from a list
- Enable password-less access to hosts, using ssh keys.
- Automatically scan the subnet, and generates a hosts list
TODO/Bugs/etc:
- Redirect command output on multiple hosts to email if the user wants it.
- Run command on multiple hosts in *paralell* instead of the current serial way..
- The network scanning progressbar doesnt seem very linear.. I might fix this in the future..
- Ability to tunnel into a firewalled network and perform login/commands on remote hosts
<<lessMain features:
- The ability to login to a selected host from a list
- Ability to execute one command on multiple hosts from a list
- Enable password-less access to hosts, using ssh keys.
- Automatically scan the subnet, and generates a hosts list
TODO/Bugs/etc:
- Redirect command output on multiple hosts to email if the user wants it.
- Run command on multiple hosts in *paralell* instead of the current serial way..
- The network scanning progressbar doesnt seem very linear.. I might fix this in the future..
- Ability to tunnel into a firewalled network and perform login/commands on remote hosts
Download (0.004MB)
Added: 2006-02-12 License: GPL (GNU General Public License) Price:
1350 downloads

Visual Paradigm for UML (CE - Linux) 2.2
Visual Paradigm for UML is an ALL-IN-ONE Visual Development Platform. more>> Visual Paradigm for UML (VP-UML) is an ALL-IN-ONE Visual Development Platform. VP-UML supports the full development life cycle, the latest UML notation for visual modeling and code generation. It also embedded with a full-featured IDE for coding and round-trip code engineering. Software developers can perform Model-Code-Deploy effectively and efficiently within one unique visual development platform. VP-UML Community Edition is absolutely free. Download and try it out now!<<less
Download (100.00MB)
Added: 2009-04-07 License: Freeware Price: Free
203 downloads
Planner.el 3.41
Planner.el project is an Emacs organizer. more>>
Planner.el project is an Emacs organizer.
Planner.el is an organizer module for GNU Emacs and XEmacs. It tracks tasks, appointments, and notes in plain text files, which may be published via emacs-wiki.
planner.el is an Emacs module that gives me a summary view of my tasks, schedule, and notes inside Emacs (which incidentally has a nice graphical interface, too). Together with emacs-wiki.el, it lets me easily manage my website.
Another ultra-handy thing is M-x remember from remember.el, which pops up a buffer asking me what I want to remember and stores a note in my daily planner page. For example, this is one such note created by remember.el. A patch contributed by Thomas Gehrlein allows easy navigation of planner pages - simply select dates from M-x calendar.
Personally, I prefer this text-file-based system to Evolution or Korganizer. I remember dropping down to M-x grep to quickly search for something in my daily planner files. I can backup my data files in a .tar.gz. I can perform diffs and version control (although I havent gotten around to doing so yet!). I can even run it in conjunction with the Remembrance Agent.
<<lessPlanner.el is an organizer module for GNU Emacs and XEmacs. It tracks tasks, appointments, and notes in plain text files, which may be published via emacs-wiki.
planner.el is an Emacs module that gives me a summary view of my tasks, schedule, and notes inside Emacs (which incidentally has a nice graphical interface, too). Together with emacs-wiki.el, it lets me easily manage my website.
Another ultra-handy thing is M-x remember from remember.el, which pops up a buffer asking me what I want to remember and stores a note in my daily planner page. For example, this is one such note created by remember.el. A patch contributed by Thomas Gehrlein allows easy navigation of planner pages - simply select dates from M-x calendar.
Personally, I prefer this text-file-based system to Evolution or Korganizer. I remember dropping down to M-x grep to quickly search for something in my daily planner files. I can backup my data files in a .tar.gz. I can perform diffs and version control (although I havent gotten around to doing so yet!). I can even run it in conjunction with the Remembrance Agent.
Download (0.38MB)
Added: 2007-06-11 License: GPL (GNU General Public License) Price:
867 downloads
crops 0.8
crops project helps with previewing and printing non-Latin1 characters in PostScript files. more>>
crops project helps with previewing and printing non-Latin1 characters in PostScript files.
Main features:
- perform arbitrary font remappings (substitutions) in a PostScript document
- help you print non-latin1 encoded documents, by downloading and recoding fonts
<<lessMain features:
- perform arbitrary font remappings (substitutions) in a PostScript document
- help you print non-latin1 encoded documents, by downloading and recoding fonts
Download (0.15MB)
Added: 2006-10-05 License: GPL (GNU General Public License) Price:
1116 downloads
domainFinder 0.3
domainFinder allows you to perform whois lookups on any url on a webpage. more>>
domainFinder allows you to perform whois lookups on any url on a webpage.
domainFinder firefox extension
Quickly carry out whois lookups on any url on a webpage or carry out a keyword domain search on any highlighted phrase or text.
<<lessdomainFinder firefox extension
Quickly carry out whois lookups on any url on a webpage or carry out a keyword domain search on any highlighted phrase or text.
Download (0.007MB)
Added: 2007-04-13 License: MPL (Mozilla Public License) Price:
927 downloads
Balder2D 1.0 RC1
Balder2D is a 2D shooter in Zero gravity. more>>
Balder2D is a 2D shooter in Zero gravity.
Balder2D uses SDL, with the SDL_image, SDL_mixer, Guichan, GNE, and Boost Filesystem libraries.
You will need to install these to build/run the program. Balder2D also requires Python for the AI to work. The source for Balder 2D is available in the "balder2d" module in cvs.
In Balder2D, players control small probes which shoot tiny projectiles with which they try to destroy each other. It features a 2D overhead view of the playing field. Probes may be human or computer controlled.
A probe can perform the following actions:
rotate
fire projectiles
"stick" to a wall
push off of a wall
If a probe is not in "stick" mode (ie, the stick/push key is not being held down), it will bounce off of walls.
If a probe is in "stick" mode, when it hits a wall it will stop. The player may then turn the probe to point in a new direction and "push off" of the wall (by holding, and then releasing the stick/push key), propelling the probe in that new direction.
Players may rotate their probes while in flight, but the only way to change the direction or speed of flight is by firing projectiles (which gives a small kick in the opposite direction)or by running into walls or other probes.
Probes have a limited number of projectiles that can be fired in a given time; there is a maximum ammo capacity, which has a finite recharge rate.
<<lessBalder2D uses SDL, with the SDL_image, SDL_mixer, Guichan, GNE, and Boost Filesystem libraries.
You will need to install these to build/run the program. Balder2D also requires Python for the AI to work. The source for Balder 2D is available in the "balder2d" module in cvs.
In Balder2D, players control small probes which shoot tiny projectiles with which they try to destroy each other. It features a 2D overhead view of the playing field. Probes may be human or computer controlled.
A probe can perform the following actions:
rotate
fire projectiles
"stick" to a wall
push off of a wall
If a probe is not in "stick" mode (ie, the stick/push key is not being held down), it will bounce off of walls.
If a probe is in "stick" mode, when it hits a wall it will stop. The player may then turn the probe to point in a new direction and "push off" of the wall (by holding, and then releasing the stick/push key), propelling the probe in that new direction.
Players may rotate their probes while in flight, but the only way to change the direction or speed of flight is by firing projectiles (which gives a small kick in the opposite direction)or by running into walls or other probes.
Probes have a limited number of projectiles that can be fired in a given time; there is a maximum ammo capacity, which has a finite recharge rate.
Download (8.8MB)
Added: 2006-10-31 License: GPL (GNU General Public License) Price:
1088 downloads
jscl-meditor 2.3
jscl-meditor is a java symbolic computing library and mathematical editor. more>>
jscl-meditor is a java symbolic computing library and mathematical editor.
Main features:
- polynomial system solving
- vectors and matrices
- factorization
- derivatives
- integrals (rational functions)
- boolean algebra
- simplification
- MathML output
- Java code generation
- geometric algebra
Regarding readability, the goal is to produce a code as nice and short as the pseudo-code found in textbooks or research papers. As an illustration, here is what the Euclidean algorithm would look like:
Polynomial gcd(Polynomial p, Polynomial q) {
while(q.signum()!=0) {
Polynomial r=p.remainder(q);
p=q;
q=r;
}
return p;
}
It entails a dedicated development effort. This choice of clear coding, enabled by java, may have consequences in terms of performance compared to other software. But it could be worth the commitment, in the respect that understanding an algorithm just by looking at the code is made possible. For instance, object-orientation allows to hide ugly optimizations behind a clean, easy to use interface.
Some may doubt however that java will ever be as clear as C++ because it doesnt provide operator overloading, which means that a+b is written a.add(b), and will remain as such. The interested reader can look at the ongoing discussion on the matter at Sun.
As for portability, it means that a lot of platforms are available at no cost, from powerful unix workstations or servers to handheld devices. To make it possible, the project is split in two parts : the engine (jscl) and the mathematical editor front-end (meditor). The engine is usable interactively or in batch mode from a java shell interpreter (like BeanShell for instance), or as a java library in any third-party application.
The front-end has currently two implementations (see below). Among others, it is intended for taking course notes. With it, a student can perform the calculations asked by their teacher fast and reliably. The plain text format should make the exchange of notes easy. The produced worksheets can be published on-line thanks to the MathML output feature, for instance on meditorworld (MathML capable browser needed, tested to work with Mozilla).
<<lessMain features:
- polynomial system solving
- vectors and matrices
- factorization
- derivatives
- integrals (rational functions)
- boolean algebra
- simplification
- MathML output
- Java code generation
- geometric algebra
Regarding readability, the goal is to produce a code as nice and short as the pseudo-code found in textbooks or research papers. As an illustration, here is what the Euclidean algorithm would look like:
Polynomial gcd(Polynomial p, Polynomial q) {
while(q.signum()!=0) {
Polynomial r=p.remainder(q);
p=q;
q=r;
}
return p;
}
It entails a dedicated development effort. This choice of clear coding, enabled by java, may have consequences in terms of performance compared to other software. But it could be worth the commitment, in the respect that understanding an algorithm just by looking at the code is made possible. For instance, object-orientation allows to hide ugly optimizations behind a clean, easy to use interface.
Some may doubt however that java will ever be as clear as C++ because it doesnt provide operator overloading, which means that a+b is written a.add(b), and will remain as such. The interested reader can look at the ongoing discussion on the matter at Sun.
As for portability, it means that a lot of platforms are available at no cost, from powerful unix workstations or servers to handheld devices. To make it possible, the project is split in two parts : the engine (jscl) and the mathematical editor front-end (meditor). The engine is usable interactively or in batch mode from a java shell interpreter (like BeanShell for instance), or as a java library in any third-party application.
The front-end has currently two implementations (see below). Among others, it is intended for taking course notes. With it, a student can perform the calculations asked by their teacher fast and reliably. The plain text format should make the exchange of notes easy. The produced worksheets can be published on-line thanks to the MathML output feature, for instance on meditorworld (MathML capable browser needed, tested to work with Mozilla).
Download (1.8MB)
Added: 2007-08-06 License: LGPL (GNU Lesser General Public License) Price:
812 downloads
Atlantis Installer 1.0.1
Atlantis Installer is an installation wizard built to simplify installing PHP-GTK2 applications. more>>
Atlantis Installer is an installation wizard built to simplify installing PHP-GTK2 applications on multiple platforms as an alternate solution to using PEAR. Atlantis Installer allows you to build your application with the structure you want and drop it nicely as one package.
However not limited to installing PHP-GTK2 applications, this installer does require that PHP and GTK2 libraries be installed. To use this for non PHP-GTK2 apps, the end user would have first install the Gnope package (Windows) or install PHP, GTK2, and the PHP module manually (Linux). This is something someone looking to run PHP-GTK2 apps has probably already done, and hopefully in the future Linux distributions will come prepared for PHP like most do with Perl and/or Python.
The standard setup of the installer works like this. Upon launch it greets the user, prompts them to click next. Then it asks for the location the user would like to install, and then click next. It then installs the package and outputs the status live in the output box. Though configuration you can set default paths and change the look of the installer.
With scripting you can perform additional tasks during the actual install step (like if you need to chmod or rename a file). The installer automaticly checks if it can install to the directory the user specified, and if it can then it creates the necessary directory structure.
<<lessHowever not limited to installing PHP-GTK2 applications, this installer does require that PHP and GTK2 libraries be installed. To use this for non PHP-GTK2 apps, the end user would have first install the Gnope package (Windows) or install PHP, GTK2, and the PHP module manually (Linux). This is something someone looking to run PHP-GTK2 apps has probably already done, and hopefully in the future Linux distributions will come prepared for PHP like most do with Perl and/or Python.
The standard setup of the installer works like this. Upon launch it greets the user, prompts them to click next. Then it asks for the location the user would like to install, and then click next. It then installs the package and outputs the status live in the output box. Though configuration you can set default paths and change the look of the installer.
With scripting you can perform additional tasks during the actual install step (like if you need to chmod or rename a file). The installer automaticly checks if it can install to the directory the user specified, and if it can then it creates the necessary directory structure.
Download (0.072MB)
Added: 2006-09-12 License: GPL (GNU General Public License) Price:
1150 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 can perform 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