Home > Archive > APL > June 2004 > APL+WIN and the internet
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
APL+WIN and the internet
|
|
| Graham Steer 2004-06-02, 6:30 pm |
| I have successfully written a set of APL client functions to automatically
access and process information from web sites. My question is is it possible
to write the equivalent server functions and have my machine act as the
server. If not can APL in some way be uploaded to my ISP to do the job.
Also is it possible when APL is acting a the server for ordinary web
browsers (with no access to APL) to effectively cause APL functions to run
and then receive the output as an APL generated HTML file.
What I wish to do is have an APL database on the server and allow users to
submit dates via their browsers. These dates will then be used by APL to
extract data from the database and generate both tables and graphs for
display on the users machine. Extracting the data, creating the tables and
graphs and including them in an APL generated HTML web page are all
relatively trivial if the answers to my questions above are all yes. If the
answers are yes any information on "how to" will be most welcome.
Graham.
| |
| Bj?rn Helgason 2004-06-03, 3:31 am |
| "Graham Steer" <graham@runsell.clara.co.uk> wrote in message news:<1086209924.18345.0@sabbath.news.uk.clara.net>...
> I have successfully written a set of APL client functions to automatically
> access and process information from web sites. My question is is it possible
> to write the equivalent server functions and have my machine act as the
> server.
In J there are several examples of using J as both server and client
for web applications.
Look at the Studio Labs for Sockets
In the J forum have been presented some very interesting solutions
using client/server interactions
www.jsoftware.com
| |
| Dick Bowman 2004-06-03, 4:30 am |
|
"Graham Steer" <graham@runsell.clara.co.uk> wrote in message
news:1086209924.18345.0@sabbath.news.uk.clara.net...
> I have successfully written a set of APL client functions to automatically
> access and process information from web sites. My question is is it
possible
> to write the equivalent server functions and have my machine act as the
> server. If not can APL in some way be uploaded to my ISP to do the job.
> Also is it possible when APL is acting a the server for ordinary web
> browsers (with no access to APL) to effectively cause APL functions to run
> and then receive the output as an APL generated HTML file.
>
[... deleted ..]
I think this is straightforward with recent releases of Dyalog APL (Versions
9 and 10). Certainly if the server is under your control. Maybe there's a
case to be made for an "APL available here" public server - but didn't that
used to be called timesharing?
| |
| Stefano Lanzavecchia 2004-06-03, 5:30 am |
|
"Graham Steer" <graham@runsell.clara.co.uk> wrote in message
news:1086209924.18345.0@sabbath.news.uk.clara.net...
> I have successfully written a set of APL client functions to automatically
> access and process information from web sites. My question is is it
possible
> to write the equivalent server functions and have my machine act as the
> server.
It is. Writing a trivial non-compliant, but still working and quite useful,
HTTP server is rather easy in almost any language. One of the workspaces
that come with the standard Dyalog APL install package shows a simple
example of such a beast. I am sure the other APL vendors have similar demos
in their packages. I am not aware of servers written in APL to handle other
protocols but some might be simple enough (POP3, NNTP) while some others
more complex (FTP, SMTP, IMAP).
> Also is it possible when APL is acting a the server for ordinary web
> browsers (with no access to APL) to effectively cause APL functions to run
> and then receive the output as an APL generated HTML file.
This is exactly what an HTTP server does.
> What I wish to do is have an APL database on the server and allow users to
> submit dates via their browsers. These dates will then be used by APL to
> extract data from the database and generate both tables and graphs for
> display on the users machine. Extracting the data, creating the tables and
> graphs and including them in an APL generated HTML web page are all
> relatively trivial if the answers to my questions above are all yes. If
the
> answers are yes any information on "how to" will be most welcome.
The answer is definitely yes but without knowing the interpreter you are
using (Dyalog? IBM? Cognos?) I am afraid I cannot get into technical
details.
--
WildHeart'2k4
| |
| Richard Nabavi 2004-06-03, 7:30 am |
| There are a number of ways of approaching this problem. Here are some
pointers.
Firstly, for security reasons, it's rather unlikely that a commercial
ISP will allow you to run an APL interpreter on their host system
(though you can always ask...) - they usually restrict you to a
specific set of programs you're allowed to run. So you would
probably have to host the web site (or at least those pages which need
to call APL) on your own system, which means running a machine 24
hours a day linked by a fast connection to the internet.
Assuming that is OK, you could run a Linux or Sun system and use the
open-source apache as the main web server. This would handle all the
HTTP protocol stuff, handle multiple connections, serve up those pages
which don't need dynamic content, etc. (Apache is used by a large
proportion of commercial websites).
For those pages which need to call APL, you can very simply get Apache
to run a small CGI script (I'd suggest writing it in Perl). When the
user requests the page, apache would run the script, and pass
environment variables with the details of the request. The script
simply needs to write the HTML to standard output, and apache then
sends that to the requesting user's browser.
There are various ways in which your script can pass the request to
APL and wait for the response. One easy way is for the script to
write to a 'named pipe' (created using the mkfifo program in Linux).
If you are running APLX, you can read from this pipe using Quad-HOST
(or a custom AP); something like this should work for other APLs as
well. When a request is available, control returns to APL with the
text of the request as a character vector. For best results, you'd
probably want to use multiple tasks so that you can handle multiple
users simultaneously.
When APL has created the HTML, it can return the data to the script
either by another pipe, or via a temporary file, which the script
writes to standard output. apache picks this up, and you're done!
There's actually very little code required in all this, although you
need to think about error handling and restarting if things go wrong.
| |
| Ray Powell 2004-06-03, 10:31 am |
| "Graham Steer" <graham@runsell.clara.co.uk> wrote:
>I have successfully written a set of APL client functions to automatically
>access and process information from web sites. My question is is it possible
>to write the equivalent server functions and have my machine act as the
>server. If not can APL in some way be uploaded to my ISP to do the job.
>Also is it possible when APL is acting a the server for ordinary web
>browsers (with no access to APL) to effectively cause APL functions to run
>and then receive the output as an APL generated HTML file.
I've seen a workspace that does exactly what you want (server on your own
computer). Most likely will also work with APLX.
Don't remember if it comes with APL+WIN, or it is an user supplied workspace.
Check their website (http://www.apl2000.com).
ray dot powell at shaw dot ca
--
Ray Powell
Victoria, BC
Canada
| |
| LatLong 2004-06-05, 8:55 pm |
| I know Graham now knows, help for his problem is in the NI workspace
distributed with APL+Win. I see a problem with this news group however. He
requested info on APL+Win. He got help on J, Dyalog APL, and one who did
not read or perhaps understand the original post: "The answer is definitely
yes but without knowing the interpreter you are using
(Dyalog? IBM? Cognos?) I am afraid I cannot get into technical details."
His interpreter is APL+Win. He got help for APLX with Perl and Pipes. I
wish APLX had copied []NI like it copied []WI, oops, OT. With GLEE, I can
report we are missing IBM APL2, and a SAX helpful hints. And not a word
about defined functions? I think we should give ourselves an A+ for
helpfulness.
"Graham Steer" <graham@xxxxxxxxxxxxxx> wrote in message
news:1086209924.18345.0@sabbath.news.uk.clara.net...
> I have successfully written a set of APL client functions to automatically
> access and process information from web sites. My question is is it
possible
> to write the equivalent server functions and have my machine act as the
> server. If not can APL in some way be uploaded to my ISP to do the job.
> Also is it possible when APL is acting a the server for ordinary web
> browsers (with no access to APL) to effectively cause APL functions to run
> and then receive the output as an APL generated HTML file.
>
> What I wish to do is have an APL database on the server and allow users to
> submit dates via their browsers. These dates will then be used by APL to
> extract data from the database and generate both tables and graphs for
> display on the users machine. Extracting the data, creating the tables and
> graphs and including them in an APL generated HTML web page are all
> relatively trivial if the answers to my questions above are all yes. If
the
> answers are yes any information on "how to" will be most welcome.
>
> Graham.
>
>
| |
| Stefano Lanzavecchia 2004-06-07, 3:55 am |
| > requested info on APL+Win. He got help on J, Dyalog APL, and one who did
> not read or perhaps understand the original post: "The answer is
definitely
> yes but without knowing the interpreter you are using
> (Dyalog? IBM? Cognos?) I am afraid I cannot get into technical details."
I did read AND understand the original post. However I did NOT read the
original subject and there was no mention of the interpreter's vendor in the
body of the post. Given that too many posts in newsgroups have meaningless
subjects I tend not to notice them. My bad: this once it was quite to the
point and reading it would have spared me from some embarassment. I
apologize to Graham.
--
WildHeart'2k4.
| |
| phil chastney 2004-06-07, 8:55 am |
| "LatLong" <NotThis.lat.long@earthlink.net> wrote in message
news:XoidnYnKY5gltV_dRVn-sQ@adelphia.com...
> I know Graham now knows, help for his problem is in the NI workspace
> distributed with APL+Win. I see a problem with this news group however.
He
> requested info on APL+Win. He got help on J, Dyalog APL, and one who did
> not read or perhaps understand the original post: "The answer is
definitely
> yes but without knowing the interpreter you are using
> (Dyalog? IBM? Cognos?) I am afraid I cannot get into technical details."
> His interpreter is APL+Win. He got help for APLX with Perl and Pipes. I
> wish APLX had copied []NI like it copied []WI, oops, OT. With GLEE, I
can
> report we are missing IBM APL2, and a SAX helpful hints. And not a word
> about defined functions? I think we should give ourselves an A+ for
> helpfulness.
and K for relevance? . . . /phil
| |
| Bj?rn Helgason 2004-06-07, 3:55 pm |
| "Stefano Lanzavecchia" <wildstf@hotmail.com> wrote in message news:<2iij62FngatmU1@uni-berlin.de>...
> Given that too many posts in newsgroups have meaningless
> subjects I tend not to notice them.
Amazingly there seem to be a number of people reading c.l.a and
waiting for a question and if one pops up people come out of the
woodwork and produce answers.
Not only to the newsgroup but also privately.
It would be good to see some more questions.
I hope c.l.a will become more active again.
I have to say I know nothing about this GLEE that keeps being
mentionedevery so often.
Is it an APL dialect or what?
| |
| Richard Nabavi 2004-06-08, 8:55 am |
| "LatLong" <NotThis.lat.long@earthlink.net> wrote in message news:<XoidnYnKY5gltV_dRVn-sQ@adelphia.com>...
> His interpreter is APL+Win. He got help for APLX with Perl and Pipes. I
> wish APLX had copied []NI like it copied []WI, oops, OT. With GLEE, I can
> report we are missing IBM APL2, and a SAX helpful hints.
With respect, the original post did not specify that the server would
have to be running Windows, nor that the interpreter would have to be
APL+Win, nor that the question was restricted to an approach using
[]NI. On the contrary, it mentioned the possibility of uploading APL
to the ISP to do the job, which would probably indicate a Linux or
Solaris solution given the popularity of these two platforms for web
serving by ISPs.
Irrespective of the APL used, it remains the case that writing your
own homebrew web server application (using []NI or equivalent in other
APLs - for APLX under Linux it's the ghttp library) is not the only or
indeed the best way to "extract data from the database and generate
both tables and graphs for display on the users machine", which was
the original question. Approaching the problem at the HTTP level
seems to me to be a mistake, given that apache is already available
free of charge on all major platforms (including Windows and Linux).
Why write your own when an extremely solid, well-tested,
high-performance, zero-cost, highly functional web server is available
to you?
I checked what is necessary to interface apache to any of the main APL
interpreters: you can do it with a seven-line shell script and about
six lines of APL. All you need is an APL which can either read from a
pipe (which looks just like a native file), or which supports []HOST
or equivalent - in other words, just about any APL interpreter.
I'll write this up and place it on our website
http://www.microapl.co.uk/apl for anyone who is interested.
Richard
| |
| Mike Kent 2004-06-08, 8:55 am |
| Richard Nabavi wrote:
....
> Irrespective of the APL used, it remains the case that writing your
> own homebrew web server application (using []NI or equivalent in other
> APLs - for APLX under Linux it's the ghttp library) is not the only or
> indeed the best way to "extract data from the database and generate
> both tables and graphs for display on the users machine", which was
> the original question. Approaching the problem at the HTTP level
> seems to me to be a mistake, given that apache is already available
> free of charge on all major platforms (including Windows and Linux).
> Why write your own when an extremely solid, well-tested,
> high-performance, zero-cost, highly functional web server is available
> to you?
Indeed,
> I checked what is necessary to interface apache to any of the main APL
> interpreters: you can do it with a seven-line shell script and about
> six lines of APL. All you need is an APL which can either read from a
> pipe (which looks just like a native file), or which supports []HOST
> or equivalent - in other words, just about any APL interpreter.
>
> I'll write this up and place it on our website
> http://www.microapl.co.uk/apl for anyone who is interested.
Thanks.
| |
| Bj?rn Helgason 2004-06-08, 3:55 pm |
| microapl@microapl.demon.co.uk (Richard Nabavi) wrote in message news:<e0632207.0406080050.34b12a36@posting.google.com>...
> "LatLong" <NotThis.lat.long@earthlink.net> wrote in message news:<XoidnYnKY5gltV_dRVn-sQ@adelphia.com>...
> Approaching the problem at the HTTP level
> seems to me to be a mistake, given that apache is already available
> free of charge on all major platforms (including Windows and Linux).
> Why write your own when an extremely solid, well-tested,
> high-performance, zero-cost, highly functional web server is available
> to you?
>
> I checked what is necessary to interface apache to any of the main APL
> interpreters: you can do it with a seven-line shell script and about
> six lines of APL. All you need is an APL which can either read from a
> pipe (which looks just like a native file), or which supports []HOST
> or equivalent - in other words, just about any APL interpreter.
>
> I'll write this up and place it on our website
> http://www.microapl.co.uk/apl for anyone who is interested.
>
> Richard
I took a look at your website and found this very interesting
"Version 1.1 of APLX for Linux is available free for non-commercial
use. This member of the APLX family brings the power and elegance of
the APLX development environment to the Linux platform, and also means
your APLX GUI applications for Windows or Macintosh can run unchanged
on Linux as well."
So now it is not just J that is available free for personal use
I am sure this will be popular
| |
| LatLong 2004-06-09, 3:55 am |
| A question about APL+Win is not about APL+Win? OK. Whether to use a APL
only solution, or use Apache, IIS or other for HTTP would depend on the
target audience. Indeed, it can be done in APL+Win without additional
software. I will concede, that in some applications it would not be the
best solution. But indeed, it might be the best.
Richard, can you write an HTTP server using APLX only? A more interesting
question might be, can you write a application that uses a unique TCP or UDP
protocol in APLX as you can in APL+Win? Certainly, APLX has the advantage
of being multi-platform. If not, is it being considered in a future
version?
can[color=darkred]
>
> With respect, the original post did not specify that the server would
> have to be running Windows, nor that the interpreter would have to be
> APL+Win, nor that the question was restricted to an approach using
> []NI. On the contrary, it mentioned the possibility of uploading APL
> to the ISP to do the job, which would probably indicate a Linux or
> Solaris solution given the popularity of these two platforms for web
> serving by ISPs.
>
> Irrespective of the APL used, it remains the case that writing your
> own homebrew web server application (using []NI or equivalent in other
> APLs - for APLX under Linux it's the ghttp library) is not the only or
> indeed the best way to "extract data from the database and generate
> both tables and graphs for display on the users machine", which was
> the original question. Approaching the problem at the HTTP level
> seems to me to be a mistake, given that apache is already available
> free of charge on all major platforms (including Windows and Linux).
> Why write your own when an extremely solid, well-tested,
> high-performance, zero-cost, highly functional web server is available
> to you?
>
> I checked what is necessary to interface apache to any of the main APL
> interpreters: you can do it with a seven-line shell script and about
> six lines of APL. All you need is an APL which can either read from a
> pipe (which looks just like a native file), or which supports []HOST
> or equivalent - in other words, just about any APL interpreter.
>
> I'll write this up and place it on our website
> http://www.microapl.co.uk/apl for anyone who is interested.
>
> Richard
| |
| David Liebtag 2004-06-09, 3:55 pm |
| Xref: 127.0.0.1 comp.lang.apl:699
APL2 includes an HTTP 1.1 compliant server. The implementation does not
include all possible features of a 1.1 server, but I believe it does include
all those that are required for compliance.
David Liebtag
IBM APL Products and Services
| |
| Richard Nabavi 2004-06-10, 8:55 am |
| >
> I'll write this up and place it on our website
> http://www.microapl.co.uk/apl for anyone who is interested.
>
This document (title "Interfacing the apache Web Server to APLX") is
now available from http://www.microapl.co.uk/apl/aplx_downloads.html.
It gives an introduction to how apache requests a page from another
application, and how you can pass the request to APL. The main
emphasis is on interfacing to APLX under Linux, but the paper also
describes how you can do the same under MacOS X, AIX, and Windows.
The technique should also be applicable to other APL interpreters, but
I'll leave that to others to write up!
[color=darkred]
interesting[color=darkred]
TCP or UDP[color=darkred]
advantage[color=darkred]
future
version?
Currently, to interface directly to the network from APLX requires
making platform-specific calls to the operating system. Depending on
what you want to do, that might be very easy or quite hard. For
example, under Linux you can very easily call the 'ghttp' library
using []NA, or under Windows you can interface to Internet Explorer or
the HTTP object.
A full cross-platform interface incorporated into APLX is planned for
a future version, and is likely to be done at several levels. Most
users will probably just want something simple like 'get me this web
page' or 'send this email', whereas a few might want to delve into the
lower-level protocols, as implied by your question.
Richard
| |
| Stefano Lanzavecchia 2004-06-10, 3:55 pm |
| X-Trace: news.uni-berlin.de 3rlNBv6PCm2yTxZXSboVWwEj1nhQ6pd5rUFUjJh3
QvQYUXWT3C
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1409
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1409
Path: corp-news!propagator2-maxim!news-in.newsgroups.com!news-in.spamkiller.net!newsranger.com!fu-berlin.de!uni-berlin.de!not-for-mail
Xref: 127.0.0.1 comp.lang.apl:701
> APL2 includes an HTTP 1.1 compliant server. The implementation does not
> include all possible features of a 1.1 server, but I believe it does
include
> all those that are required for compliance.
If that's true (and I don't see why Dave should tell lies) hats down. HTTP
1.1 compliance is much trickier than HTTP 1.0 compliance. In fact a lot of
the homebrew web servers (not only in APL but in many other languages) are
are barely 1.0 compliant...
--
WildHeart'2k4
| |
| David Liebtag 2004-06-10, 3:55 pm |
| Well, I wrote it to the HTTP 1.1 spec and tried my best to make it
compliant. I think I succeeded; if it's not, it's a mistake.
David Liebtag
| |
| LatLong 2004-06-11, 3:55 am |
| I have just been sent an APL+Win workspace that claims to implement HTTP 1.1
not only as a Server, but as a Client. The documents in the workspace state
it will falls back to 1.0 for clients that do not support 1.1. I have not
tried this workspace, but it appears to support its claim.
"Stefano Lanzavecchia" <wildstf@hotmail.com> wrote in message
news:2insehFof2baU1@uni-berlin.de...
>
> A more interesting question could be: has anybody ever written a fully
> compliant HTTP 1.1 server in any APL, or dialect, or affine? Somehow, I
> doubt it...
> --
> WildHeart'2k4
>
>
| |
| Bob Hoekstra 2004-06-12, 3:55 am |
| LatLong wrote:
> A question about APL+Win is not about APL+Win? OK. Whether to use a APL
> only solution, or use Apache, IIS or other for HTTP would depend on the
> target audience. Indeed, it can be done in APL+Win without additional
> software. I will concede, that in some applications it would not be the
> best solution. But indeed, it might be the best.
>
> Richard, can you write an HTTP server using APLX only? A more interesting
> question might be, can you write a application that uses a unique TCP or UDP
> protocol in APLX as you can in APL+Win? Certainly, APLX has the advantage
> of being multi-platform. If not, is it being considered in a future
> version?
> ...
I would like to voice my support for Richard's proposal. I have long ago stated my
opposition to the concept of writing APL HTTP servers when free products like Apache
are available - to achieve anything like the same level of efficiency, functionality
and robustness will require far more energy than one can justify. Don't reinvent the
wheel.
I am sure that you could implement something based on RN's suggestion in APL+, or any
other modern APL. I was working on something very much along the same lines in Dyalog
APL only a few months ago (project was scrapped). The only significant difference
between RN's approach and mine was that (a) I used perl for the "glue" rather than a
shell script (much, much more efficient) and (b) I had my APL server listening to a
reserved socket rather than using named pipes.
What his suggestion doesn't explain is that one can very easily make this scale, i.e.
a very large site may want to have a load balancer fronting several dedicated web
servers with the APL being served by one or more dedicated back-end hosts. This can
be achieved with very little change to RN's code. Not only does this provide scaling,
but means that one might use Windows for the APL part (benefiting from familiarity)
and a Unix for the web server for the internet facing part (benefiting from greater
stability, security & virus resistance, etc). In fact, almost any Unix-like OS will
do: Linux, Solaris, FreeBSD, Irix, AIX, HP-UX...
I suggest that Graham studies the code samples carefully and considers their
suitability for implementation, rather than writing an APL web server.
Personally, unless there is computation that uses the strengths of APL, I might have
considered not using APL at all (e.g. MySQL for the database, perl for the rest) but
I suppose I'll get flamed for that comment :-)
--
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GO/! d- s++:+ a+ C++(++++) US++++$ UB++ U*++ P+++ L+++ E--- W+++ N++ w--- O-
M+ V- PS+ PE+ Y+ PGP t+ 5++ X R* tv+ b+ DI++ D G e(*) h++/-- r+++ y?
------END GEEK CODE BLOCK------
-----------------------------------------------------
Bob Hoekstra: APL & Unix Consultant
Telephone: +44 1483 771028
Mobile: +44 7710 562345
Email: Bob.Hoekstra@HoekstraSystems.ltd.uk
-----------------------------------------------------
| |
| Stefano Lanzavecchia 2004-06-12, 8:55 am |
| > can you write an HTTP server using APLX only?
A more interesting question could be: has anybody ever written a fully
compliant HTTP 1.1 server in any APL, or dialect, or affine? Somehow, I
doubt it...
--
WildHeart'2k4
| |
| LatLong 2004-06-13, 3:55 am |
| Bob - you make a sweeping generalization. Without knowing the
specifications for a given project, you can not rule out any solution. A
low volume web server is quite possible in just APL, and just might be a
perfect solution for the project at hand. And indeed, APL has worked
perfectly for a number of projects requiring a web server.
"Bob Hoekstra" <Bob.Hoekstra@HoekstraSystems.ltd.uk> wrote in message
news:cadlif$9af$1$8300dec7@news.demon.co.uk...
> LatLong wrote:
APL[color=darkred]
interesting[color=darkred]
UDP[color=darkred]
advantage[color=darkred]
>
> I would like to voice my support for Richard's proposal. I have long ago
stated my
> opposition to the concept of writing APL HTTP servers when free products
like Apache
> are available - to achieve anything like the same level of efficiency,
functionality
> and robustness will require far more energy than one can justify. Don't
reinvent the
> wheel.
>
> I am sure that you could implement something based on RN's suggestion in
APL+, or any
> other modern APL. I was working on something very much along the same
lines in Dyalog
> APL only a few months ago (project was scrapped). The only significant
difference
> between RN's approach and mine was that (a) I used perl for the "glue"
rather than a
> shell script (much, much more efficient) and (b) I had my APL server
listening to a
> reserved socket rather than using named pipes.
>
> What his suggestion doesn't explain is that one can very easily make this
scale, i.e.
> a very large site may want to have a load balancer fronting several
dedicated web
> servers with the APL being served by one or more dedicated back-end hosts.
This can
> be achieved with very little change to RN's code. Not only does this
provide scaling,
> but means that one might use Windows for the APL part (benefiting from
familiarity)
> and a Unix for the web server for the internet facing part (benefiting
from greater
> stability, security & virus resistance, etc). In fact, almost any
Unix-like OS will
> do: Linux, Solaris, FreeBSD, Irix, AIX, HP-UX...
>
> I suggest that Graham studies the code samples carefully and considers
their
> suitability for implementation, rather than writing an APL web server.
>
> Personally, unless there is computation that uses the strengths of APL, I
might have
> considered not using APL at all (e.g. MySQL for the database, perl for the
rest) but
> I suppose I'll get flamed for that comment :-)
>
> --
> -----BEGIN GEEK CODE BLOCK-----
> Version: 3.1
> GO/! d- s++:+ a+ C++(++++) US++++$ UB++ U*++ P+++ L+++ E--- W+++ N++ w---
O-
> M+ V- PS+ PE+ Y+ PGP t+ 5++ X R* tv+ b+ DI++ D G e(*) h++/-- r+++ y?
> ------END GEEK CODE BLOCK------
>
> -----------------------------------------------------
> Bob Hoekstra: APL & Unix Consultant
> Telephone: +44 1483 771028
> Mobile: +44 7710 562345
> Email: Bob.Hoekstra@HoekstraSystems.ltd.uk
> -----------------------------------------------------
| |
| Bob Hoekstra 2004-06-15, 8:55 pm |
| LatLong wrote:
> Bob - you make a sweeping generalization. Without knowing the
> specifications for a given project, you can not rule out any solution. A
> low volume web server is quite possible in just APL, and just might be a
> perfect solution for the project at hand. And indeed, APL has worked
> perfectly for a number of projects requiring a web server.
> ...
You are quite right on all counts. But my generalisations comes from the fact that I
have seen these things grow. One moment all you want is to serve a few basic HTML
pages, but before the projects is over the conditions have changed - now the
boss/customer/consumer wants support for SVG, XML, gifs, SSL (with user
authentication), CCS, server side java processing, javascript generated on the fly
and inserted into the pages, etc. Don't forget log file analysis and interfacing to a
standard DBMS (oracle/sybase/mysql/etc) because other apps also want to query the
data. I could go on, but I'm sure that many readers have seen this type of "project
goal expansion".
Yes, you can do these things in APL. But why? apache is free, runs on just about
everything with more cpu power than an abacus, is supported by a great team of
developers and can do anything (if you include all the modules) that any sane person
would want from a httpd and a whole lot more. Furthermore, it is efficient and fairly
secure. Interfacing apache to APL is not rocket science, so it makes sense to use it.
All of us (should) have many tools, and for any task we should use the most
appropriate one. If the OP is convinced that APL is the right tool, fine. I stand by
my comment - for the simplest case (assuming that wwe can _guarantee_ that it stays
the simplest case) use APL. Where this condition is not met, think very carefully.
Maybe it's time to discover why apache is so popular?
To the man with only a hammer, everything looks like a nail.
|
|
|
|
|