much like
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 88
KDM Vista like Theme
KDM Vista like Theme is a very nice KDM theme that looks like Vistas one. more>>
KDM Vista like Theme is a very nice KDM theme that looks like Vistas one.
I didnt see any Vista like KDM login theme... I wanted one so I tried.
Enhancements:
- There are now two themes. One for widescreen which is the same as the previous one and one for 4/3 screen. This new one has been successfully tested on a 1600 x 1200 screen. If you have other resolution, please try and report if it works.
<<lessI didnt see any Vista like KDM login theme... I wanted one so I tried.
Enhancements:
- There are now two themes. One for widescreen which is the same as the previous one and one for 4/3 screen. This new one has been successfully tested on a 1600 x 1200 screen. If you have other resolution, please try and report if it works.
Download (1.1MB)
Added: 2007-04-12 License: GPL (GNU General Public License) Price:
979 downloads
TinyMUSH 3.1p4
TinyMUSH 3 is a descendant of the TinyMUD server, and thus supports multi-user communication. more>>
TinyMUSH 3 project is a descendant of the TinyMUD server, and thus supports multi-user communication in a text-based "virtual world" format, via TCP/IP connections (presumably, but not necessarily, Internet connections).
The end result looks much like text adventures games of the mid-1980s. Though its simplest application is as a chat server, TinyMUSH 3 is intended to have the flexibility and power to support highly complex roleplaying environments.
TinyMUSH 3 is a derivative of TinyMUSH 2.0, originally created through the fusion of the TinyMUSH 2.2 and TinyMUX 1.6 code branches. The server is under active development and support.
Enhancements:
- Fixed Always clear @prog data on logout
- Fixed tools (src/tools). Add an install tag to the tools makefile.
- Update LibTools to version 1.5.22.
- Update AutoConf to version 2.59.
- Fixed function logf() in udb_* conflict with build-in function logf(), rename the function to warning().
- Remove unused port-concentrator code.
- Automated build of TinyGDBM within ./configure.
- Updated the build process a bit to keep in line with autoconf standards.
<<lessThe end result looks much like text adventures games of the mid-1980s. Though its simplest application is as a chat server, TinyMUSH 3 is intended to have the flexibility and power to support highly complex roleplaying environments.
TinyMUSH 3 is a derivative of TinyMUSH 2.0, originally created through the fusion of the TinyMUSH 2.2 and TinyMUX 1.6 code branches. The server is under active development and support.
Enhancements:
- Fixed Always clear @prog data on logout
- Fixed tools (src/tools). Add an install tag to the tools makefile.
- Update LibTools to version 1.5.22.
- Update AutoConf to version 2.59.
- Fixed function logf() in udb_* conflict with build-in function logf(), rename the function to warning().
- Remove unused port-concentrator code.
- Automated build of TinyGDBM within ./configure.
- Updated the build process a bit to keep in line with autoconf standards.
Download (1.2MB)
Added: 2006-12-20 License: Artistic License Price:
1039 downloads
Bochs 2.3
Bochs is a highly portable open source IA-32 (x86) PC emulator written in C++, that runs on most popular platforms. more>>
Bochs is a highly portable open source IA-32 (x86) PC emulator written in C++, that runs on most popular platforms. Bochs project includes emulation of the Intel x86 CPU, common I/O devices, and a custom BIOS.
Currently, Bochs can be compiled to emulate a 386, 486, Pentium, Pentium Pro or AMD64 CPU, including optional MMX, SSE, SSE2 and 3DNow! instructions.
Bochs is capable of running most Operating Systems inside the emulation including Linux, Windows 95, DOS, and Windows NT 4. Bochs was written by Kevin Lawton and is currently maintained by this project.
Bochs can be compiled and used in a variety of modes, some which are still in development. The typical use of bochs is to provide complete x86 PC emulation, including the x86 processor, hardware devices, and memory.
This allows you to run OSs and software within the emulator on your workstation, much like you have a machine inside of a machine. For instance, lets say your workstation is a Unix/X11 workstation, but you want to run Win95 applications.
Bochs will allow you to run Win 95 and associated software on your Unix/X11 workstation, displaying a window on your workstation, simulating a monitor on a PC.
<<lessCurrently, Bochs can be compiled to emulate a 386, 486, Pentium, Pentium Pro or AMD64 CPU, including optional MMX, SSE, SSE2 and 3DNow! instructions.
Bochs is capable of running most Operating Systems inside the emulation including Linux, Windows 95, DOS, and Windows NT 4. Bochs was written by Kevin Lawton and is currently maintained by this project.
Bochs can be compiled and used in a variety of modes, some which are still in development. The typical use of bochs is to provide complete x86 PC emulation, including the x86 processor, hardware devices, and memory.
This allows you to run OSs and software within the emulator on your workstation, much like you have a machine inside of a machine. For instance, lets say your workstation is a Unix/X11 workstation, but you want to run Win95 applications.
Bochs will allow you to run Win 95 and associated software on your Unix/X11 workstation, displaying a window on your workstation, simulating a monitor on a PC.
Download (2.6MB)
Added: 2006-08-27 License: GPL (GNU General Public License) Price:
1166 downloads
Lich 3.38
Lich is a scripting engine for text-based MUDs. more>>
Lich is a scripting engine for text-based MUDs. It is not a complete front-end in and of itself: it operates much like a proxy server and communicates with the user through their chosen front-end (effectively giving the appearence of expanding the front-ends features with its own). Lich includes a slightly altered, extended, embedded-version of the Ruby interpreter.
This means it allows you to write and run scripts for a text-based MUD in the Ruby language. Why Ruby? Several reasons, really; first, moreso than any other language Ive personally played with, Ruby accomodates you rather than trying to make you accomodate it. As a language Ive found Ruby to possess an elegant self-sufficiency that abstracts away the need for a competent grasp of its low-level functioning, allowing one to simply make use of its features with very little need to be concerned with programmings more mundane details.
I could probably spend hours talking about the things Ive come to love in Ruby, but in the interest of saving time, I can sum it up by saying two things: I used Ruby because its a personal preference of mine, and because the interpreter is able to fit together so beautifully with an independently developed piece of software that it almost seems a shame not to take advantage of its extensible design.
<<lessThis means it allows you to write and run scripts for a text-based MUD in the Ruby language. Why Ruby? Several reasons, really; first, moreso than any other language Ive personally played with, Ruby accomodates you rather than trying to make you accomodate it. As a language Ive found Ruby to possess an elegant self-sufficiency that abstracts away the need for a competent grasp of its low-level functioning, allowing one to simply make use of its features with very little need to be concerned with programmings more mundane details.
I could probably spend hours talking about the things Ive come to love in Ruby, but in the interest of saving time, I can sum it up by saying two things: I used Ruby because its a personal preference of mine, and because the interpreter is able to fit together so beautifully with an independently developed piece of software that it almost seems a shame not to take advantage of its extensible design.
Download (1.0MB)
Added: 2006-06-13 License: BSD License Price:
1229 downloads
Cynthiune 0.9.5
Cynthiune is a free software and romantic music player for GNUstep and Mac OS X. more>>
Cynthiune is a free software and romantic music player for GNUstep and Mac OS X. Cynthiune can play Ogg and MP3 files.
For the moment, it looks pretty much like XMMS, Winamp and similar software. Even though it has far less features than those, the essential components of a usable and user-friendly program are there in my opinion.
From a programmatic point-of-view, I have decided to write a program that is released only when considered bug-free. The free software community lacks, IMnsHO, a sense of quality that makes its programs nearly useless to lambda users. Not only is it useless, but I think it also gives free software a bad reputation. The principle of freedom in "free software" is fundamental to me, but it has to be reachable not only by some sort of geeky elite. There is no point in telling users that since they have the freedom to enhance those programs, they must fix them if they want to use them. Releasing a program with too many bugs is of no use and is likely not to interest other fellow programmers in the community either.
On the other hand, Apple has published an interesting program called "iTunes". Of course, it is not free software but it does implement interesting ideas that I would like to include in Cynthiune. For example: CD burning, complete playlist management, etc... Personally I find its user interface to be not as user-friendly as it could be. My plan is thus to take advantage of my own programming skills and sense of aesthetics (and ergonomy) to try to write something a little bit different, inspired both by XMMS/Winamp and iTunes. Cynthiune is thus currently very basic but its core design is starting to be extensible enough that it will not be too much trouble to enhance it.
Installation:
If all your library requirements are fulfilled (see below). Just type "make && make install". If you want to run Cynthiune from the source directory, you would have to type "make local-build=yes". This way, the linker will be forced against to link Cynthiune.app against the copy of the Cynthiune framework that was built under the source directory. Whenever you are missing a library or if a specific file-format does not interest you, you can disable the build of its bundle by typing "make disable-[bundle]=yes" (where [bundle] is the name of the bundle you wish to avoid). For the available values, have a look at the GNUmakefile of the top source directory.
<<lessFor the moment, it looks pretty much like XMMS, Winamp and similar software. Even though it has far less features than those, the essential components of a usable and user-friendly program are there in my opinion.
From a programmatic point-of-view, I have decided to write a program that is released only when considered bug-free. The free software community lacks, IMnsHO, a sense of quality that makes its programs nearly useless to lambda users. Not only is it useless, but I think it also gives free software a bad reputation. The principle of freedom in "free software" is fundamental to me, but it has to be reachable not only by some sort of geeky elite. There is no point in telling users that since they have the freedom to enhance those programs, they must fix them if they want to use them. Releasing a program with too many bugs is of no use and is likely not to interest other fellow programmers in the community either.
On the other hand, Apple has published an interesting program called "iTunes". Of course, it is not free software but it does implement interesting ideas that I would like to include in Cynthiune. For example: CD burning, complete playlist management, etc... Personally I find its user interface to be not as user-friendly as it could be. My plan is thus to take advantage of my own programming skills and sense of aesthetics (and ergonomy) to try to write something a little bit different, inspired both by XMMS/Winamp and iTunes. Cynthiune is thus currently very basic but its core design is starting to be extensible enough that it will not be too much trouble to enhance it.
Installation:
If all your library requirements are fulfilled (see below). Just type "make && make install". If you want to run Cynthiune from the source directory, you would have to type "make local-build=yes". This way, the linker will be forced against to link Cynthiune.app against the copy of the Cynthiune framework that was built under the source directory. Whenever you are missing a library or if a specific file-format does not interest you, you can disable the build of its bundle by typing "make disable-[bundle]=yes" (where [bundle] is the name of the bundle you wish to avoid). For the available values, have a look at the GNUmakefile of the top source directory.
Download (0.48MB)
Added: 2006-04-03 License: GPL (GNU General Public License) Price:
1300 downloads
mudFTP 2.4
mudFTP is a protocol used for transfer of text files between a MUD server and a mudFTP client program. more>>
mudFTP is a protocol used for transfer of text files between a MUD server and a mudFTP client program. The text files can be notes, programs, room descriptions, etc. Once the file is transferred to the client, it is edited locally using the users favorite text editor.
In order to install mudFTP on your server, your server must have a centralized mechanism for editing text entries. In case of most MERC derivatives, this happens via the function string_append which takes a char** and takes over the control over input from the user, reallocating the text string as necessary. In any case, a fair knowledge of the C programming language and your MUD server is required in order to install mudFTP.
Once installed on the server side, mudFTP will listen on another port - typically youd wand this to be 6 higher than the normal port (e.g. if your mud is on port 4444, your mudFTP port would be on port 4450).
You users then use the mudFTP client program to connect. The client program identifies itself to the server with the MUD username/password and then waits for a request.
When a user with mudFTP enabled then edits a text using the text editing mechanism, it notices that there is a mudFTP connection and sends the text there instead of to the normal user screen. The users mudFTP client reads the text, saves it to a temporary file and spawns an editor. The user edits the file, and when satisfied, exits the editor. This causes the mudFTP client to send the text back to the server - which in turn replaces the text the user was editing with the new text from the client.
The server source code is ported to following platforms:
* Diku-like servers:
o Envy 2.2 with ILAB OLC
o Mythran 3.1.6b
o ROM 2.4b6 with Ivans OLC 1.72 (by Jessica Boyd)
o ROT 1.4 (by Dominic J. Eidson)
o Circle 3.0 (by George Greer)
* Non-Diku
o LDMUD (by Markus Peter) - should be portable to any LP [New!]
Ports under development:
If you are interested in porting to a new server platform, please email me. mudFTP should be portable to your server as long as your server has some central mechanism for editing text strings.
The C version of the client code works under the following platforms:
* Linux (libc5 as well as glibc)
* Any UNIX (untested, but the code is fairly compatible)
* Windows 95 and NT (port by Cath Allen)
* Windows 98 (untested)
The Java version of the client will work on any Java-capable platform.
Id very much like someone to port the client to the Macintosh platform
<<lessIn order to install mudFTP on your server, your server must have a centralized mechanism for editing text entries. In case of most MERC derivatives, this happens via the function string_append which takes a char** and takes over the control over input from the user, reallocating the text string as necessary. In any case, a fair knowledge of the C programming language and your MUD server is required in order to install mudFTP.
Once installed on the server side, mudFTP will listen on another port - typically youd wand this to be 6 higher than the normal port (e.g. if your mud is on port 4444, your mudFTP port would be on port 4450).
You users then use the mudFTP client program to connect. The client program identifies itself to the server with the MUD username/password and then waits for a request.
When a user with mudFTP enabled then edits a text using the text editing mechanism, it notices that there is a mudFTP connection and sends the text there instead of to the normal user screen. The users mudFTP client reads the text, saves it to a temporary file and spawns an editor. The user edits the file, and when satisfied, exits the editor. This causes the mudFTP client to send the text back to the server - which in turn replaces the text the user was editing with the new text from the client.
The server source code is ported to following platforms:
* Diku-like servers:
o Envy 2.2 with ILAB OLC
o Mythran 3.1.6b
o ROM 2.4b6 with Ivans OLC 1.72 (by Jessica Boyd)
o ROT 1.4 (by Dominic J. Eidson)
o Circle 3.0 (by George Greer)
* Non-Diku
o LDMUD (by Markus Peter) - should be portable to any LP [New!]
Ports under development:
If you are interested in porting to a new server platform, please email me. mudFTP should be portable to your server as long as your server has some central mechanism for editing text strings.
The C version of the client code works under the following platforms:
* Linux (libc5 as well as glibc)
* Any UNIX (untested, but the code is fairly compatible)
* Windows 95 and NT (port by Cath Allen)
* Windows 98 (untested)
The Java version of the client will work on any Java-capable platform.
Id very much like someone to port the client to the Macintosh platform
Download (0.190MB)
Added: 2006-06-14 License: GPL (GNU General Public License) Price:
1227 downloads
B-Chat 0.13
B-Chat is a small application which allows you to chat on Battle.net. more>>
B-Chat is a small application which allows you to chat on Battle.net.
It has no fancy GUI interface (yet :-), but I have plans for making it Gnome compliant.
However, at the moment it works pretty much like the regular UNIX telnet client, with the lines that are being sent and received mixed into eachother.
It can make it hard to read at times, but it serves my purpose.
I started work on this client because I wanted a way to chat with my friends on Battle.net while I was on Linux.
I really didnt feel like rebooting to Windows just to run TopazChat or ScumBot (I dont like Wine either :-), so I decided to code my own chat client.
The client is still in its early stages, so its very rough and may be hard to use. You have to supply the name o the Battle.net server that you are going to be connecting to. This will change in the future.
<<lessIt has no fancy GUI interface (yet :-), but I have plans for making it Gnome compliant.
However, at the moment it works pretty much like the regular UNIX telnet client, with the lines that are being sent and received mixed into eachother.
It can make it hard to read at times, but it serves my purpose.
I started work on this client because I wanted a way to chat with my friends on Battle.net while I was on Linux.
I really didnt feel like rebooting to Windows just to run TopazChat or ScumBot (I dont like Wine either :-), so I decided to code my own chat client.
The client is still in its early stages, so its very rough and may be hard to use. You have to supply the name o the Battle.net server that you are going to be connecting to. This will change in the future.
Download (0.006MB)
Added: 2006-09-20 License: GPL (GNU General Public License) Price:
1143 downloads
glChess 1.0.6
glChess is a chess game with 3D OpenGL graphics. more>>
glChess is a chess game with 3D OpenGL graphics.
An open-source 3D chess program. It uses openGL and gtkglarea (from GTK+) for the rendering and is designed for use in unix.
It will soon be able to be played over network much like xboard can currently. It has tentative support for computer play. Playable against a human or against "crafty" AI.
<<lessAn open-source 3D chess program. It uses openGL and gtkglarea (from GTK+) for the rendering and is designed for use in unix.
It will soon be able to be played over network much like xboard can currently. It has tentative support for computer play. Playable against a human or against "crafty" AI.
Download (0.15MB)
Added: 2007-06-11 License: GPL (GNU General Public License) Price:
866 downloads
DWH_File 0.24
DWH_File module contains data and object persistence in deep and wide hashes. more>>
DWH_File module contains data and object persistence in deep and wide hashes.
SYNOPSIS
use DWH_File qw/ GDBM_File /;
# the use argument set the DBM module used
tie( %h, DWH_File, myFile, O_RDWR|O_CREAT, 0644 );
untie( %h ); # essential!
Note: the files produced by DWH_File 0.22 are in a different format and are incompatible with the files produced by previous versions.
DWH_File is used in a manner resembling NDBM_File, DB_File etc. These DBM modules are limited to storing flat scalar values. References to data such as arrays or hashes are stored as useless strings and the data in the referenced structures will be lost.
DWH_File uses one of the DBM modules (configurable through the parameters to use()), but extends the functionality to not only save referenced data structures but even object systems.
This is why I made it. It makes it extremely simple to achieve persistence in object oriented Perl programs and you can skip the cumbersome interaction with a conventional database.
DWH_File tries to make the tied hash behave as much like a standard Perl hash as possible. Besides the capability to store nested data structures DWH_File also implements exists(), delete() and undef() functionality like that of a standard hash (as opposed to all the DBM modules).
MULTIPLE DBM FILES
It is possible to distribute for instance an object system over several files if wanted. This might be practical to avoid huge single files and may also make it easier make a reasonable structure in the data. If this feature is used the same set of files should be tied each time if any of the contents that may refer across files is altered. See MODELS.
GARBAGE COLLECTION
DWH_File uses a garbage collection scheme similar to that of Perl itself. This means that you actually dont have to worry about freeing anything (see the cyclic reference caveat though). Just like Perl DWH_File will remove entries that nothing is pointing to (and therefore noone can ever get at). If youve got a key whose value refers to an array for instance, that array will be swept away if you assign something else to the key. Unless theres a reference to the array somewhere else in the structure. This works even across different dbm files when using multiple files.
The garbage collection housekeeping is performed at untie time - so it is mandatory to call untie (and if you keep any references to the tied object to undef those in advance). Otherwise youll leave the object at the mercy of global destruction and garbage wont be properly collected.
MUTUAL EXCLUSION
Ealier versions had some specialized locking schemes to deal with concurrency in eg. web-applications. I havnt put any into this version, and I think Ill leave them out to avoid scope creep.
The reason for having those features were that locking dbm-files isnt as straightforward as locking ordinary files. I find now, that the best solution is to use some of the generalized mechanisms for handling concurrency. There are some fine perl modules for facilitating the use of semaphores for instance.
LOGGING
Earlier versions had a logging feature. I havent put it into this new generation of DWH_File yet. If you need it, send me a mail. That might tempt me.
<<lessSYNOPSIS
use DWH_File qw/ GDBM_File /;
# the use argument set the DBM module used
tie( %h, DWH_File, myFile, O_RDWR|O_CREAT, 0644 );
untie( %h ); # essential!
Note: the files produced by DWH_File 0.22 are in a different format and are incompatible with the files produced by previous versions.
DWH_File is used in a manner resembling NDBM_File, DB_File etc. These DBM modules are limited to storing flat scalar values. References to data such as arrays or hashes are stored as useless strings and the data in the referenced structures will be lost.
DWH_File uses one of the DBM modules (configurable through the parameters to use()), but extends the functionality to not only save referenced data structures but even object systems.
This is why I made it. It makes it extremely simple to achieve persistence in object oriented Perl programs and you can skip the cumbersome interaction with a conventional database.
DWH_File tries to make the tied hash behave as much like a standard Perl hash as possible. Besides the capability to store nested data structures DWH_File also implements exists(), delete() and undef() functionality like that of a standard hash (as opposed to all the DBM modules).
MULTIPLE DBM FILES
It is possible to distribute for instance an object system over several files if wanted. This might be practical to avoid huge single files and may also make it easier make a reasonable structure in the data. If this feature is used the same set of files should be tied each time if any of the contents that may refer across files is altered. See MODELS.
GARBAGE COLLECTION
DWH_File uses a garbage collection scheme similar to that of Perl itself. This means that you actually dont have to worry about freeing anything (see the cyclic reference caveat though). Just like Perl DWH_File will remove entries that nothing is pointing to (and therefore noone can ever get at). If youve got a key whose value refers to an array for instance, that array will be swept away if you assign something else to the key. Unless theres a reference to the array somewhere else in the structure. This works even across different dbm files when using multiple files.
The garbage collection housekeeping is performed at untie time - so it is mandatory to call untie (and if you keep any references to the tied object to undef those in advance). Otherwise youll leave the object at the mercy of global destruction and garbage wont be properly collected.
MUTUAL EXCLUSION
Ealier versions had some specialized locking schemes to deal with concurrency in eg. web-applications. I havnt put any into this version, and I think Ill leave them out to avoid scope creep.
The reason for having those features were that locking dbm-files isnt as straightforward as locking ordinary files. I find now, that the best solution is to use some of the generalized mechanisms for handling concurrency. There are some fine perl modules for facilitating the use of semaphores for instance.
LOGGING
Earlier versions had a logging feature. I havent put it into this new generation of DWH_File yet. If you need it, send me a mail. That might tempt me.
Download (0.023MB)
Added: 2007-07-19 License: Perl Artistic License Price:
827 downloads
Send To Thunderbird like sendToTb 1.1
Send To Thunderbird like sendToTb you can quick send images to Thunderbird or just resize it trought Service Menu. more>>
Send To Thunderbird like sendToTb you can quickly send images to Thunderbird or just resize it through Service Menu.
Just select images (.jpg only), right click -> Actions -> Send to Thunderbird.
<<lessJust select images (.jpg only), right click -> Actions -> Send to Thunderbird.
Download (0.12MB)
Added: 2006-10-17 License: GPL (GNU General Public License) Price:
1112 downloads
NTW Lisp 0.2.1
NTW Lisp is a server written in Common Lisp for applications that use the NTW protocol to communicate with a GUI client. more>>
NTW Lisp project is a server written in Common Lisp for applications that use the NTW protocol to communicate with a GUI client.
NTW is a collection of three things:
- A protocol used to describe GUI widgets and events.
- A client program which displays widgets described by the protocol and sends back events to the server.
- A set of server libraries in various languages used to write GUI apps that use the NTW protocol to communicate to a client program.
In short, NTW is useful for the type of web applications that people are trying to write using a web browser with "AJAX" but finding that approach too limited/non-portable/broken/difficult.
Main features:
- Speed -- Remote apps can run at a speed which is nearly indistinguishable from a locally running application. Since the client draws the widgets natively, its not necessary to transfer graphical data, only widget state data. This can be done asynchronously, so the responsiveness of the UI never suffers.
- Persistence -- Its just as easy to write the NTW protocol data to disk as it is to the network, so the state of the entire GUI application can be easily saved. This also happens transparently, so the developer doesnt have to spend any time loading and saving data. Also, if a network connection dies or the client computer loses power, the application can be restarted from the point of failure at the next connection.
- Portability -- using the protocol, an NTW server application running on a Unix machine could talk to an NTW client for Windows, and vice versa. So a developer could write a program on Linux that could be run from any OS without any porting necessary. Any language or platform that can read and write data to a network can use the protocol to create GUI apps.
- Scalability -- Since the NTW server does not store or draw widget graphics, the memory and computational overhead of running an NTW application is much less than a comparable X Window application. A low end machine could easily serve hundreds of remote clients.
- Productivity -- Users can run NTW apps without installing anything but the client. Developers can release new versions of their apps without the users having to do anything, much like a web page.
<<lessNTW is a collection of three things:
- A protocol used to describe GUI widgets and events.
- A client program which displays widgets described by the protocol and sends back events to the server.
- A set of server libraries in various languages used to write GUI apps that use the NTW protocol to communicate to a client program.
In short, NTW is useful for the type of web applications that people are trying to write using a web browser with "AJAX" but finding that approach too limited/non-portable/broken/difficult.
Main features:
- Speed -- Remote apps can run at a speed which is nearly indistinguishable from a locally running application. Since the client draws the widgets natively, its not necessary to transfer graphical data, only widget state data. This can be done asynchronously, so the responsiveness of the UI never suffers.
- Persistence -- Its just as easy to write the NTW protocol data to disk as it is to the network, so the state of the entire GUI application can be easily saved. This also happens transparently, so the developer doesnt have to spend any time loading and saving data. Also, if a network connection dies or the client computer loses power, the application can be restarted from the point of failure at the next connection.
- Portability -- using the protocol, an NTW server application running on a Unix machine could talk to an NTW client for Windows, and vice versa. So a developer could write a program on Linux that could be run from any OS without any porting necessary. Any language or platform that can read and write data to a network can use the protocol to create GUI apps.
- Scalability -- Since the NTW server does not store or draw widget graphics, the memory and computational overhead of running an NTW application is much less than a comparable X Window application. A low end machine could easily serve hundreds of remote clients.
- Productivity -- Users can run NTW apps without installing anything but the client. Developers can release new versions of their apps without the users having to do anything, much like a web page.
Download (0.016MB)
Added: 2006-07-07 License: MIT/X Consortium License Price:
1205 downloads
CodeWorker 4.2
CodeWorker is a versatile parsing tool and a universal source code generator. more>>
CodeWorker is a versatile Open Source, licensed under GNU Lesser General Public License, parsing tool and a source code generator devoted to generative programming.
Generative programming is a software engineering approach interested in automating the production of reusable, tailor-made, adaptable and reliable IT systems.
In laymans terms, CodeWorker lets you generate code by parsing existing languages, or by creating and parsing your own language. Once a language file has been parsed, CodeWorker provides several techniques for generating code.
The tools scripting language drives the parsing and source code generation process. The scripting language syntax is derived from the C family of languages, making it familiar to most programmers.
The template syntax is like like JSP, ASP, or Velocity. It has variations for parsing, code generation, or functional programming, giving the developer a number of options for organizing CodeWorker projects.
Parsing
CodeWorker can be trained to parse almost any language and provides two distinct methods for creating parsers:
- the extended-BNF notation is declarative, and is a derivative of BNF (the Backus-Naur Form defines the grammar of a language) extended with regular expressions, predefined non-terminals and useful directives. Something close to javacc or to ANTLR in the JAVA world except a separate parser class is not necessary with CodeWorker. This means that parsing scripts can be tested without having to compile a separate parser class.
- Reading tokens is procedural and a somewhat obsolete now that CodeWorker handles BNF parsing scripts smoothly.
While parsing files, CodeWorker feeds nodes into a parse tree. A tree is a convenient structure to represent a hierarchical set of nodes, as in XML for instance.
The parse tree is populated by the parsing task, and used by the source code generation script to generate code, text or binary data.
Source Code Generation
CodeWorker can parse a language and use the resulting parse tree to generate source code via template-based scripts. One example is database DDL (Database Definition Language). CodeWorker has been used to parse DDL and generate large portions of a Java application.
CodeWorkers source code generation can occur in three ways: generation, expansion or translation.
- generation uses a script, much like JSP or PHP, to produce an output file. Only certain areas, called protected areas in the vocabulary of CodeWorker, are preserved in the file.
- expansion is used when small portions of an existing file need to be generated. The points where code is to be inserted are called markers in the vocabulary of CodeWorker, and code is inserted at the markers. The Class Wizard of Visual C++ generates code using this principle.
- translation mode is used when both parsing and source code generation are required to produce a file. Here are the description of two main families of use:
- source-to-source translation: a file must be rewritten in a different syntax. For example, a LaTeX file might have to be translated in HTML.
- program transformation: a source file has to change for optimizing, refactoring, instrumenting or rewriting selected portions. For example, a script could add a trace at the beginning of each function body of a JAVA or C++ source code. To do that, parsing discovers function bodies, and source code generation will insert the code that implements the trace.
Enhancements:
- Concepts of Aspect-Oriented Programming were added to code generation with joint points, advices, and point cuts.
- It allows a better separation of concerns inside a code generation process, leading to improved reading and maintenance of large and complex template-based scripts.
- A new BNF directive was added: #readPythonString.
- Some bugfixes and updates were made in the Eclipse plugin.
<<lessGenerative programming is a software engineering approach interested in automating the production of reusable, tailor-made, adaptable and reliable IT systems.
In laymans terms, CodeWorker lets you generate code by parsing existing languages, or by creating and parsing your own language. Once a language file has been parsed, CodeWorker provides several techniques for generating code.
The tools scripting language drives the parsing and source code generation process. The scripting language syntax is derived from the C family of languages, making it familiar to most programmers.
The template syntax is like like JSP, ASP, or Velocity. It has variations for parsing, code generation, or functional programming, giving the developer a number of options for organizing CodeWorker projects.
Parsing
CodeWorker can be trained to parse almost any language and provides two distinct methods for creating parsers:
- the extended-BNF notation is declarative, and is a derivative of BNF (the Backus-Naur Form defines the grammar of a language) extended with regular expressions, predefined non-terminals and useful directives. Something close to javacc or to ANTLR in the JAVA world except a separate parser class is not necessary with CodeWorker. This means that parsing scripts can be tested without having to compile a separate parser class.
- Reading tokens is procedural and a somewhat obsolete now that CodeWorker handles BNF parsing scripts smoothly.
While parsing files, CodeWorker feeds nodes into a parse tree. A tree is a convenient structure to represent a hierarchical set of nodes, as in XML for instance.
The parse tree is populated by the parsing task, and used by the source code generation script to generate code, text or binary data.
Source Code Generation
CodeWorker can parse a language and use the resulting parse tree to generate source code via template-based scripts. One example is database DDL (Database Definition Language). CodeWorker has been used to parse DDL and generate large portions of a Java application.
CodeWorkers source code generation can occur in three ways: generation, expansion or translation.
- generation uses a script, much like JSP or PHP, to produce an output file. Only certain areas, called protected areas in the vocabulary of CodeWorker, are preserved in the file.
- expansion is used when small portions of an existing file need to be generated. The points where code is to be inserted are called markers in the vocabulary of CodeWorker, and code is inserted at the markers. The Class Wizard of Visual C++ generates code using this principle.
- translation mode is used when both parsing and source code generation are required to produce a file. Here are the description of two main families of use:
- source-to-source translation: a file must be rewritten in a different syntax. For example, a LaTeX file might have to be translated in HTML.
- program transformation: a source file has to change for optimizing, refactoring, instrumenting or rewriting selected portions. For example, a script could add a trace at the beginning of each function body of a JAVA or C++ source code. To do that, parsing discovers function bodies, and source code generation will insert the code that implements the trace.
Enhancements:
- Concepts of Aspect-Oriented Programming were added to code generation with joint points, advices, and point cuts.
- It allows a better separation of concerns inside a code generation process, leading to improved reading and maintenance of large and complex template-based scripts.
- A new BNF directive was added: #readPythonString.
- Some bugfixes and updates were made in the Eclipse plugin.
Download (2.9MB)
Added: 2006-05-02 License: LGPL (GNU Lesser General Public License) Price:
1274 downloads
Mac::EyeTV 0.30
Mac::EyeTV is a interface to the Elgato EyeTV Digital Video Recorder. more>>
Mac::EyeTV is a interface to the Elgato EyeTV Digital Video Recorder.
SYNOPSIS
use Mac::EyeTV;
my $eyetv = Mac::EyeTV->new();
# See Mac::EyeTV::Channel
foreach my $channel ($eyetv->channels) {
my $name = $channel->name;
my $number = $channel->number;
print "$number $namen";
}
# See Mac::EyeTV::Programme
foreach my $programme ($eyetv->programmes) {
my $start = $programme->start;
my $stop = $programme->stop;
my $title = $programme->title;
print "$title $start - $stopn";
}
This module allows you to interface to the Elgato EyeTV Digital Video Recorder. EyeTV is a piece of software and hardware for Mac OS X which can record and play back television much like a Tivo. This module allows you to interface to the EyeTV software, view the channel list and the recorded programmes and schedule recordings.
See Mac::EyeTV::Programme for information on scheduling a recording.
You should create Mac::Glue bindings to EyeTV before using this (along the lines of sudo gluemac EyeTV).
The EyeTV software itself is available from Elgato Systems at http://www.elgato.com/index.php?file=support_updates_eyetv
<<lessSYNOPSIS
use Mac::EyeTV;
my $eyetv = Mac::EyeTV->new();
# See Mac::EyeTV::Channel
foreach my $channel ($eyetv->channels) {
my $name = $channel->name;
my $number = $channel->number;
print "$number $namen";
}
# See Mac::EyeTV::Programme
foreach my $programme ($eyetv->programmes) {
my $start = $programme->start;
my $stop = $programme->stop;
my $title = $programme->title;
print "$title $start - $stopn";
}
This module allows you to interface to the Elgato EyeTV Digital Video Recorder. EyeTV is a piece of software and hardware for Mac OS X which can record and play back television much like a Tivo. This module allows you to interface to the EyeTV software, view the channel list and the recorded programmes and schedule recordings.
See Mac::EyeTV::Programme for information on scheduling a recording.
You should create Mac::Glue bindings to EyeTV before using this (along the lines of sudo gluemac EyeTV).
The EyeTV software itself is available from Elgato Systems at http://www.elgato.com/index.php?file=support_updates_eyetv
Download (0.004MB)
Added: 2006-07-21 License: GPL (GNU General Public License) Price:
1217 downloads
Claros Chat 1.0
Claros Chat is a web based (fully Ajax) instant messaging client which is capable of talking with the Jabber protocol. more>>
Claros Chat is finally ready. It is a web based (fully Ajax) instant messaging client which is capable of talking with the Jabber protocol. Claros Chat is well tested with Google Talk and it supports all major browsers such as Internet Explorer, Firefox, Safari, Mozilla.
The project has a minimalistic and an elegant user interface which looks much like a desktop application. Anyone interested in the application can test drive it at http://www.claros.org/chat.
Main features:
- Works with any Jabber server, including Google Talk.
- No setup needed on the client machine, works 100% within the browser, no plugins required.
- It is a 100% Ajax application, with a clean and nice user interface.
- Supports all major browsers.
- It can display user avatars including your own.
- Supports many of the emotions with MSN like smileys.
- All features such as changing status, changing status text, loading buddy list, adding/removing new buddy are all implemented.
- Can chat with as many users as you like.
- Users can set auto away at the preferences screen.
- Much words are useless, youve got to see it yourself, "it is one of the best looking and usefull open source instant messaging applications(or simply the best) in the world". See and believe for yourself. Just try the demo to see.(Login with your own Google username/password)
- You can start your own corporate chat network. Download a Jabber server from http://www.jabber.org and use Claros Chat to chat with your collegues.
- You can connect and chat with MSN, AOL, ICQ, Yahoo chat networks providing that you have your own Jabber server with a suitable gateway installed.
- It is open source and completely free software.
<<lessThe project has a minimalistic and an elegant user interface which looks much like a desktop application. Anyone interested in the application can test drive it at http://www.claros.org/chat.
Main features:
- Works with any Jabber server, including Google Talk.
- No setup needed on the client machine, works 100% within the browser, no plugins required.
- It is a 100% Ajax application, with a clean and nice user interface.
- Supports all major browsers.
- It can display user avatars including your own.
- Supports many of the emotions with MSN like smileys.
- All features such as changing status, changing status text, loading buddy list, adding/removing new buddy are all implemented.
- Can chat with as many users as you like.
- Users can set auto away at the preferences screen.
- Much words are useless, youve got to see it yourself, "it is one of the best looking and usefull open source instant messaging applications(or simply the best) in the world". See and believe for yourself. Just try the demo to see.(Login with your own Google username/password)
- You can start your own corporate chat network. Download a Jabber server from http://www.jabber.org and use Claros Chat to chat with your collegues.
- You can connect and chat with MSN, AOL, ICQ, Yahoo chat networks providing that you have your own Jabber server with a suitable gateway installed.
- It is open source and completely free software.
Download (3.6MB)
Added: 2006-11-21 License: GPL (GNU General Public License) Price:
1139 downloads
Inline::CPR 0.12
Inline::CPR is C Perl Run. more>>
Inline::CPR is C Perl Run. Embed Perl in C, ala Inline
SYNOPSIS
#!/usr/local/bin/cpr
int main(void) {
printf("Hello World, Im running under Perl version %sn",
CPR_eval("use Config; $Config{version}")
);
return 0;
}
Is it C? Is it Perl? Its neither, its both. Its CPR!
CPR (C Perl Run) is a "new language" that looks like C. You dont need to compile it. You just run it, much like Perl. As an added bonus, youll get access to the full internals of Perl via the CPR API.
The idea is that you just put a CPR hashbang at the top of your C program and run it like a script. The CPR interpreter will run your C code under Perl.
If your hash doesnt bang, you can run your program like this:
cpr synopsis.cpr
<<lessSYNOPSIS
#!/usr/local/bin/cpr
int main(void) {
printf("Hello World, Im running under Perl version %sn",
CPR_eval("use Config; $Config{version}")
);
return 0;
}
Is it C? Is it Perl? Its neither, its both. Its CPR!
CPR (C Perl Run) is a "new language" that looks like C. You dont need to compile it. You just run it, much like Perl. As an added bonus, youll get access to the full internals of Perl via the CPR API.
The idea is that you just put a CPR hashbang at the top of your C program and run it like a script. The CPR interpreter will run your C code under Perl.
If your hash doesnt bang, you can run your program like this:
cpr synopsis.cpr
Download (0.007MB)
Added: 2006-07-06 License: Perl Artistic License Price:
1206 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 much like 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