Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 956 Categories, Downloaded 50.388.028 Times

Class::Classless 1.35

  Date Added: June 27, 2010  |  Visits: 624

Class::Classless

Report Broken Link
Printer Friendly Version


Product Homepage
Download (92 downloads)



Class::Classless is a Perl framework for classless OOP. SYNOPSIS use strict; use Class::Classless; my $ob1 = $Class::Classless::ROOT->clone; $ob1->{NAME} = Ob1; $ob1->{stuff} = 123; $ob1->{Thing} = 789; my $ob2 = $ob1->clone; $ob2->{NAME} = Ob2; printf "ob1 stuff: <%s>n", $ob1->{stuff}; printf "ob2 stuff: <%s>n", $ob2->{stuff}; printf "ob1 Thing: <%s>n", $ob1->{Thing}; printf "ob2 Thing: <%s>n", $ob2->{Thing}; $ob1->{METHODS}{zaz} = sub { print "Zaz! on ", $_[0]{NAME}, "n"; }; $ob1->zaz; $ob2->zaz; $ob1->EXAMINE; $ob2->EXAMINE; This prints the following: ob1 stuff: < 123 > ob2 stuff: < 123 > ob1 Thing: < 789 > ob2 Thing: < > Zaz! on Ob1 Zaz! on Ob2 < Class::Classless::X=HASH(0x200236f4) > stuff, 123, NAME, Ob1, Thing, 789, METHODS, { zaz, CODE(0x20068360) }, PARENTS, [ ROOT ], < Class::Classless::X=HASH(0x2002cb48) > stuff, 123, NAME, Ob2, METHODS, { }, PARENTS, [ Ob1 ], In class-based OOP frameworks, methods are applicable to objects by virtue of objects belonging to classes that either provide those methods, or inherit them from classes that do. In classless OOP frameworks (AKA delegation-and-prototypes frameworks), what methods an object is capable of is basically an attribute of that object. That is, in Perl terms: instead of methods being entries in the symbol table of the package/class the object belongs to, they are entries in a hash table inside the object. Inheritance is implemented not by having classes inheriting from other classes (via ISA lists), but by having objects inherit from other objects (via PARENTS lists). In class-based OOP frameworks, you get new objects by calling constructors. In a classless framework, you get new objects by copying ("cloning") an existing object -- and the new clone becomes a child (inheritor) of the original object. (Where do you get the one original object? The language provides one, which has no parents, and which contains some general purpose methods like "clone".).

Requirements: No special requirements
Platforms: Linux
Keyword: Classclassless Classless Libraries Methods Name Object Objects Oop Parents Programming Zaz
Users rating: 0/10

License: Freeware Size: 23.55 KB
USER REVIEWS
More Reviews or Write Review


CLASS::CLASSLESS RELATED
Libraries  -  SVG::DOM 2.33
SVG::DOM is a Perl library with DOM (Document Object Model) methods for SVG objects. SVG::DOM provides a selection of methods for accessing and manipulating SVG elements through DOM-like methods such as getElements, getChildren, getNextSibling...
51.2 KB  
Libraries  -  DAEMon Raco Libraries 0.3
DAEMon Raco Libraries (DRLibs) is a collection of useful functions, objects, and routines for C++. Whats New in This Release: - This release adds new libraries to manage object lists: doublelist.dr.h, simplelist.dr.h, and sortedlist.dr.h..
28.67 KB  
Libraries  -  Chilkat Class Libraries for Java 9.2.1
The full suite of Chilkat components & libraries are now available for the Java programming language. Commercially licensed components include: Email (POP3 / SMTP) IMAP Zip, GZip, and Unix Compress Encryption MIME and S/MIME FTP HTTP MHT...
 
Programming  -  Java by Example! 1.0
Java is a powerful, modern, elegant, easy to learn object oriented (OOP) programming language. You can spice up your homepage with Java applets or even program stand-alone applications with it. It has 'built in' Gif- and JPEG-support, which makes...
236 KB  
Programming  -  ARIO 0.6.1
ARIO is a C++ library for reading and producing archive files, which are commonly used as libraries of relocatable object files. See also ELFIO project.(http://sourceforge.net/projects/elfio)
105.37 KB  
Programming  -  jQTree For PHP 1.1.0
JQTree4PHP is a PHP library that allows the creation of an expandible tree of items ( treeview ) in an easy way and totally directed to objects (OOP) to be used in User Interfaces, implementing the JQuery javascript library and its plugin...
139.9 KB  
Code Management Tools  -  Virgil B-03
Virgil projetc is an new, object-oriented, light-weight programming language that is designed for building software for resource-constrained embedded systems at the lowest level. Microcontroller programmers can now develop complete software...
583.68 KB  
Programming  -  x10 0.3.2
X10 project is a new object-oriented, type-safe programming language for programming the next generation of high performance systems. X10 is designed and developed by IBM. While developed in close contact with the designers of X10 at IBM there...
8.1 MB  
Programming  -  boo rc.0.1
boo is a new object oriented statically typed programming language for the CLI (common language infrastructure) with a python inspired syntax and a special focus on language and compiler extensibility.
1.34 MB  
Programming  -  Intrepid 2D Game Library 1.0
Intrepid is an object-oriented 2D game programming library written in C++ utilizing OpenGL and SDL that takes care of the low-level programming involved in making 2D games.You can create nearly every kind of 2D game. Comes with...
139.58 KB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  Math::GMPf 0.29
Math::GMPf - perl interface to the GMP library's floating point (mpf) functions.
30.72 KB  
Programming  -  Net::Wire10 1.08
Net::Wire10 is a Pure Perl connector that talks to Sphinx, MySQL and Drizzle servers. Net::Wire10 implements the low-level network protocol, alias the MySQL wire protocol version 10, necessary for talking to one of the aforementioned...
30.72 KB  
Programming  -  logilab-common 0.56.2
a bunch of modules providing low level functionnalities shared among some python projects devel Please note that some of the modules have some extra dependencies. For instance, logilab.common.db will require a db-api 2.0 compliant...
174.08 KB  
Programming  -  OpenSSL for linux 1.0.0a
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a...
3.83 MB  
Libraries  -  wolfSSL 4.0.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
3.88 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB