APL growing as a "Universal Programming Language"
Forum rules
This forum is for discussing APL-related issues. If you think that the subject is off-topic, then the Chat forum is probably a better place for your thoughts !
This forum is for discussing APL-related issues. If you think that the subject is off-topic, then the Chat forum is probably a better place for your thoughts !
1 post
• Page 1 of 1
APL growing as a "Universal Programming Language"
Greetings.
We setup Google Analytics on our APL Hosting site http://APLcloud.com and noticed more than 50% of the visits were from OUTSIDE the USA.
This makes sense for several reasons (mainly because the USA population is small compared to the rest of the world).
However, I believe the global reach of APL is directly related to APL's mathematical notation using special characters that allow all users to easily program APL "in their own human language".
For example:
The APL algorithm for finding the AVERAGE of a set of numbers is:
(+/V)÷⍴,V which is "universal" across all human languages.
In English, we call this AVERAGE and can encapsulate this APL statement into a monadic function (single argument passed on right) called "AVERAGE".
∇Z←AVERAGE V
Z←(+/V)÷⍴,V
∇
ENGLISH: AVERAGE 10 20 30 40 50
(Result) 30
However, in Russia, China, Germany, France, Spain and India .. each APL user can choose a different "NAME" for the same APL mathematical expression.
DUTCH: GEMIDDELDE 10 20 30 40 50 60
GERMAN: DURCHSCHNITTLICH 10 20 30 40 50 60
RUSSIAN: V_SREDNEM 10 20 30 40 50
FRENCH: MOYENNE 10 20 30 40 50
CHINESE: PINGJUN 10 20 30 40 50
SPANISH: PROMEDIO 10 20 30 40 50
INDIA: DIVAID 10 20 30 40 50
Traditional languages impose a set of dozens (hundreds) of internal functions and variable names that are based on ENGLISH. While this is also exists in APL it is a very small exception compared to the built-in APL function symbols:
This makes APL well suited as a universal programming language. While APL program names might be different across various cultures, the APL mathematical notation within the programs remains the same.
(+/V)÷⍴,V
+/V Add up a vector of numbers in variable V
÷ Mathematical "divide" function (dyadic, with both left and right arguments)
⍴,V Determine the length of vector (,) V (number of elements in the array)
Another interesting fact is the underlying global character set UNICODE. UNICODE allows the APL Symbol Set to become part of the 100,000 symbols and letters used by all languages on Earth. UNICODE allows a simple "copy/paste" of APL program code between most all operating systems and programs (email, databases, web pages, notepad, Skype, chat, etc.).
Look at the overall global trend of APL (the programming language) on GOOGLE TRENDS.
It seems clear that the global interest in APL is, in fact, GROWING !
Food for thought,
//W
We setup Google Analytics on our APL Hosting site http://APLcloud.com and noticed more than 50% of the visits were from OUTSIDE the USA.
This makes sense for several reasons (mainly because the USA population is small compared to the rest of the world).
However, I believe the global reach of APL is directly related to APL's mathematical notation using special characters that allow all users to easily program APL "in their own human language".
For example:
The APL algorithm for finding the AVERAGE of a set of numbers is:
(+/V)÷⍴,V which is "universal" across all human languages.
In English, we call this AVERAGE and can encapsulate this APL statement into a monadic function (single argument passed on right) called "AVERAGE".
∇Z←AVERAGE V
Z←(+/V)÷⍴,V
∇
ENGLISH: AVERAGE 10 20 30 40 50
(Result) 30
However, in Russia, China, Germany, France, Spain and India .. each APL user can choose a different "NAME" for the same APL mathematical expression.
DUTCH: GEMIDDELDE 10 20 30 40 50 60
GERMAN: DURCHSCHNITTLICH 10 20 30 40 50 60
RUSSIAN: V_SREDNEM 10 20 30 40 50
FRENCH: MOYENNE 10 20 30 40 50
CHINESE: PINGJUN 10 20 30 40 50
SPANISH: PROMEDIO 10 20 30 40 50
INDIA: DIVAID 10 20 30 40 50
Traditional languages impose a set of dozens (hundreds) of internal functions and variable names that are based on ENGLISH. While this is also exists in APL it is a very small exception compared to the built-in APL function symbols:
This makes APL well suited as a universal programming language. While APL program names might be different across various cultures, the APL mathematical notation within the programs remains the same.
(+/V)÷⍴,V
+/V Add up a vector of numbers in variable V
÷ Mathematical "divide" function (dyadic, with both left and right arguments)
⍴,V Determine the length of vector (,) V (number of elements in the array)
Another interesting fact is the underlying global character set UNICODE. UNICODE allows the APL Symbol Set to become part of the 100,000 symbols and letters used by all languages on Earth. UNICODE allows a simple "copy/paste" of APL program code between most all operating systems and programs (email, databases, web pages, notepad, Skype, chat, etc.).
Look at the overall global trend of APL (the programming language) on GOOGLE TRENDS.
It seems clear that the global interest in APL is, in fact, GROWING !
Food for thought,
//W
-
woody - Posts: 144
- Joined: Tue Dec 28, 2010 12:54 am
- Location: Atlanta, Georgia USA
1 post
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 1 guest
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group