- Bidirectional text, vertical text and over 30 writing systems including Arabic, Hebrew, Chinese, Japanese, Korean, Thai, Lao, the major writing systems of India, and others
- Selection, editing and flowing text across multiple columns and linked containers, and around inline images
- Vertical text, Tate-Chu-Yoko (horizontal within vertical text) and justifier for East Asian typography
- Rich typographical controls, including kerning, ligatures, typographic case, digit case, digit width and discretionary hyphens
- Cut, copy, paste, undo and standard keyboard and mouse gestures for editing
- Rich developer APIs to manipulate text content, layout, markup and create custom text components.
Links To see
About Thulasiram Click here to skip this and move to post
Welcome to Thulasiram's Website/blog. Greetings, and thank you for visiting my personal website and online portfolio.
This is Thulasiram from Hyderabad, Andhra, India working as a Software Developer at Ahinjay Technologies. I will do Website Designing and development, Website Maintainace and Business apart from ahinjay
Services
Software Development | Web Hosting | ||
Client/Server Applications Distributed Applications Middle Tier Development |
Domain Registration Web Hosting (Web Space) Website Maintenance |
||
SOA Services | Application Services | ||
Architecture Services | ERP Services |
Products/projects Devlopled(invloved in devloping).
- Event Web Browser Technologies used Adobe Flex(AIR).
- Adress Book Technologies used Adobe Flex(AIR), Local SQL Lite Database.
- Search Engine optimisation Technologies used Adobe Flex(AIR).
- Google Talk (Google gmail messenger) Technologies used Adobe Flex(AIR).
- GZip File compress/Uncompress tool Technologies used Adobe Flex(AIR).
- Advaned SWF Screen Saver Technologies used Adobe Flex(AIR).
Products developed
- http://www.Ahinjay.com
- http://www.Hemadri.com
- http://www.RareTechnologies.in
- http://www.RamsCode.com
- http://www.3StepsToHost.com
- http://GetSetGo2008.com
Web sites designed and developed.
Monday, December 29, 2008
AIR Frameworks
Friday, December 19, 2008
Javafx description
JavaFX 1.1
JavaFX 1.2
- Full support for Linux and Solaris,
- Built-in controls and layouts,
- Skinnable CSS controls,
- Built-in chart widgets,
- JavaFX I/O management, masking differences between desktop and mobile devices,
- Speed improvements.
What is JavaFX?
- JavaFX SDK which includes the JavaFX compiler and runtime tools, graphics, media, web services, and rich text libraries to create RIAs for the desktop, browser and mobile platforms.
- NetBeans IDE for JavaFX which provides a sophisticated integrated development environment for building, previewing, and debugging JavaFX applications. The editor features a drag-and-drop palette to quickly add JavaFX objects with transformations, effects and animation. This IDE also comes with its own set of Building Block samples and the JavaFX Mobile Emulator, a mobile phone simulator.
- JavaFX Production Suite is a suite of tools and plugins that enable designers to export graphical assets to JavaFX applications.
see for more details http://blogs.sun.com/javafx/
Tuesday, November 25, 2008
Cool Flex and AS3 Tools, Libraries and Components
36 New, Cool Flex and AS3 Tools, Libraries and Components
http://seantheflashguy.com/blog/2007/08/21/list-of-31-flex-apis-libraries-components-and-tools/
http://seantheflashguy.com/blog/2007/08/13/list-of-22-actionscript-30-apis/
ActionScript 3.0 APIs developed specifically for Adobe Flex and AIR.
http://www.ericfeminella.com/blog/actionscript-3-apis/
The ASMailer class sends emails using an SMTP server. ASMailer sends mail without the need of a server side language like PHP or JSP.
http://asmailer.riaforge.org/
Away3D is a realtime 3d engine for flash in ActionScript 3.0
http://away3d.com/away3d-21-demos-docs
A good way to show actual time spent vs. the estimated time for a project
http://agileui.blogspot.com/2008/05/bullet-graph-free-flex-component.html
Desuade Partigen is an extension for Adobe Flash which lets you create realistic vector and raster particle effects (such as fire, smoke, sparkles), without requiring you to do any complex coding.
http://desuade.com/products/partigen/
EasyMVC is an event driven MVC framework which focuses on flexibility while not getting in the developers way.
http://projects.simb.net/easyMVC/
vector-based 3d rendering framework by Mathieu Badimon - has just received a significant update, bringing it to version 2.1. New features this version brings: Back Face Culling, Flat Shading, Z-sorting, Space Drawing functions, Bitmap3D class, Video3D class, Sprite2D Class, Letter Spacing, Text Width
http://five3d.mathieu-badimon.com/
http://download.macromedia.com/pub/labs/flashplayer10/flashplayer10_as3langref_052008.zip
“Memory profiling lets you look at objects being created, take snapshots and compare them. Performance profiling allows snapshots for looking at cumulative and internal time.”
http://labs.adobe.com/wiki/index.php/Flex_3:Feature_Introductions:_Performance_and_Memory_Profiling
Use Flex 3 runtime-shared-libraries (RSLs) to reduce the size of your applications and thereby reduce the time required to download the application. RSLs are just SWF files whose code is used as a shared library between different application SWF files.
http://labs.adobe.com/wiki/index.php/Flex_3:Feature_Introductions:Flex_3_RSLs
Flex 4 will target all of the legacy usage scenarios of classic Flex states functionality (stateful components, states as application “views” or “pages”, effects and transitions between view states, etc.). This document outlines what is primarily a syntax change for the existing functionality.
http://opensource.adobe.com/wiki/display/flexsdk/Enhanced+States+Syntax
“designer scroll bars” - skinny little tone on tone scroll bars that have no scroll arrows
http://www.gskinner.com/blog/archives/2008/05/designer_scroll.html
flexmdi is a robust, extensible Multiple Document Interface framework for Adobe Flex.
http://code.google.com/p/flexmdi/
What’s a resource bundle? It’s a set of values that you externalize from your source code in a properties file. And it can be swapped out at compile time or, with Flex 3, at runtime. Think of it like a style sheet for values.
http://blog.extends.eventdispatcher.org/roger/introduction-to-flex-resource-bundles/
FOAM is a two-dimensional rigid body physics engine written in ActionScript 3.0.
http://code.google.com/p/foam-as3/
Cool Tweening Engine, the Go3D which give you more control over moving objects in 3d space.
http://code.google.com/p/goplayground/source/checkout
A new component for Flex Developers who want to add more control or be very well organized.
http://www.igorcosta.org/?p=140
Guttershark is an Actionscript 3 library that pushes some simple conventions on you, only to make you faster as a developer. It’s a pattern for Flash development that cuts out a huge amount of time, especially when you’re in the first stages of development.
http://www.guttershark.net/
A suite of professional user interface controls that gives developers a rich collection of innovative and interactive data display components. It includes ready-to-use schedule displays, map displays, dials, gauges, 3D and radar charts, a treemap chart and organization charts.
http://www.ilog.com/products/ilogelixir/
Takes a regular Flex Image component, and adds a self contained ProgressBar to it to show its own loading progress.
http://www.munkiihouse.com/?p=135
The Logger component provides classes to that abstract the Flex 2 Log and logging Target classes. It provides a simple approach to logging messages with category information and provide hooks into multiple targets. It supports the following logging targets by default: RIALoggerTarget, TraceTarget (trace()), XPanelTarget, and FlexTracePanelTarget. The LogController also provides functionality to allow you to setup your own custom logging Target.
http://renaun.com/blog/flex-components/rialogger/
Merapi is a new project that is a framework for connecting AIR to java at the desktop.
http://adamflater.blogspot.com/search/?q=merapi
CheckBox, PushButton, HSlider, VSlider, InputText, ProgressBar, RadioButton, ColorChooser (text input only) and Panel.
http://www.bit-101.com/minimalcomps/
OpenFlux is an open-source Flex component framework which allows developers to create radically new and custom Flex components.
http://code.google.com/p/openflux/
Cool way to hide options or preferences in an application. It borrows the look and feel from the FlexBook/PageFlip components already out there, but instead of simulating a book, this is more of a way to use the “flip” to hide other components.
http://www.billdwhite.com/wordpress/?p=29
Online service provided by Adobe that allows you to share, publish, and organize documents online.
http://code.google.com/p/as3sharelib/downloads/list
Slide is an application framework for projects built in Flex 2 or 3. Using familiar design patterns, Slide provides a robust MVC structure, view state management decoupled from view implementation and a flexible approach to model and controller access, eliminating need for singleton classes.
http://code.google.com/p/flex-slide/
Sandy is an intuitive and user-friendly 3D open-source library.
http://www.flashsandy.org/versions/3.0
Sprouts is an open-source, cross-platform project generation and configuration tool for ActionScript 2, ActionScript 3, Adobe AIR and Flex projects.
http://www.projectsprouts.org/
Universal Mind has extended the “classic” Adobe 2.2.x Cairngorm version to provide many productivity and maintenance enhancements.
http://code.google.com/p/flexcairngorm/
The Virtual Space is an AS3 component that can be used to create virtual-tour type visualizations very easily. Simply specify 6 images to be used for top, bottom, left, right, front, and back. Then, position the camera, set the initial view, and specify interaction parameters.
http://www.afcomponents.com/components/virtual_space_as3/
Saturday, October 25, 2008
HOW TO NAME YOUR BUSINESS
HOW TO NAME YOUR BUSINESS
One of the first, and most vital, steps every new business takes is the selection of a name. Choosing the name of your busness wisely will have much to do with its subsequent success. That's because people will make critical decisions simply based on your business name. It is true that people make snap decisions about other people based on simple 7-second first impressions. After those first few moments, it gets pretty hard to change someone's mind about that person later. In the same way, people make snap decisions about your business based on first impressions. The first thing many people see is your name. With a good name, you will warrant further scrutiny. But if you chose a name poorly, the consequences can be disastrous. An early note of caution is needed here. In cases where the business is already established, be careful about changing the name. You may lose the equity which has already been built and established. However, if you need to come up with a new company name, here are some guidelines to help you. Reflect your target niche. First, your business name should clearly reach your target audience. Is your offer or claim understandable? Two good name selections are the 7-11 and Hot 'N Now stores. Your name should also fit your logo and slogan. In addition, clarity about your desired geographical service area helps people understand your business. All-City Shoe Repair tells me that they will fix shoes anywhere in my community. That's pretty clear! However, don't use any geographical descriptions if that could ever become a limiting factor. For example, would a company called Eastside Bookkeeping ever do work for someone located downtown? In addition, geographical names tend to get overused. To see what I mean, go to the white pages of your phone book and see how many business names start with the name of your city or state. Clarify what your business does. Your business name should let the customer know what you do. Although Aaacme Services, Inc. may be listed first in your section of the Yellow Pages, a business card given to a new acquaintance doesn't tell the receiver what your business does. If a person can't remember why they have your card, they will quickly discard it. Two good names are Jiffy Lube and Fast Signs. And if you can attract your customers properly in the first place, they'll probably never even notice that they passed three of your competitors on their way to see you. Keep the name simple. Keep your business name short and easy to say, spell and remember. Avoid tongue twisters like Watson, Smith, Howiczak, Elton and Elton. Imagine the poor secretary who has to write down a message from that company! Also avoid acronyms or names using initials unless they will mean something to your typical customer. If IBM had been started using that name instead of International Business Machines, it is doubtful that they would have been as successful. Letters mean little or nothing to your customer, and as a result, are quickly forgotten. IBM didn't begin using that name until the marketplace had already bestowed the shortened name upon them. Keep the name flexible. Don't let your name restrict you to a field that you may grow out of. Make the name expandable. As an example, Canned Software Company may sound good at first, but what happens if you decide to get into the computer hardware business? Or what if Mr. Smith ever leaves or sells Smith Watch Company. If it fails, what does that do to his reputation? Avoid trendy names. It seems that every few years, some new naming trend makes the rounds. How many times have you seen some type of name using Something-a-Rama or Something 'R Us? After these fads run their course, you will be left with a stale and outdated name, and that's probably what most people will think of your company too! Avoid amateurish or silly names. Names like Bambi's Secretarial Service typically will not generate the confidence of your potential customers. If I were looking for a professional service, I'd be much more inclined to call ASAP Secretarial Services. For the same reasons, avoid silly names. They will wear thin very quickly. Curl Up and Dye may sound cute now, but after six months, you and your customers will become very weary of the joke. Is it unique and can it be protected? You want your name to stand out in front of your customers and prospects. Avoid names that are close, or even similar to your key competitors. If all your competitors use variations of XYZ Janitorial Supply, position yourself differently with a distinctive name like EnviroSafe Products. Finally, take steps to be sure that your name is protected and preserved in your marketplace. Similarly, be sure that you are not encroaching on anyone else's trademark or identity. |
Sunday, September 28, 2008
Remote Object Service in Flex
» Der Remote Object Service in Flex
Was unterscheidet den Remote Object Service vom HTTPService
oder dem WebService
?
Wie auch der HTTPService
und der WebService
greift der Remote Object Service über das HTTP Protokoll auf die Ressourcen des Servers zu. Im Gegensatz zu den erst genannten Services benutzt der RemoteObject
Service aber nicht das auf Text basierende XML Format für den Informationsaustausch, sondern das proprietäre AMF (Action Message Format). Dieses codiert die auszutauschenden Informationen binär, die gesendete Nachricht wird dadurch wesentlich kleiner und kann schneller übertragen werden.Java Entwickler mag diese Technik an die RMI API erinnern und der Vergleich ist durchaus angebracht. RMI nutzt jedoch statt des HTTP Protokolls (Port 80) ein eigenes Übertragungsprotokoll, scheitert damit an den meisten Firewalls und macht deshalb nur in firmeninternen (oder anderen geschlossenen) Umgebungen Sinn. Im Gegensatz dazu kann der Remote Object Service ohne Einschränkungen auch im Internet verwendet werden.
Das POJO auf dem Tomcat
Um den Remote Object Service zu verwenden, muss zunächst ein Service Objekt in Java implementiert werden, welches die auf dem Client benötigten Methoden zur Verfügung stellt. Die Methoden, die der Client später verwenden soll, müssen als public
deklariert werden. Die Klasse muss sich zudem im CLASSPATH
des Flex Data Service befinden und einen leeren Konstruktor haben. Eine simple Testanwendung könnte wie folgt aussehen: Die Service Klasse auf dem Tomcat
public class RemoteObjectService {
public RemoteObjectService() {}
public String sayHello() {
return "Hallo Flexwelt";
}
}
Bekanntmachen der Klasse
Damit der Flex Data Service die erzeugte Klasse alsRemoteObject
erkennt, muss diese in der remote-config.xml
bekannt gemacht werden. Die remote-config.xml
befindet sich, genau wie die proxy-config.xml
, im Verzeichnis WEB-INF/flex
unterhalb des Context-Root.Für die erzeugte Service Klasse wird eine neue Destination angelegt. Diese bekommt eine eindeutige Id, die später in der Flex Anwendung zur Referenzierung des entfernten Objektes gebraucht wird. Zusätzlich wird der vollständige Klassenname und der Scope deklariert.
Auszug aus der remote-config.xml
org.fleksray.samples.RemoteObjectService
application
Scoping
Die drei Möglichkeiten um einen Scope zu definieren sindapplication, session
und request
. Diese Varianten den Scope zu definieren sind Java Entwicklern hinreichend bekannt, deshalb hier nur eine kurze Erklärung.Wird für das
RemoteObject
der Scope application
definiert, wird für jede Serverinstanz nur eine einzige Klasse instantiiert. Alle Anwender der Applikation greifen also auf das gleiche Objekt zu. Im session
Scope wird für jeden User ein eigenes Objekt angelegt. Dieser Scope wird deshalb in der Regel für Session Tracking, das Speichern von Warenkörben und Ähnlichem verwendet. Im request
Scope wird für jeden HTTP Request ein neues Objekt erzeugt. Dieser Scope erhöht die Rechenlast des Servers empfindlich und sollte nur, wenn unbedingt notwendig angewendet werden. » Aufruf entfernter Methoden
Verarbeiten der Daten auf dem Client mit Hilfe der Binding Expressions
Um die vomRemoteObject
bereitgestellten Daten zu verarbeiten, stehen dem Entwickler zwei Möglichkeiten zur Verfügung: Binding Expressions und in ActionScript geschriebene Event Handler. Erstere Methode ist einfacher und weniger verbose. Werden dagegen eigene Event Handler benutzt stehen mehr Möglichkeiten zur Verfügung, die Daten zu verarbeiten.Mit Hilfe der Binding Expression ist das entgegennehmen der Daten recht einfach.
Auszug aus der MXML Datei die das RemoteObject verwendet
Verwenden der Event Handler
DasRemoteObject
löst bei erfolgreicher Datenübertragung ein ResultEvent
aus. Lief etwas schief wird ein FaultEvent
getriggert. Innerhalb der Event Handler können die Ergebnisse des entfernten Methodenaufrufes vielfältiger gehandhabt werden, als mit den Binding Expressions. Die MXML Datei verwendet nun Event Handler
handleResult(ev:ResultEvent):void {
_message = ev.result.toString();
}
private function handleFault(ev:FaultEvent):void {
_message = "das ging daneben: "
+ ev.fault.faultCode + " :: "
+ ev.fault.faultDetail + " :: "
+ ev.fault.faultString;
}
]]>
result="handleResult(event)"
fault="handleFault(event)"/>
Ein
FaultEvent
kann leicht ausgelöst werden, indem im click
Handler des Buttons auf eine nicht existierende Methode des RemoteObject
zugegriffen wird ( click="{myRemoteObject.sayGoodBye()}"
)Result Handler Dispatching im RemoteObject
Wie geht man nun mit Service Objekten um, die dem Client eine ganze Reihe von Methoden zur Verfügung stellen. Im RemoteObject
wird im oben gezeigten Beispiel nur einen Result Handler defininiert, der für genau eine Methode zuständig ist..Ein erster, einfacher Ansatz wäre, im Result Handler eine
switch-case
Anweisung zu schreiben, die anhand des übergebenen Events die aufzurufende Methode erkennt.Flex bietet eine elegantere Lösung. Innerhalb des
RemoteObject
können den Service Methoden jeweils unterschiedliche Result Handler zugeordnet werden. Dispatching der Events an unterschiedliche Handler
handleHelloResult(ev:ResultEvent):void {
_message = ev.result.toString();
}
private function handleDataResult(ev:ResultEvent):void {
_data = ev.result as ArrayCollection;
}
private function handleFault(ev:FaultEvent):void {
_message = "das ging daneben: "
+ ev.fault.faultCode + " :: "
+ ev.fault.faultDetail + " :: "
+ ev.fault.faultString;
}
]]>
name="sayHello" result="handleHelloResult(event)" />
name="getTestData" result="handleDataResult(event)" />
click="{myRemoteObject.sayHello()}"/>
click="{myRemoteObject.getTestData()}"/>
Im gezeigtem Beispiel wird für jede Methode des Service Objektes ein eigener Result Handler deklariert, der Fault Handler wird von allen Methoden gemeinsam benutzt. Es ist auch möglich, jeder Methode einen eigenen Fault Handler zuzuweisen.
» Übergabe von Argumenten
Das
RemoteObject
muss also auch in der Lage sein, Argumente zu verarbeiten. Im folgendem Beispiel soll das Service Objekt auf dem Server aus zwei übermittelten Strings ein personalisierte Begrüßung bauen. Die Java Klasse übernimmt Argumente
public class AnsweringService {
public AnsweringService() {}
public String sayHello(String title, String name) {
return "Hallo " + title +" " + name;
}
}
In der MXML-Datei werden die Argumente innerhalb des <
method>
Tags deklariert. Hier können statische Werte oder Binding Expressions verwendet werden.Das Tag
erwartet ein Array mit Parametern. Wie diese Parameter benannt werden, ist unwesentlich. Der Konsistenz halber sollten sie aber wie die Argumente der Java Klasse benannt werden. Entscheidend ist die Reihenfolge der Argumente. Das zuerst deklarierte Element wird als erstes Argument an das Objekt auf dem Server übergeben.Werden Argumente in der beschriebenen Weise übergeben, muss im Click EventHandler die Methode send() an der Remotemethode aufgerufen werden.
Senden von Argumenten an das Objekt auf dem Tomcat Server
{myName.text}
id="title"
dataProvider="['Frau','Herr','Mrs.','Mr.']"/>
id="myName"/>
click="{myAnsweringObject.sayHello.send()}"/>
Building Flex Applications with JSPs
Problem Summary
Flex applications are client side applications which must communicate over the network to retrieve data from and store data in a database. There are many ways to communicate between the client and the server. If you are using Java you may already have JSPs which allow your users to view and modify data. How can you put a Flex UI front-end on top of your existing JSP based infrastructure?
Solution Summary
Flex can make requests to your existing JSPs using the HTTPService object. These requests can work with any JSPs. A Flex application contains all of the view logic so the JSPs should not return HTML but rather just serialized data.
Explanation
You might have a JSP similar to this one:
<%@page import="flex.samples.product.ProductService, flex.samples.product.Product, java.util.List"%> <html> <body> <table> <tr> <th>Name</th> <th>Description</th> <th>Price</th> <th>Image</th> <th>Category</th> <th>Quantity</th> </tr> <% ProductService srv = new ProductService(); List list = null; list = srv.getProducts(); Product product; for (int i=0; i<list.size(); i++) { product = (Product) list.get(i); %> <tr> <td><%= product.getName() %></td> <td><%= product.getDescription() %></td> <td><%= product.getPrice() %></td> <td><%= product.getImage() %></td> <td><%= product.getCategory() %></td> <td><%= product.getQtyInStock() %></td> </tr> <% } %> </table> </body> </html>
This JSP just displays a simple HTML table of data which it fetched from the database. If you have a Flex application and want to display the same data in a tabular format you may just use a DataGrid in your mxml application. To get the data into your DataGrid you will need to modify the JSP so that it outputs serialized data rather than HTML:
<%@page import="flex.samples.product.ProductService, flex.samples.product.Product, java.util.List"%> <?xml version="1.0" encoding="utf-8"?> <catalog> <% ProductService srv = new ProductService(); List list = null; list = srv.getProducts(); Product product; for (int i=0; i<list.size(); i++) { product = (Product) list.get(i); %> <product productId="<%= product.getProductId()%>"> <name><%= product.getName() %></name> <description><%= product.getDescription() %></description> <price><%= product.getPrice() %></price> <image><%= product.getImage() %></image> <category><%= product.getCategory() %></category> <qtyInStock><%= product.getQtyInStock() %></qtyInStock> </product> <% } %> </catalog>
Since this JSP now outputs XML serialized data, Flex will be able to parse that data and turn it into objects which can then be displayed in the DataGrid. The entire Flex application to request the data and display it in a DataGrid could be as simple as:
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="srv.send()"> <mx:HTTPService id="srv" url="catalog.jsp"/> <mx:DataGrid dataProvider="{srv.lastResult.catalog.product}"/> </mx:Application>
The HTTPService tag instantiates an object which will make the request to the JSP and deserialize the results into object. The url property on the HTTPService should point to the JSP which returns the XML data. The DataGrid tag instanciates an object which will display objects in a tabular format. The dataProvider property on the DataGrid tells the DataGrid which data to display. In this case the value uses data binding. A binding expression goes between the curly braces. The data binding tells the DataGrid to watch the specified object for changes and when changes occur the DataGrid will refresh it's view of the data. In this case the dataProvider is set to bind to the lastResult property on the HTTPService object (srv is the referencable identifier of the HTTPService). The lastResult object contains an object named "catalog" which corresponds to the catalog node of the XML which is returned from the JSP. On the catalog node there is another array of nodes in the XML called "product". Thus the expression "srv.lastResult.catalog.product" corresponds to the array of product which are returned from the HTTPService request to the JSP. The finial piece of logic in the code is an event handler which causes the Flex application to make a request to the JSP. The "creationComplete" event handler is triggered when the Flex application has fully initialized. When this event is triggered the Flex application makes a request to the JSP by calling the send method on the HTTPService.
Computer Languages History
Below, you can see the preview of the Computer Languages History (click on the white zone to get a bigger image):
There is only 50 languages listed in this chartABC :
A Short Introduction to the ABC Language Ada :
Ada 95
Ada Home Page
AdaPower
Special Interest Group on Ada
Ada Information Clearinghouse ALGOL :
The ALGOL Programming Language AWK :
The AWK Programming Language by Alfred V. Aho, Brian W. Kernighan, and Peter J. Weinberger APL :
Apl Language
APL B :
The Programming Language B (abstract)
Users' Reference to B by Ken Thompson BASIC :
The Basic Archives
Visual Basic Instinct
Visual Basic Resource
True BASIC
REALbasic BCPL :
BCPL Reference Manual by Martin Richards C :
The Development of the C Language by Dennis Ritchie
Very early C compilers and language by Dennis Ritchie
The C Programming Language (book)
Programming languages - C ANSI by ISO/IEC (draft)
C Programming Course C++ :
The C++ Programming Language (book)
C and C++: Siblings (pdf) by Bjarne Stroustrup C# :
Visual C# Language by Microsoft. Caml :
The Caml language
Objective Caml
The Objective-Caml system CLU :
CLU Home Page COBOL :
IBM COBOL family
COBOL Portal
TinyCOBOL
COBOL User Groups - COBUG CORAL :
Coral66
Computer On-line Real-time Applications Language Coral 66 Specification for Compilers (pdf) CPL :
Combined Programming Language (Wikipedia) Delphi :
Delphi 2005 by Borland
Pascal and Delphi
A brief history of Borland's Delphi Eiffel :
Eiffel
EiffelStudio by Eiffel Software
Visual Eiffel by Object Tools
SmartEiffel
EiffelZone Flow-Matic :
Flow-Matic and Cobol Forth :
Forth Interest Group Home Page Fortran :
User notes on Fortran programming
Fortran 2000 draft
Fortran 2003 JTC1/SC22/WG5 Haskell :
Haskell Home Page Icon :
The Icon Programming Language
Icon
History of the Icon programming language J :
J software
A management perspective of the "J" programming language Java :
Java by Sun Microsystems
Java Technology: an early history
Programming Languages for the Java Virtual Machine
James Gosling's home page JavaScript :
Cmm History by Nombas
JavaScript Language Resources from Mozilla
Standard ECMA-262 Lisp :
The Association of Lisp Users
An Introduction and Tutorial for Common Lisp Mainsail :
Mainsail from Xidak.
Mainsail Implementation Overview by Stanford Computer Systems Laboratory. M (MUMPS) :
M technologies
M[UMPS] Development Committee
What is M Technology? ML :
Standard ML
Standard ML '97 Modula :
Modula-2
Modula-3 Home Page
Modula-2 ISO/IEC Oberon :
A Brief History of Oberon
A Description of the Oberon-2 Language
The Programming Language Oberon-2
Oberon Language Genealogy Tree Objective-C :
Objective-C
Objective-C FAQ
Introduction to The Objective-C Programming Language by Apple
Objective-C: Links, Resources, Stuff Pascal :
ISO Pascal (document)
Pascal and Delphi Perl :
Perl Home Page
Perl
Larry Wall's Very Own Home Page PHP :
PHP: Hypertext Preprocessor PL/I :
Multics PL/I
IBM PL/I family by IBM Plankalkül :
Plankalkül PostScript :
PostScript level 3 by Adobe
PostScript and GhostScript by Jim Land
GhostScript Home Page Prolog :
Prolog Programming Language
The Prolog Language Python :
Python Home Page Rexx :
IBM REXX Family by IBM
The Rexx Language Association Ruby :
Ruby Home Page
Ruby programming language (Wikipedia)
Ruby - doc Sail :
Sail (Stanford Artificial Intelligence Language) Sather :
Sather History
Sather
GNU Sather Scheme :
Scheme by MIT
The Revised5 Report on the Algorithmic Language Scheme (in PostScript)
Schemers Home Page
SCM Self :
Self Home Page from Sun Sh :
Korn Shell of David Korn
Bash from GNU
Zsh Simula :
Simula by Jan Rune Holmevik Smalltalk :
Smalltalk Home Page
Smalltalk FAQ
The Early History of Smalltalk
The Smalltalk Industry Council web site
VisualAge Smalltalk from IBM
VisualWorks from Cincom
The history of Squeak
ANSI Smalltalk SNOBOL :
Snobol4 Resources by Phil Budne
Introduction to SNOBOL Programming Language by Mohammad Noman Hameed
Snobol4 Tcl/Tk :
Tcl/Tk Information
Other links on same subject :
The Language List (about 2500 computer languages) by Bill Kinnersley
An interactive historical roster of computer languages by Diarmuid Pigott.
Programming languages by The Brighton University
Programming languages
Diagram of programming languages history
The Programming Languages Genealogy Project
History of Programming Languages
99 Bottles of Beer
Dictionary of Programming Languages
Wikipedia: Computer languages
Computer-Books.us: free computer books
Also see this links
I am getting money from this links after signing in for free. Don't wast time just join and earn without any hard word.....Hello Friends,
I want to tell you about great site I found. They pay me to read e-mail, visit web sites and much more.
JOIN A CERTIFIED LEGITIMATE ONLINE BIZ!!!!
Would you like to Earn money without spending even a single penny?
Now! It is possible..
No Registration Fee
No Credit Cards required
No Hassle
No Risk
Not Nesseary to Join others
It's free to join and easy to sign up! CLICK THIS LINK TO VISIT:
Earn money without Investment
Earn money for getting ads to u r cell phone numbers what u want to get.
1) http://earnbyads.co.in/PI1.aspx?RC=5ba4f5ae
2) http://www.mginger.com/index.jsp?inviteId=883819
3) http://www.youmint.com/network-ramu4all_31
4) http://www.sms2earn.com?refid=5713
5) www.sms2india.co.in/?user=ramu4all_31
6) http://www.admad.mobi/112411-ThulasiramS.admad
7) http://www.mgarlic.com/?invite=222242142
The more time you spend surfing, the more chances of earning money.
1) http://www.earnptr.com/pages/index.php?refid=ramu4all31
3. Each time you refer a new user, you earn 10% of their image views forever!
http://www.capitalmails.net/pages/index.php?refid=ramu4all31
http://www.homepagepublicity.com/?referer=166996
http://www.jaxtr.com/ramu4all_31
Earn money without Investments:
Login for free and Earn money without any investment by clicking the below links...
I really getting money from this websites
I just joined Shelfari to connect with other book lovers. Come see the books I love and see if we have any in common. Then pick my next book so I can keep on reading. See by clicking the below link...
http://www.shelfari.com/invite/RJNuEo$a2-E6REr8y2iIPQ
http://ramu4all31.sulit.com.ph
http://www.resource-a-day.net/member/index.cgi?ramu4all_31
Earn money for reading E-mails:
The easiest way to make more money is to let others make them for you. Cashfiesta pays you for your referrals up to the 8th level. See for yourself how much you can earn, click on the Fiesta Calculator.
http://www.cashfiesta.com/php/join.php?ref=ramu4all_31
http://rolex-mails.com/pages/index.php?refid=ramu4all31
Get paid to take surveys! Get $6 after signing up! Get $1.25 per referred friend. Low Payout! Create your account absolutely free!
http://www.AWSurveys.com/HomeMain.cfm?RefID=ramu4all31
http://www.earnptr.com/pages/index.php?refid=ramu4all31
http://www.advercash.net/signup.php?ref=ramu4all_31
http://bux.to/?r=ramu4all_31
Payout : US$ 10.00
Per Click : US$ 0.01
Per Sign up : US$ 0.30
Referrals : 50%
http://www.masterbux.com/?r=ramu4all_31
http://www.bux3.com/?r=ramu4all31
http://www.just-click.us/?r=ramu4all_31
http://clix4coins.com/index1.php?ref=ramu4all_31