Projects tagged ‘alternative’


[29 total ]

40 Users
   

Haiku is an open-source desktop operating system with the goal to create an innovative and seamless computing experience. Our first release will be an improved remake of BeOS R5, which was a ... [More] commercial operating system created by Be Inc. After the company closed its doors a group of developers decided to continue the BeOS as an open source effort. [Less]
Created over 3 years ago.

38 Users
   

The ReactOS® project is a ground-up implementation of a Microsoft Windows® XP/2003 compatible operating system. ReactOS aims to achieve complete binary compatibility with both applications and ... [More] device drivers meant for NT and XP operating systems, by using a similar architecture and providing a complete and equivalent public interface. [Less]
Created over 3 years ago.

22 Users
   

eyeos is an Open Source Platform designed to hold a wide variety of Web Applications over it. eyeos was thought as a new definition of Operating System, where everything inside it can be accessed from everywhere trought a web browser.
Created over 3 years ago.

11 Users

The goal of the Syllable project is to create a family of easy-to-use free software operating systems. It is the continuation of the BeOS-like AtheOS. Syllable Desktop has its own C kernel with ... [More] symmetric multiprocessing, multithreaded pre-emptive multitasking, high POSIX compliancy, 64-bit journaled filesystem (AFS) with metadata, an integrated native GUI architecture with an object-oriented C++ API, SDL, singular native toolkit and multi-user desktop environment. The system seeks to be an integrated, lightweight, easy-to-program, powerful, high-performance graphical desktop environment which avoids legacy OS paradigms that frustrate developers and have hindered the computing masses' adoption of a free-software desktop. Syllable Server is a matching small and efficient Linux server. [Less]
Created over 3 years ago.

9 Users
 

Jari OS is a real-time microkernel operating system which runs in terms of multi-service architecture. Core system consists of its own microkernel μString, core and system services, set of device ... [More] drivers launched as trusted services. Our system is a pure microkernel and multi-service OS. All work is made via trusted services, and each service works within its own address space, and in this case Jari OS is a pure multi-service OS. Jari OS provide POSIX API for threads, files, networking, timers, memory operations. [Less]
Created over 3 years ago.

7 Users
 

The HelenOS project is an effort to develop a complete and usable modern operating system, yet offering room for experimenting and research. HelenOS uses its own microkernel written from scratch and ... [More] supports SMP, multitasking and multithreading on both 32-bit and 64-bit, little-endian and big-endian processor architectures, among which are AMD64/EM64T (x86-64), ARM, IA-32, IA-64 (Itanium), 32-bit MIPS, 32-bit PowerPC, SPARC V9 and Xen 3.0. Thanks to the relatively high number of supported architectures and suitable design, HelenOS is extremely-well portable. [Less]
Created over 3 years ago.

0 Users

Eagle EarthCurrent Status: Released Open Alpha - Version 0.2.2 Latest Version: Version 0.2.2 (18th of December, 2009) Last Source Version: Version 0.2.1 (30th of October, 2009) Last Stable Version: ... [More] Version 0.1.8 (7th of October, 2009) Latest Link Download: Link Information Expected New Release Date: Unknown Release Date (Version 0.2.3) Eagle Earth will have its new logo very soon, due to copyright reasons. Eagle Earth 0.22 has now released with minor fixes. Source is not available with the insufficient updates, however can be obtained through trunk. Eagle Earth now supplies the source version, only for development purposes. Eagle Earth is a program based on C# through the example of manipulating the use of the open-sourced .NET library, MSNP-Sharp. It is used to maintain a easier use for those preferring different styles using MSN. Intentionally it follows the main intentions as a alternative to surf through the MSN protocol: A easier and alternative use under the .NET environment. To be portable with the required files and with .NET Framework 2.0. Faster to use alternative than MSN Live. To follow a friendly use for everyone, proving beneficial. Follow a optional purpose of discovering features not on MSN Live. Current StatusIt is now possible to download versions 0.2 Alpha through the featured downloads. You can look at the history releases in the featured wiki for that version to see what has changed, added, or improved as such. Ensure you have at least .NET Framework 2.0 to download, with all the files in that archive. Most likely, Vista will have this prepared for you so you will most likely be able to load it straight away. Windows XP users or older OS may have to download it manually and install it, which you can get here: .NET Framework 3.5. LicenseThis project currently uses the MIT License. It follows this condition: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.Created by pha0001 (from Secret A+ Productions (c) 2009). Featured SectionsCredits - Those who helped develop Eagle Earth. [Less]
Created 2 months ago.

0 Users

This project is an ended proof-of-concept project. If you are finding a non-maven build tool try http://gradle.org or http://easyant.abrm.info/trac . Our goal is to create a build tool with the ... [More] functionality of the Maven and with the simplicity of Ant. Merevaik is an extension to the Ant which attains the convention over configuration principle over the three levels of ANT: properties, tasks, and targets. You shouldn't define same targets and properties in your every project with Merevaik, just define once, and upload the repository, and dependency management will use it automatically. Merevaik uses Ivy as the dependency management. Benefits of Merevaik: Simple learning curve: You shouldn't learn a new tehcnology. You may use plain old ANT tools Simple installation You sholdn't modify your existing build environment, only drop two jar files to ANT_HOME/LIB Lightweight tool The core of the Merevaik not bigger then 15-20 classes Easy IDE integraton The most of the IDE supports ANT based projects so supports Merevaik based projects too. You needn't specail plugins to handle Merevaik projects. Works in offline mode You can use components of Merevaik as traditional ANT task. (If you wouldn't like to use Merevaik). Our goal is maintain the documentation on high level. See also: GettingStarted [Less]
Created about 1 year ago.

0 Users

Eagle EarthCurrent Status: Released Open Alpha Latest Version: Version 0.1.4 (26th of September, 2009) - Link Information Eagle Earth is a program based on C# through the example of manipulating the ... [More] use of the open-sourced .NET library, MSNP-Sharp. It is used to maintain a easier use for those preferring different styles using MSN. Intentionally it follows the main intentions as a alternative to surf through the MSN protocol: A easier and alternative use under the .NET environment. To be portable with the required files and with .NET Framework 2.0. Faster to use alternative than MSN Live. To follow a friendly use for everyone, proving beneficial. Current StatusIt is now possible to download the first release (though still in Alpha) through the featured downloads. You can look at the history releases in the featured wiki for that version to see what has changed, added, or improved as such. Ensure you have at least .NET Framework 2.0 to download, with all the files in that archive. Most likely, Vista will have this prepared for you so you will most likely be able to load it straight away. Windows XP users or older OS may have to download it manually and install it, which you can get here: .NET Framework 3.5. LicenseThis project currently uses the MIT License with no source currently. It follows this condition: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.Created by pha0001 (from Secret A+ Productions (c) 2009). Featured SectionsCredits - Those who helped develop Eagle Earth. [Less]
Created 3 months ago.

0 Users

