agenda
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 22
Agenda Displayer 1.4
Agenda is a Web-based application that let you manage your appointments. more>>
Agenda is a Web-based application that let you manage your appointments.
It can display information by day, week, month, and year. Agenda Displayer supports official holidays.
Enhancements:
- This release added a world clock, an astrological calendar, a todo handler, a login system, a countdown function, support for generating iCal files with a .ics extension, a new way to handle your annual days off, sunrise and sunset times, and moon phase classes.
<<lessIt can display information by day, week, month, and year. Agenda Displayer supports official holidays.
Enhancements:
- This release added a world clock, an astrological calendar, a todo handler, a login system, a countdown function, support for generating iCal files with a .ics extension, a new way to handle your annual days off, sunrise and sunset times, and moon phase classes.
Download (0.18MB)
Added: 2006-05-09 License: GPL (GNU General Public License) Price:
1270 downloads
Agendaroids 2002.03.07
Agendaroids is an Asteroids clone for the Agenda VR3 PDA. more>>
Agendaroids is an "Asteroids" clone for the Agenda VR3 PDA.
Agendaroids is a game where you maneuver a space ship in a field of asteroids, and shoot at them to break them into smaller pieces.
It uses vector-based graphics with fixed-point trigonometry, so it runs well even on the FPU-less VR3, but it also runs on any other Xlib-based system.
Main features:
- Smooth vector graphics
- Dark-on-light display; better for greyscale LCD screens
- Light-on-dark display for monitors and color LCDs
- Looks really cool with the backlight on!
- Rotating asteroids
- Fast, table-based trigonometric functions
- Agenda-friendly key controls (as well as PC keyboard alternative)
- Sound effects (via piezo buzzer)
- Pause and resume (even if you quit)
- ... and more!
<<lessAgendaroids is a game where you maneuver a space ship in a field of asteroids, and shoot at them to break them into smaller pieces.
It uses vector-based graphics with fixed-point trigonometry, so it runs well even on the FPU-less VR3, but it also runs on any other Xlib-based system.
Main features:
- Smooth vector graphics
- Dark-on-light display; better for greyscale LCD screens
- Light-on-dark display for monitors and color LCDs
- Looks really cool with the backlight on!
- Rotating asteroids
- Fast, table-based trigonometric functions
- Agenda-friendly key controls (as well as PC keyboard alternative)
- Sound effects (via piezo buzzer)
- Pause and resume (even if you quit)
- ... and more!
Download (0.042MB)
Added: 2006-11-25 License: GPL (GNU General Public License) Price:
1064 downloads
MandrivaMove 2.0
MandrivaMove is a LiveCD distribution from the popular Mandriva Linux operating system. more>>
MandrivaMove is a LiveCD distribution from the popular Mandriva Linux operating system.
Have you always wanted to try out Linux but were afraid you werent up to the task? Heres Move, the easiest and safest way to test drive Linux.
Built on the Live-CD technology, Move enables you to run a full operating system from just one CD, anywhere, without the need for installation. Move is truly mobile. This is the only product of its kind to offer built-in handling of USB keys, allowing for automatic and seamless backup of configuration settings, as well as user data, up to 1.5 GB.
Move features the award-winning Mandriva Linux, widely recognized for its user-friendliness, together with a collection of applications equivalent to or compatible with Microsoft Windows software. So there are no more barriers to prevent you from taking off into the Linux world.
Main features:
Secure
- Move does not require an installation.
- Move does not modify anything on the host computer.
- Move cannot be damaged: everything is on the CD.
Anywhere, Anytime
- Move works on most computers.
- Using a USB* key, Move saves all your data and settings.
- Move also allows read access to documents on the host computer.
A great collection of applications
- The most recent Linux kernel: Kernel 2.6
- The most advanced desktop environment: KDE 3.2
Administration
- Configuration tools: Mandriva Linux Control Center
Office
- Microsoft Office compatible: OpenOffice.org
- Personal information manager (e-mail, contacts, agenda, etc.): Kontact
- Project manager: Planner
- Personal finance manager: GnuCash
Internet
- Web browser: Konqueror
- Instant messaging (ICQ, AIM, MSN, Yahoo! compatible): Kopete
- File transfer: KBear
- Web site editing: Mozilla Composer
Multimedia
- Media player: Totem
- Audio editor: Audacity
- Image manipulation: The GIMP
- Scanning: Kooka
- CD/DVD Burning: K3B
<<lessHave you always wanted to try out Linux but were afraid you werent up to the task? Heres Move, the easiest and safest way to test drive Linux.
Built on the Live-CD technology, Move enables you to run a full operating system from just one CD, anywhere, without the need for installation. Move is truly mobile. This is the only product of its kind to offer built-in handling of USB keys, allowing for automatic and seamless backup of configuration settings, as well as user data, up to 1.5 GB.
Move features the award-winning Mandriva Linux, widely recognized for its user-friendliness, together with a collection of applications equivalent to or compatible with Microsoft Windows software. So there are no more barriers to prevent you from taking off into the Linux world.
Main features:
Secure
- Move does not require an installation.
- Move does not modify anything on the host computer.
- Move cannot be damaged: everything is on the CD.
Anywhere, Anytime
- Move works on most computers.
- Using a USB* key, Move saves all your data and settings.
- Move also allows read access to documents on the host computer.
A great collection of applications
- The most recent Linux kernel: Kernel 2.6
- The most advanced desktop environment: KDE 3.2
Administration
- Configuration tools: Mandriva Linux Control Center
Office
- Microsoft Office compatible: OpenOffice.org
- Personal information manager (e-mail, contacts, agenda, etc.): Kontact
- Project manager: Planner
- Personal finance manager: GnuCash
Internet
- Web browser: Konqueror
- Instant messaging (ICQ, AIM, MSN, Yahoo! compatible): Kopete
- File transfer: KBear
- Web site editing: Mozilla Composer
Multimedia
- Media player: Totem
- Audio editor: Audacity
- Image manipulation: The GIMP
- Scanning: Kooka
- CD/DVD Burning: K3B
Download (660MB)
Added: 2005-08-12 License: GPL (GNU General Public License) Price:
1534 downloads
Ovidentia 6.3.3
Ovidentia is a professional collaborative/groupware portal generator more>>
Ovidentia is a professional collaborative/groupware portal generator featuring an administrable management tool with a workflow for the approval to publish articles, comments, files, or vacation requests.
It also features an agenda (shareable), an integrated directory, charts, an LDAP directory interface, add-ons support, a mail interface, and a WYSIWYG HTML editor to publish articles, news, posts, or write email. The project supports LDAP, Ovidentia, and Active Directory authentication.
Enhancements:
- Bugs correction
- Security corrective measures
- Vacation requests management evolutions
<<lessIt also features an agenda (shareable), an integrated directory, charts, an LDAP directory interface, add-ons support, a mail interface, and a WYSIWYG HTML editor to publish articles, news, posts, or write email. The project supports LDAP, Ovidentia, and Active Directory authentication.
Enhancements:
- Bugs correction
- Security corrective measures
- Vacation requests management evolutions
Download (2.1MB)
Added: 2007-05-11 License: GPL (GNU General Public License) Price:
896 downloads
Aliens 2001.05.18
Aliens project is a slide at the bottom shooting game written for the Agenda VR3 Linux-based PDA. more>>
Aliens project is a "slide at the bottom" shooting game written for the Agenda VR3 Linux-based PDA.
It is played with the Agenda held in a sideways position. The PgUp/PgDn buttons (on the side of the Agenda) move the ship left and right, and the Left or Right arrow buttons (on the front) are used for shooting.
Since its an X-Window program, it also runs on Linux and Unix desktops, and should be trivial to port to other Linux-based PDAs, like the iPaq or the Zaurus (running X-Window).
Main features:
- Two gameplay modes:
- "Swooping" - Similar to the arcade game "Galaxian." The aliens hang around at the top of the screen and occasionally swoop down to attack you.
- "Marching" - Similar to the arcade game "Space Invaders." The aliens march back and forth across the screen and come down towards you as a group.
- Built-in help
- Explains the gameplay, scoring, and controls
- Sound effects
- Buzzer-based sound effects
- Source included
- Aliens is an Open Source product, released under the GNU General Public License (GPL).
- Now part of Agenda!
- The folks from Agenda Computing liked it so much that it shipped with the Agenda VR3 PDA!
<<lessIt is played with the Agenda held in a sideways position. The PgUp/PgDn buttons (on the side of the Agenda) move the ship left and right, and the Left or Right arrow buttons (on the front) are used for shooting.
Since its an X-Window program, it also runs on Linux and Unix desktops, and should be trivial to port to other Linux-based PDAs, like the iPaq or the Zaurus (running X-Window).
Main features:
- Two gameplay modes:
- "Swooping" - Similar to the arcade game "Galaxian." The aliens hang around at the top of the screen and occasionally swoop down to attack you.
- "Marching" - Similar to the arcade game "Space Invaders." The aliens march back and forth across the screen and come down towards you as a group.
- Built-in help
- Explains the gameplay, scoring, and controls
- Sound effects
- Buzzer-based sound effects
- Source included
- Aliens is an Open Source product, released under the GNU General Public License (GPL).
- Now part of Agenda!
- The folks from Agenda Computing liked it so much that it shipped with the Agenda VR3 PDA!
Download (0.057MB)
Added: 2006-12-07 License: GPL (GNU General Public License) Price:
1084 downloads
GoWeather 2001.10.24
GoWeather graphically displays current conditions and 5-day forecast for a location. more>>
GoWeather graphically displays current conditions and 5-day forecast for a location.
It displays an attractive representation the current weather conditions for a particular location, along with upcoming weather forecasts.
The source of the data are small, text-based reports in a standard format (METAR and Zone Forecast (ZFP)) made available from an unchanging, reliable source (the National Weather Service (NWS)).
GoWeather is FLTK-based, has a small form-factor, and the data files are very small and can be accessed offline.
This means GoWeather is suitable for Linux handhelds (like the Agenda VR3 PDA).
Enhancements:
- Initial upload to SourceForge CVS CHANGES.txt created
- Added some "uploading to Agenda" info. to "INSTALL.txt"
- Updated GoWeather URL in documents and files
- References to "Go Weather" changed to "GoWeather"
- "About" dialog window created
<<lessIt displays an attractive representation the current weather conditions for a particular location, along with upcoming weather forecasts.
The source of the data are small, text-based reports in a standard format (METAR and Zone Forecast (ZFP)) made available from an unchanging, reliable source (the National Weather Service (NWS)).
GoWeather is FLTK-based, has a small form-factor, and the data files are very small and can be accessed offline.
This means GoWeather is suitable for Linux handhelds (like the Agenda VR3 PDA).
Enhancements:
- Initial upload to SourceForge CVS CHANGES.txt created
- Added some "uploading to Agenda" info. to "INSTALL.txt"
- Updated GoWeather URL in documents and files
- References to "Go Weather" changed to "GoWeather"
- "About" dialog window created
Download (0.064MB)
Added: 2006-09-26 License: GPL (GNU General Public License) Price:
1126 downloads
GoVRec 0.99c
GoVRec consists of software for recording Go games on a Linux PDA. more>>
GoVRec consists of software for recording Go games on a Linux PDA.
GoVRec is software for recording Go games on a Linux PDA. It was developed for the Agenda VR3 but uses XLib only, so it can be compiled on any computer with X11.
Also, due to its layout it is easily portable to any PDA which can be programmed in C++. It features autosaving, sound, adding/replacing stones, browsing variations, etc.
System requirements:
- XLib
<<lessGoVRec is software for recording Go games on a Linux PDA. It was developed for the Agenda VR3 but uses XLib only, so it can be compiled on any computer with X11.
Also, due to its layout it is easily portable to any PDA which can be programmed in C++. It features autosaving, sound, adding/replacing stones, browsing variations, etc.
System requirements:
- XLib
Download (0.040MB)
Added: 2007-01-15 License: GPL (GNU General Public License) Price:
1012 downloads
AspectES 0.1
AspectES is an implementation of Aspect-Oriented Programming in JavaScript 1.5, as standardized by EcmaScript Specification 262. more>>
AspectES is an implementation of Aspect-Oriented Programming in JavaScript 1.5, as standardized by EcmaScript Specification 262.
AspectES project contains core classes that enable software engineers to gracefully develop JavaScript applications that have clear, well-documented designs that incorporate Aspect Oriented Programming.
This project only uses standardized Web technologies: JavaScript 1.5, with no proprietary extensions. The framework is documented with JavaScriptdoc.
Mission:
Produce a superior implementation of Aspect-Oriented Programming in JavaScript v1.5, as standardized by EcmaScript Specification 262.
Scope: A package framework that contains core classes that enable software engineers to gracefully develop JavaScript applications that have clear, well-documented designs incorporating Aspect Oriented Programming.
Agenda:
Current:
- This framework powers the drag-and-drop capability in the (open-source) Gigapan Explorer Application, delivered to the United States NASA in late 2005.
- This project only uses standardized web technologies: JavaScript 1.5, with no proprietary extensions.
- Enjoy complete JavaScriptdoc as you develop this codebase.
- See the Coding Standard.
- See the tips on Debugging JavaScript.
Immediate Future:
- Develop a test suite that completely exercises the existing functionality.
- Log and fix bugs on said functionality.
- Identify additional desired functionality.
- Build a pluggable module for generating JavaScriptdoc from AspectES aspects and their associated yarn.
Enhancements:
- This version is now contained in its own tigris.org project, separate from the Gigapan Explorer application for which it was originally developed.
<<lessAspectES project contains core classes that enable software engineers to gracefully develop JavaScript applications that have clear, well-documented designs that incorporate Aspect Oriented Programming.
This project only uses standardized Web technologies: JavaScript 1.5, with no proprietary extensions. The framework is documented with JavaScriptdoc.
Mission:
Produce a superior implementation of Aspect-Oriented Programming in JavaScript v1.5, as standardized by EcmaScript Specification 262.
Scope: A package framework that contains core classes that enable software engineers to gracefully develop JavaScript applications that have clear, well-documented designs incorporating Aspect Oriented Programming.
Agenda:
Current:
- This framework powers the drag-and-drop capability in the (open-source) Gigapan Explorer Application, delivered to the United States NASA in late 2005.
- This project only uses standardized web technologies: JavaScript 1.5, with no proprietary extensions.
- Enjoy complete JavaScriptdoc as you develop this codebase.
- See the Coding Standard.
- See the tips on Debugging JavaScript.
Immediate Future:
- Develop a test suite that completely exercises the existing functionality.
- Log and fix bugs on said functionality.
- Identify additional desired functionality.
- Build a pluggable module for generating JavaScriptdoc from AspectES aspects and their associated yarn.
Enhancements:
- This version is now contained in its own tigris.org project, separate from the Gigapan Explorer application for which it was originally developed.
Download (1.1MB)
Added: 2006-03-06 License: MIT/X Consortium License Price:
1328 downloads
OpenCCG 0.9.0
OpenCCG project is a collection of natural language processing components. more>>
OpenCCG project is a collection of natural language processing components.
OpenCCG, the OpenNLP CCG Library, is a collection of natural language processing components and tools which provide support for parsing and realization with Combinatory Categorial Grammar (CCG).
Enhancements:
- Refactored realizer to put all no-sem edges on the agenda, which requires making an exception for edges with no indices in the implementation of the index filter, but otherwise yields a more uniform approach to creating edges.
- Refactored realizer to use representative edges (one per cat) instead of edge groups, which ends up being simpler on the whole and should be easier to explain.
- Refactored categories to allow for equality checks with and without taking the LFs into consideration.
- Refactored edge equiv classes to use coverage bit vector and cat sans LF to check equality.
- Refactored lex instantiation to produce all possible instantiations that respect the alt exclusivity constraints.
- Changed Sign, DerivationHistory to store rule object.
- Changed alt edge construction to create new LF from input signs and rule, since signs in equiv class of alts can now have different LFs.
- Added active alt tracking and completing of edges with optional bits.
- Changed HyloVar to check for equal types when checking for equality up to var renaming.
- Refactored generics to avoid type warnings in Eclipse.
- Relaxed LF chunking constraints to allow combinations with edges (or trackers more generally) that are shared across multiple alt set options.
- Added "shared" attribute to nominal terms to indicate references to nodes that are shared across alternatives in a disjunctive LF; then revamped and reinforced the LF chunking constraints.
- Fixed problem with signMap not pointing to opt-completed edge.
- Improved edge printing from realizer chart to show derivations.
- Updated realizer to keep edges whose signs have the simplest derivation, among those with the same surface words.
- Added filter for ungrammatical test cases in ccg-test text output.
- Added first draft of realizer manual.
<<lessOpenCCG, the OpenNLP CCG Library, is a collection of natural language processing components and tools which provide support for parsing and realization with Combinatory Categorial Grammar (CCG).
Enhancements:
- Refactored realizer to put all no-sem edges on the agenda, which requires making an exception for edges with no indices in the implementation of the index filter, but otherwise yields a more uniform approach to creating edges.
- Refactored realizer to use representative edges (one per cat) instead of edge groups, which ends up being simpler on the whole and should be easier to explain.
- Refactored categories to allow for equality checks with and without taking the LFs into consideration.
- Refactored edge equiv classes to use coverage bit vector and cat sans LF to check equality.
- Refactored lex instantiation to produce all possible instantiations that respect the alt exclusivity constraints.
- Changed Sign, DerivationHistory to store rule object.
- Changed alt edge construction to create new LF from input signs and rule, since signs in equiv class of alts can now have different LFs.
- Added active alt tracking and completing of edges with optional bits.
- Changed HyloVar to check for equal types when checking for equality up to var renaming.
- Refactored generics to avoid type warnings in Eclipse.
- Relaxed LF chunking constraints to allow combinations with edges (or trackers more generally) that are shared across multiple alt set options.
- Added "shared" attribute to nominal terms to indicate references to nodes that are shared across alternatives in a disjunctive LF; then revamped and reinforced the LF chunking constraints.
- Fixed problem with signMap not pointing to opt-completed edge.
- Improved edge printing from realizer chart to show derivations.
- Updated realizer to keep edges whose signs have the simplest derivation, among those with the same surface words.
- Added filter for ungrammatical test cases in ccg-test text output.
- Added first draft of realizer manual.
Download (4.9MB)
Added: 2006-10-19 License: LGPL (GNU Lesser General Public License) Price:
1102 downloads
perlhack 5.8.8
perlhack is a Perl module that will show you how to hack at the Perl internals. more>>
perlhack is a Perl module that will show you how to hack at the Perl internals.
This document attempts to explain how Perl development takes place, and ends with some suggestions for people wanting to become bona fide porters.
The perl5-porters mailing list is where the Perl standard distribution is maintained and developed. The list can get anywhere from 10 to 150 messages a day, depending on the heatedness of the debate. Most days there are two or three patches, extensions, features, or bugs being discussed at a time.
A searchable archive of the list is at either:
http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/
or
http://archive.develooper.com/perl5-porters@perl.org/
List subscribers (the porters themselves) come in several flavours. Some are quiet curious lurkers, who rarely pitch in and instead watch the ongoing development to ensure theyre forewarned of new changes or features in Perl. Some are representatives of vendors, who are there to make sure that Perl continues to compile and work on their platforms. Some patch any reported bug that they know how to fix, some are actively patching their pet area (threads, Win32, the regexp engine), while others seem to do nothing but complain. In other words, its your usual mix of technical people.
Over this group of porters presides Larry Wall. He has the final word in what does and does not change in the Perl language. Various releases of Perl are shepherded by a "pumpking", a porter responsible for gathering patches, deciding on a patch-by-patch, feature-by-feature basis what will and will not go into the release. For instance, Gurusamy Sarathy was the pumpking for the 5.6 release of Perl, and Jarkko Hietaniemi was the pumpking for the 5.8 release, and Rafael Garcia-Suarez holds the pumpking crown for the 5.10 release.
In addition, various people are pumpkings for different things. For instance, Andy Dougherty and Jarkko Hietaniemi did a grand job as the Configure pumpkin up till the 5.8 release. For the 5.10 release H.Merijn Brand took over.
Larry sees Perl development along the lines of the US government: theres the Legislature (the porters), the Executive branch (the pumpkings), and the Supreme Court (Larry). The legislature can discuss and submit patches to the executive branch all they like, but the executive branch is free to veto them. Rarely, the Supreme Court will side with the executive branch over the legislature, or the legislature over the executive branch. Mostly, however, the legislature and the executive branch are supposed to get along and work out their differences without impeachment or court cases.
You might sometimes see reference to Rule 1 and Rule 2. Larrys power as Supreme Court is expressed in The Rules:
Larry is always by definition right about how Perl should behave. This means he has final veto power on the core functionality.
Larry is allowed to change his mind about any matter at a later date, regardless of whether he previously invoked Rule 1.
Got that? Larry is always right, even when he was wrong. Its rare to see either Rule exercised, but they are often alluded to.
New features and extensions to the language are contentious, because the criteria used by the pumpkings, Larry, and other porters to decide which features should be implemented and incorporated are not codified in a few small design goals as with some other languages. Instead, the heuristics are flexible and often difficult to fathom. Here is one persons list, roughly in decreasing order of importance, of heuristics that new features have to be weighed against:
Does concept match the general goals of Perl?
These havent been written anywhere in stone, but one approximation is:
1. Keep it fast, simple, and useful.
2. Keep features/concepts as orthogonal as possible.
3. No arbitrary limits (platforms, data sizes, cultures).
4. Keep it open and exciting to use/patch/advocate Perl everywhere.
5. Either assimilate new technologies, or build bridges to them.
Where is the implementation?
All the talk in the world is useless without an implementation. In almost every case, the person or people who argue for a new feature will be expected to be the ones who implement it. Porters capable of coding new features have their own agendas, and are not available to implement your (possibly good) idea.
Backwards compatibility
Its a cardinal sin to break existing Perl programs. New warnings are contentious--some say that a program that emits warnings is not broken, while others say it is. Adding keywords has the potential to break programs, changing the meaning of existing token sequences or functions might break programs.
Could it be a module instead?
Perl 5 has extension mechanisms, modules and XS, specifically to avoid the need to keep changing the Perl interpreter. You can write modules that export functions, you can give those functions prototypes so they can be called like built-in functions, you can even write XS code to mess with the runtime data structures of the Perl interpreter if you want to implement really complicated things. If it can be done in a module instead of in the core, its highly unlikely to be added.
Is the feature generic enough?
Is this something that only the submitter wants added to the language, or would it be broadly useful? Sometimes, instead of adding a feature with a tight focus, the porters might decide to wait until someone implements the more generalized feature. For instance, instead of implementing a "delayed evaluation" feature, the porters are waiting for a macro system that would permit delayed evaluation and much more.
Does it potentially introduce new bugs?
Radical rewrites of large chunks of the Perl interpreter have the potential to introduce new bugs. The smaller and more localized the change, the better.
Does it preclude other desirable features?
A patch is likely to be rejected if it closes off future avenues of development. For instance, a patch that placed a true and final interpretation on prototypes is likely to be rejected because there are still options for the future of prototypes that havent been addressed.
Is the implementation robust?
Good patches (tight code, complete, correct) stand more chance of going in. Sloppy or incorrect patches might be placed on the back burner until the pumpking has time to fix, or might be discarded altogether without further notice.
Is the implementation generic enough to be portable?
The worst patches make use of a system-specific features. Its highly unlikely that nonportable additions to the Perl language will be accepted.
Is the implementation tested?
Patches which change behaviour (fixing bugs or introducing new features) must include regression tests to verify that everything works as expected. Without tests provided by the original author, how can anyone else changing perl in the future be sure that they havent unwittingly broken the behaviour the patch implements? And without tests, how can the patchs author be confident that his/her hard work put into the patch wont be accidentally thrown away by someone in the future?
Is there enough documentation?
Patches without documentation are probably ill-thought out or incomplete. Nothing can be added without documentation, so submitting a patch for the appropriate manpages as well as the source code is always a good idea.
Is there another way to do it?
Larry said "Although the Perl Slogan is Theres More Than One Way to Do It, I hesitate to make 10 ways to do something". This is a tricky heuristic to navigate, though--one mans essential addition is another mans pointless cruft.
Does it create too much work?
Work for the pumpking, work for Perl programmers, work for module authors, ... Perl is supposed to be easy.
Patches speak louder than words
Working code is always preferred to pie-in-the-sky ideas. A patch to add a feature stands a much higher chance of making it to the language than does a random feature request, no matter how fervently argued the request might be. This ties into "Will it be useful?", as the fact that someone took the time to make the patch demonstrates a strong desire for the feature.
If youre on the list, you might hear the word "core" bandied around. It refers to the standard distribution. "Hacking on the core" means youre changing the C source code to the Perl interpreter. "A core module" is one that ships with Perl.
<<lessThis document attempts to explain how Perl development takes place, and ends with some suggestions for people wanting to become bona fide porters.
The perl5-porters mailing list is where the Perl standard distribution is maintained and developed. The list can get anywhere from 10 to 150 messages a day, depending on the heatedness of the debate. Most days there are two or three patches, extensions, features, or bugs being discussed at a time.
A searchable archive of the list is at either:
http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/
or
http://archive.develooper.com/perl5-porters@perl.org/
List subscribers (the porters themselves) come in several flavours. Some are quiet curious lurkers, who rarely pitch in and instead watch the ongoing development to ensure theyre forewarned of new changes or features in Perl. Some are representatives of vendors, who are there to make sure that Perl continues to compile and work on their platforms. Some patch any reported bug that they know how to fix, some are actively patching their pet area (threads, Win32, the regexp engine), while others seem to do nothing but complain. In other words, its your usual mix of technical people.
Over this group of porters presides Larry Wall. He has the final word in what does and does not change in the Perl language. Various releases of Perl are shepherded by a "pumpking", a porter responsible for gathering patches, deciding on a patch-by-patch, feature-by-feature basis what will and will not go into the release. For instance, Gurusamy Sarathy was the pumpking for the 5.6 release of Perl, and Jarkko Hietaniemi was the pumpking for the 5.8 release, and Rafael Garcia-Suarez holds the pumpking crown for the 5.10 release.
In addition, various people are pumpkings for different things. For instance, Andy Dougherty and Jarkko Hietaniemi did a grand job as the Configure pumpkin up till the 5.8 release. For the 5.10 release H.Merijn Brand took over.
Larry sees Perl development along the lines of the US government: theres the Legislature (the porters), the Executive branch (the pumpkings), and the Supreme Court (Larry). The legislature can discuss and submit patches to the executive branch all they like, but the executive branch is free to veto them. Rarely, the Supreme Court will side with the executive branch over the legislature, or the legislature over the executive branch. Mostly, however, the legislature and the executive branch are supposed to get along and work out their differences without impeachment or court cases.
You might sometimes see reference to Rule 1 and Rule 2. Larrys power as Supreme Court is expressed in The Rules:
Larry is always by definition right about how Perl should behave. This means he has final veto power on the core functionality.
Larry is allowed to change his mind about any matter at a later date, regardless of whether he previously invoked Rule 1.
Got that? Larry is always right, even when he was wrong. Its rare to see either Rule exercised, but they are often alluded to.
New features and extensions to the language are contentious, because the criteria used by the pumpkings, Larry, and other porters to decide which features should be implemented and incorporated are not codified in a few small design goals as with some other languages. Instead, the heuristics are flexible and often difficult to fathom. Here is one persons list, roughly in decreasing order of importance, of heuristics that new features have to be weighed against:
Does concept match the general goals of Perl?
These havent been written anywhere in stone, but one approximation is:
1. Keep it fast, simple, and useful.
2. Keep features/concepts as orthogonal as possible.
3. No arbitrary limits (platforms, data sizes, cultures).
4. Keep it open and exciting to use/patch/advocate Perl everywhere.
5. Either assimilate new technologies, or build bridges to them.
Where is the implementation?
All the talk in the world is useless without an implementation. In almost every case, the person or people who argue for a new feature will be expected to be the ones who implement it. Porters capable of coding new features have their own agendas, and are not available to implement your (possibly good) idea.
Backwards compatibility
Its a cardinal sin to break existing Perl programs. New warnings are contentious--some say that a program that emits warnings is not broken, while others say it is. Adding keywords has the potential to break programs, changing the meaning of existing token sequences or functions might break programs.
Could it be a module instead?
Perl 5 has extension mechanisms, modules and XS, specifically to avoid the need to keep changing the Perl interpreter. You can write modules that export functions, you can give those functions prototypes so they can be called like built-in functions, you can even write XS code to mess with the runtime data structures of the Perl interpreter if you want to implement really complicated things. If it can be done in a module instead of in the core, its highly unlikely to be added.
Is the feature generic enough?
Is this something that only the submitter wants added to the language, or would it be broadly useful? Sometimes, instead of adding a feature with a tight focus, the porters might decide to wait until someone implements the more generalized feature. For instance, instead of implementing a "delayed evaluation" feature, the porters are waiting for a macro system that would permit delayed evaluation and much more.
Does it potentially introduce new bugs?
Radical rewrites of large chunks of the Perl interpreter have the potential to introduce new bugs. The smaller and more localized the change, the better.
Does it preclude other desirable features?
A patch is likely to be rejected if it closes off future avenues of development. For instance, a patch that placed a true and final interpretation on prototypes is likely to be rejected because there are still options for the future of prototypes that havent been addressed.
Is the implementation robust?
Good patches (tight code, complete, correct) stand more chance of going in. Sloppy or incorrect patches might be placed on the back burner until the pumpking has time to fix, or might be discarded altogether without further notice.
Is the implementation generic enough to be portable?
The worst patches make use of a system-specific features. Its highly unlikely that nonportable additions to the Perl language will be accepted.
Is the implementation tested?
Patches which change behaviour (fixing bugs or introducing new features) must include regression tests to verify that everything works as expected. Without tests provided by the original author, how can anyone else changing perl in the future be sure that they havent unwittingly broken the behaviour the patch implements? And without tests, how can the patchs author be confident that his/her hard work put into the patch wont be accidentally thrown away by someone in the future?
Is there enough documentation?
Patches without documentation are probably ill-thought out or incomplete. Nothing can be added without documentation, so submitting a patch for the appropriate manpages as well as the source code is always a good idea.
Is there another way to do it?
Larry said "Although the Perl Slogan is Theres More Than One Way to Do It, I hesitate to make 10 ways to do something". This is a tricky heuristic to navigate, though--one mans essential addition is another mans pointless cruft.
Does it create too much work?
Work for the pumpking, work for Perl programmers, work for module authors, ... Perl is supposed to be easy.
Patches speak louder than words
Working code is always preferred to pie-in-the-sky ideas. A patch to add a feature stands a much higher chance of making it to the language than does a random feature request, no matter how fervently argued the request might be. This ties into "Will it be useful?", as the fact that someone took the time to make the patch demonstrates a strong desire for the feature.
If youre on the list, you might hear the word "core" bandied around. It refers to the standard distribution. "Hacking on the core" means youre changing the C source code to the Perl interpreter. "A core module" is one that ships with Perl.
Download (12.2MB)
Added: 2007-05-30 License: Perl Artistic License Price:
881 downloads
GNUstep 0.9.4.2
The GNUstep Live CD contains a lot of software for GNUstep, a free implementation of the OPENSTEP framework. more>>
GNUstep (this is a Live CD, an OS, a distribution) contains a lot of software for GNUstep, a free implementation of the OPENSTEP framework (which was also the base as Cocoa in Mac OS X). It includes an excellent application called Gorm for RAD (Apple Software Design Guidelines). More about the Objective-C Language. The currently used window manager is Window Maker.
If you are an OPENSTEP, Cocoa developer and want to port your software to GNUstep and release it as Free Software, dont hesitate to contact me. Please contact this page if you have wishes about the live CD or if you are curious about the next version. Here is a very well introduction to the environment.
Main features:
- Addresses
- Agenda
- AClock
- Affiche
- BioCocoa
- Camaelon
- CamelBones
- Camera
- Charmap
- Cenon
- Connect
- Cynthiune
- DisplayCalibrator
- EasyDiff
- EdenMath
- Fortunate
- Gridlock
- Gorm
- Gomoku
- GNUMail
- GNUstep-icons
- GNUstepWrapper
- GNUWash
- GWorkspace
- GTAMS
- HelpViewer
- InnerSpace
- ImageViewer
- LapisPuzzle
- LaTeX Service
- LuserNET
- Mines
- MPDCon
- Paje
- ProjectCenter
- PRICE
- Poe
- Preferences
- PlopFolio
- Preview
- Renaissance
- RSS Reader
- Scheme
- Shisen
- Stepulator
- StepTalk
- StepBill
- TalkSoup
- TimeMon
- Terminal
- TextEdit
- ViewPDF
- VolumeControl
- Waiho
- WildMenus
- Zillion
- Zipper
<<lessIf you are an OPENSTEP, Cocoa developer and want to port your software to GNUstep and release it as Free Software, dont hesitate to contact me. Please contact this page if you have wishes about the live CD or if you are curious about the next version. Here is a very well introduction to the environment.
Main features:
- Addresses
- Agenda
- AClock
- Affiche
- BioCocoa
- Camaelon
- CamelBones
- Camera
- Charmap
- Cenon
- Connect
- Cynthiune
- DisplayCalibrator
- EasyDiff
- EdenMath
- Fortunate
- Gridlock
- Gorm
- Gomoku
- GNUMail
- GNUstep-icons
- GNUstepWrapper
- GNUWash
- GWorkspace
- GTAMS
- HelpViewer
- InnerSpace
- ImageViewer
- LapisPuzzle
- LaTeX Service
- LuserNET
- Mines
- MPDCon
- Paje
- ProjectCenter
- PRICE
- Poe
- Preferences
- PlopFolio
- Preview
- Renaissance
- RSS Reader
- Scheme
- Shisen
- Stepulator
- StepTalk
- StepBill
- TalkSoup
- TimeMon
- Terminal
- TextEdit
- ViewPDF
- VolumeControl
- Waiho
- WildMenus
- Zillion
- Zipper
Download (432MB)
Added: 2005-05-18 License: GPL (GNU General Public License) Price:
897 downloads
dvdbackup 0.1.1
dvdbackup you can do a 1:1 copy of a DVD-video. more>>
dvdbackup you can do a 1:1 copy of a DVD-video.
Installation
Download dvdbackup version 0.1 - you will also need libdvdread version 0.9.3 or later.
Compile dvdbackup.c in the src dir like this gcc -o dvdbackup
-I/my/prefix/to/libdvdread/include -L/my/prefix/to/libdvdread/lib
-ldvdread dvdbackup.c
NOTE: The "" indicates that its one line - i.e. remove the "" from the command
line
Usage:
If your backup directory is /my/dvd/backup/dir/ specified with the "-o" flag. Then dvdbackup will create a DVD-Video structure under /my/dvd/backup/dir/TITLE_NAME/VIDEO_TS.
Since the title is "uniq" you can use the same dir for all your DVD backups. If it happens to have a generic title dvdbackup will exit with a return value of 2. And you will need to specify a title name with the -n switch.
dvdbackup will always mimic the original DVD-Video structure. Hence if you e.g. use the -M (mirror) you will get an exact duplicate of the original. This means that every file will be have the same size as the original one. Like wise goes also for the -F and the -T switch.
However the -t and (-t -s/-e) switch is a bit different the titles sectors will be written to the original file but not at the same offset as the original one since they may be gaps in the cell structure that we dont fill.
To backup the whole DVD
dvdbackup -M -i/dev/dvd -o/my/dvd/backup/dir/
This action creates a valid DVD-Video structure that can be burned to a DVD-/+R(W) with help of mkisofs version 1.11a27 or later
To backup the main feature of the DVD
dvdbackup -F -i/dev/dvd -o/my/dvd/backup/dir/
This action creates a valid DVD-Video structure of the feature title set
dvdbackup defaults to get the 16:9 version of the main feature if a 4:3 is also present on the DVD. To get the 4:3 version use -a 0.
dvdbackup makes it best to make a inteligent guess what is the main feature of the DVD - in case it fails please send a bug report.
To backup a title set
dvdbackup -T 2 -i/dev/dvd -o/my/dvd/backup/dir/
where "-T 2" specifies that you want to backup title set 2 i.e. all VTS_02_X.XXX files.
This action creates a valid DVD-Video structure of the specified title set
To backup a title
dvdbackup -t 1 -i/dev/dvd -o/my/dvd/backup/dir
This action backups all cells that forms the specified title. Note that there can be sector gaps in between one cell and an other. dvdbackup will backup all sectors that belongs to the title but will skip sectors that arent a part of the title.
To backup a specific chapter or chapters from a title
dvdbackup -t 1 -s 20 -e 25 -i/dev/dvd -o/my/dvd/backup/dir
This action will backup chapter 20 to 25 in title 1, as with the backup of a title there can be sector gaps between one chapter (cell) and on other.dvdbackup will backup all sectors that belongs to the title 1 chapter 20 to 25 but will skip sectors that arent a part of the title 1 chapter 20 to 25.
To backup a single chapter e.g. chapter 20 do -s 20 -e 20
To backup from chapter 20 to the end chapter use only -s 20
To backup to chapter 20 from the first chapter use only -e 20
You can skip the -t switch and let the program guess the title although its not recomened.
If you specify a chapter that his higher than the last chapter of the title dvdbackup will turncate to the highest chapter of the title.
Return values
0 on success
1 on usage error
2 on title name error
-1 on failur
Todo - i.e. whats on the agenda
Make the main feature guessing algoritm better. Not that it doesnt do its job, but its implementation its that great. I would also like to preserve more information about the main feature since that would let me preform better implementations in other functions that depends on the titles_info_t and title_set_info_t strcutures.
Make it possible to extract cells in a title not just chapters (very easy so it will definitly be in the next version).
Make a split mirror (-S) option that divides a DVD-9 to two valid DVD-5 video structures. This is not a trivial hack and its my main goal the next month or so. It involves writing ifoedit and vobedit libraries in order to be able to manipulate both the IFO structures and the VOB files. Out of this will most probably also come tscreate and vtscreate which will enable you to make a very simple DVD-Video from MPEG-1/2 source.
<<lessInstallation
Download dvdbackup version 0.1 - you will also need libdvdread version 0.9.3 or later.
Compile dvdbackup.c in the src dir like this gcc -o dvdbackup
-I/my/prefix/to/libdvdread/include -L/my/prefix/to/libdvdread/lib
-ldvdread dvdbackup.c
NOTE: The "" indicates that its one line - i.e. remove the "" from the command
line
Usage:
If your backup directory is /my/dvd/backup/dir/ specified with the "-o" flag. Then dvdbackup will create a DVD-Video structure under /my/dvd/backup/dir/TITLE_NAME/VIDEO_TS.
Since the title is "uniq" you can use the same dir for all your DVD backups. If it happens to have a generic title dvdbackup will exit with a return value of 2. And you will need to specify a title name with the -n switch.
dvdbackup will always mimic the original DVD-Video structure. Hence if you e.g. use the -M (mirror) you will get an exact duplicate of the original. This means that every file will be have the same size as the original one. Like wise goes also for the -F and the -T switch.
However the -t and (-t -s/-e) switch is a bit different the titles sectors will be written to the original file but not at the same offset as the original one since they may be gaps in the cell structure that we dont fill.
To backup the whole DVD
dvdbackup -M -i/dev/dvd -o/my/dvd/backup/dir/
This action creates a valid DVD-Video structure that can be burned to a DVD-/+R(W) with help of mkisofs version 1.11a27 or later
To backup the main feature of the DVD
dvdbackup -F -i/dev/dvd -o/my/dvd/backup/dir/
This action creates a valid DVD-Video structure of the feature title set
dvdbackup defaults to get the 16:9 version of the main feature if a 4:3 is also present on the DVD. To get the 4:3 version use -a 0.
dvdbackup makes it best to make a inteligent guess what is the main feature of the DVD - in case it fails please send a bug report.
To backup a title set
dvdbackup -T 2 -i/dev/dvd -o/my/dvd/backup/dir/
where "-T 2" specifies that you want to backup title set 2 i.e. all VTS_02_X.XXX files.
This action creates a valid DVD-Video structure of the specified title set
To backup a title
dvdbackup -t 1 -i/dev/dvd -o/my/dvd/backup/dir
This action backups all cells that forms the specified title. Note that there can be sector gaps in between one cell and an other. dvdbackup will backup all sectors that belongs to the title but will skip sectors that arent a part of the title.
To backup a specific chapter or chapters from a title
dvdbackup -t 1 -s 20 -e 25 -i/dev/dvd -o/my/dvd/backup/dir
This action will backup chapter 20 to 25 in title 1, as with the backup of a title there can be sector gaps between one chapter (cell) and on other.dvdbackup will backup all sectors that belongs to the title 1 chapter 20 to 25 but will skip sectors that arent a part of the title 1 chapter 20 to 25.
To backup a single chapter e.g. chapter 20 do -s 20 -e 20
To backup from chapter 20 to the end chapter use only -s 20
To backup to chapter 20 from the first chapter use only -e 20
You can skip the -t switch and let the program guess the title although its not recomened.
If you specify a chapter that his higher than the last chapter of the title dvdbackup will turncate to the highest chapter of the title.
Return values
0 on success
1 on usage error
2 on title name error
-1 on failur
Todo - i.e. whats on the agenda
Make the main feature guessing algoritm better. Not that it doesnt do its job, but its implementation its that great. I would also like to preserve more information about the main feature since that would let me preform better implementations in other functions that depends on the titles_info_t and title_set_info_t strcutures.
Make it possible to extract cells in a title not just chapters (very easy so it will definitly be in the next version).
Make a split mirror (-S) option that divides a DVD-9 to two valid DVD-5 video structures. This is not a trivial hack and its my main goal the next month or so. It involves writing ifoedit and vobedit libraries in order to be able to manipulate both the IFO structures and the VOB files. Out of this will most probably also come tscreate and vtscreate which will enable you to make a very simple DVD-Video from MPEG-1/2 source.
Download (0.024MB)
Added: 2005-12-20 License: GPL (GNU General Public License) Price:
1403 downloads
xulRecordset 0.4
xulRecordset is a project to create XUL widget library with a recordset behaviour, like ADORecordset in Visual Basic. more>>
xulRecordset is a project to create XUL widget library with a recordset behaviour.
The project uses PHP language in server-side and derived XUL widgets (using XBL - Mozilla technology) and Javascript in client-side. The comunication between client and server is supported by JPSpan library.
We provide an agenda as an example to show how it works. You can move next, move previous, move first, move last, update, remove, add records... The example runs against a MySQL database.
The project aims to create a library to get a XUL widgets with a recordset behavior, like ADORecordset in Visual Basic.
Enhancements:
- First aproximation to Client Side Data Caching
<<lessThe project uses PHP language in server-side and derived XUL widgets (using XBL - Mozilla technology) and Javascript in client-side. The comunication between client and server is supported by JPSpan library.
We provide an agenda as an example to show how it works. You can move next, move previous, move first, move last, update, remove, add records... The example runs against a MySQL database.
The project aims to create a library to get a XUL widgets with a recordset behavior, like ADORecordset in Visual Basic.
Enhancements:
- First aproximation to Client Side Data Caching
Download (0.12MB)
Added: 2005-07-05 License: GPL (GNU General Public License) Price:
1574 downloads
PDA Maze 2001.10.05
PDA Maze project is a first-person 3D maze game with PDAs in mind. more>>
PDA Maze project is a first-person 3D maze game with PDAs in mind.
PDA Maze is a first-person 3D maze game written in Xlib. Its small and fast and runs nicely on the Agenda VR3 Linux-based PDA. It has options for game timers, maze sizes, and different map modes.
Main features:
- 3D, first-perspective view (prerendered for speed)
- Screen scrolls when you rotate
- Walls colored differently on different sides
- Four background (skyline) photos
- Button (keyboard) and stylus (mouse) controls
- Game timer
- Different maze sizes
- Modes for partial (build as you go), total and no overview maps
- Sound effects
Enhancements:
- Added "input" windowmanager hint and title, so program will appear in VRSM window lists (VR->Windows menu, and Statusbar app windowlist). This works around a current bug in VRSM.
<<lessPDA Maze is a first-person 3D maze game written in Xlib. Its small and fast and runs nicely on the Agenda VR3 Linux-based PDA. It has options for game timers, maze sizes, and different map modes.
Main features:
- 3D, first-perspective view (prerendered for speed)
- Screen scrolls when you rotate
- Walls colored differently on different sides
- Four background (skyline) photos
- Button (keyboard) and stylus (mouse) controls
- Game timer
- Different maze sizes
- Modes for partial (build as you go), total and no overview maps
- Sound effects
Enhancements:
- Added "input" windowmanager hint and title, so program will appear in VRSM window lists (VR->Windows menu, and Statusbar app windowlist). This works around a current bug in VRSM.
Download (0.16MB)
Added: 2006-12-26 License: GPL (GNU General Public License) Price:
1032 downloads
Ruby/CorporateTime 0.4.9
Ruby/CorporateTime is a Ruby language extension that serves as a wrapper to the CorporateTime Calendar API (CAPI). more>>
CorporateTime is a proprietary calendar server system produced by Oracle, who acquired the company that made it, Steltor.
Ruby/CorporateTime is a Ruby language extension that serves as a wrapper to the CorporateTime Calendar API (CAPI). Ruby/CorporateTimes purpose is to allow interaction with CorporateTime servers via the Ruby programming language.
One possible application of this library is to write a program to display your agenda for the coming week, without needing to resort to the CorporateTime GUI. In fact, the tar archive contains an example program for this very purpose.
Another example is to use it to search for the first available one hour time slot on your colleagues agenda and book that for a meeting. I actually do this at work, where its handy to find and book sessions with our on-site massage therapists. (Yes, I know were spoilt!)
<<lessRuby/CorporateTime is a Ruby language extension that serves as a wrapper to the CorporateTime Calendar API (CAPI). Ruby/CorporateTimes purpose is to allow interaction with CorporateTime servers via the Ruby programming language.
One possible application of this library is to write a program to display your agenda for the coming week, without needing to resort to the CorporateTime GUI. In fact, the tar archive contains an example program for this very purpose.
Another example is to use it to search for the first available one hour time slot on your colleagues agenda and book that for a meeting. I actually do this at work, where its handy to find and book sessions with our on-site massage therapists. (Yes, I know were spoilt!)
Download (0.050MB)
Added: 2006-05-26 License: GPL (GNU General Public License) Price:
1246 downloads
Secleted [ 0 ] software to compare
- Page: 1 of 2
- 1
- 2
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above agenda 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