Dynamic Entity Engine – OverviewAuthor: Rod Odin (Nikolay Chebotaryov) Published: March, 2009 Русская редакция находится здесь. MotivationDo you know about the ... [More] Heroes of Might and Magic game, or probably about Civilization? Or about another game with lots of different units like Dragons, Knights, Archers, or maybe Tanks, Super-sonic Fighters and Missile Cruisers? Or probably you have a business application with dozens of different business entities to be processed by your business logic? If you have to develop something like this, how would you like to act? Would you manually create dozens or hundreds of appropriate classes with dozens of getters/setters representing the entity properties? Of course you are a familiar OO-developer and you will build a well organized hierarchy of the entities (or game units). And if your entities must be stored persistently, of course, you will map them onto the relational tables using JPA-annotations. And then you will write tones of the business logic (dozens of session beans) to manage and process somehow all of these plain entities – the entities just consisting of dozens of properties defined using simple getter/setter methods. What would you to do if your business logic must intercept events like propertyChanged or propertyAccessed? You have, for instance, 50-60 different entities with about of 10 properties per each on average. And you need to intercept different events like propertyChanged or entitySaved sometimes only. Would you add an event listener support into the each getter/setter method where it is required? Or would you add the listener support into all getters/setters just because you don't know when and where it would be useful? And again about the well-organized classical object-oriented hierarchy... For example, all your entities have the id property playing the primary key role. Mostly this id is an Integer, but in a few cases it is a String. Many of your entities have the property name, e.g. User, or Client, or Organization. User and Client are people, so, you may describe their common properties (name, surname, birthDate, taxNumber, etc.) in the Person class. The name property must go into the abstract NamedEntity class, because Organization has this property too. But taxNumber is applicable for Clients only, so it must go into the Client class. However an Organization may also play the Client role, so the Client is not a Person, it is just an abstract client extended by ClientPerson and ClientOrganization classes. In such situation the ClientPerson must extend two classes: Person and Client. And similar the ClientOrganization must extend Organization and Client. So, the result hierarchy looks like the following: However, in Java you have no multiple inheritance and interfaces are not working because the properties must be marked with JPA-annotations. Any case, if it would be even possible to work with multiple interfaces, you have to duplicate the code implementing the same properties and/or you have to aggregate single implementations and duplicate the code accessing these aggregated implementations. In other words, the aggregation of implementations is also code duplication. I hope that's enough to ask you, would you really like to do all of this routine and repeatable work? Would you really like to write manually dozens of classes and define hundreds of properties, even if the getters/setters are being generated by your IDE? Would you like to think over the listener support and well organized hierarchies? Again, would you like to do just a lot of repeatable work? I hope you need a pragmatic and optimal implementation of your task with a minimum of duplicated code and minimum of the routine and repeatable work from your side. If so, let me to ask you, do you really need to have a precise relational mapping of a business entity onto appropriate Java class? If no, let me to propose the solution implemented in this framework. SolutionThe idea of the solution is based on meta-view of a system. Each entity is just an Entity, and each entity property is just a Property. So, everything you need is just the Property class to define any named properties, and the Entity class for defining any named entities with a set of child properties. So, each Property has a name and a value. Of course it would be nice to extend the Property with a valueClass and defaultValue. Further extension may include a support for PropertyListener and any other features you would need. Similar, each Entity has at least a name and a set of child Properties. Further you may extend it with an EntityListener and other things. Of course, you may say, such solution is non-optimal, because each Property except the value must also store its name, its valueClass, defaultValue, etc. And the same is with the Entity – each Entity must know its name and probably something more. So, e.g. if we have just a thousand of different instances of the Ware entity, our Entity class stores the name “Ware” thousand times. Each of these thouthand instances will have, e.g., three properties (id, name and price). So, these three strings (“id”, “name” and “price”) will be stored each for 1000 times too. The same is for defaultValue, etc. To avoid such situation we introduce the PropertyDescriptor and EntityDescriptor appropriately. These classes include any common information about the properties and entities appropriately (name, valueClass, defaultValue, etc.). So, each Property and Entity must know just about their descriptors. It is just a single reference per object. It is also possible to avoid duplication of descriptors themselves. Internal mechanism stores the descriptors in internal maps and if you create a new property (even for another entity) with the same common attributes, the existing descriptor will be used. All of this is done transparently for the end-developer (means for you). ExampleThe package ru.rododin.dynamic_entity_engine.demo.unit contains a simple example implementation based on this idea. The example introduces a few Units defined by the UnitDefinition enumeration. Of course, it is very easy to develop another implementation where the units will be specified just using a .properties file or using an XML-configuration file. I would propose to see the sources in the following order: UnitDefinition UnitPropertyDefinition Unit Entity Property EntityDescriptor PropertyDescriptor AbstractEntity AbstractProperty StandardEntityDescriptor StandardPropertyDescriptor The result class diagram looks like this: Source CodeThe source code is accessible here. The pure base idea is provided by this tag: http://dynamic-entity-engine.googlecode.com/svn/tags/version-0.1.1-base-idea The tag version-0.2.0-typical-listener provides now a typical implementation of PropertyListener and EntityListener support: http://dynamic-entity-engine.googlecode.com/svn/tags/version-0.2.0-typical-listener This implementation is not optimal, because we have here some of repeated code. For instance, see EntityListenerManager. As you may see, the methods entityXxx processing different kinds of events are mostly identical. Of course, it’s possible to provide a single implementation based on the reflection engine. In other words, we can find a required method by a passed string name and invoke it via reflection. However this way isn’t optimal too, because in a real system it may cause invocation of thousands listeners in such way. Currently I’m working over another alternative implementation for the event listeners (TODO 3). Idea of this implementation is the same as the base idea of this framework – the set of events and listeners is being defined and controlled via an enumeration. The head branch contains working copy of the sources: http://dynamic-entity-engine.googlecode.com/svn/trunk The project is based on Maven and provides a standard POM-file. In addition there is an IntelliJ IDEA project (of course generated using the mvn ided:idea command, but with some post-settings done). I hope you will able to download the sources from SVN (see also: http://tortoisesvn.tigris.org), build and run it using Maven or IDEA. TODOProvide a class diagram (reverse-engineered) for the engine – done. Add event listener support to the framework (PropertyListener and EntityListener) – typical implementation is completed in the version 0.2. Re-implement the listener support using the same idea as the base idea of the framework (meta-listener implementation) Add support for UnitRenderer and UnitController to the Unit entity specialization to show the extensibility of the idea. MAJOR TODO: Think and provide a concept of an ORM framework for the engine. Investigate how much Hibernate or Top-Link (or what's else) could be useful and/or applicable for the framework. The main thing to research is the finding a simplest and quickest possibility to map the engine Entityies and Propertyies onto DB tables and fields appropriately. [Less]
Created 9 months ago.