Re: gforth webserver, why isn't forth used all over ecommerce?



Elizabeth D Rather wrote:
We use Apache for FORTH, Inc.'s web site. It's a very good program. We never really considered a Forth solution for that. But the issue is when a general, fairly complete solution is or is not necessary and appropriate for an embedded application.

That may be your issue, but in this thread, we're not just discussing embedded systems (note the subject line and past conversation in this thread).

I bring up Apache not out of any deep love for it-- in the embedded system we've now completing, we didn't use Apache because it would be grotesque overkill. We instead used Xavante, which is written in Lua and is much lighter-weight. I bring up Apache mostly because what seeded this conversation was a poster noting Bernd's webserver code and saying "gosh, why would anyone use Apache when we have this?"

I wish people could get past the specific examples given and abstract to the larger questions being raised. The real question here is when is it appropriate to build from scratch and when is it better to reuse existing code. I've been making what I would hope would be an entirely uncontroversial statement: That there is no general answer-- that in order to answer that question with any intelligence, you have to start with project requirements and a consideration of where effort is best spent. That is, you have to answer the question by asking questions, or at the very least you have to be able to see the edges between the two and use your intuition and experience to make the decision.

I consider that uncontroversial. But when the discussion comes up in comp.lang.forth, thoughtful reflection seems to rub people the wrong way. To ask the question is to fly in the face of Forth dogma and romanticized ideals-- that it's *always* better to build from scratch, and that reuse of code (which dives into the parallel discussion about libraries) is bad.

Another idea that I think is uncontroversial is that some people here freely consider the costs of one approach (for libraries it might be licensing, size, speed, and complexity), but they don't consider the costs of the alternative Forth solution (for building from scratch the time taken to design, code, and test that code). You see this when people say "using X would mean $10 in licensing costs, 4 times bigger code, and much greater complexity, so we should build it ourselves in Forth."

> Apache, with all its goodness,
is pretty big, and expects OS services which are even bigger and more complex. We provide specific web services for some embedded apps, and found it much easier to write the subset of functionality we needed than to figure out how to shoehorn Apache into the resources available to us, and provide an interface to it (not to mention the issue of per unit costs to our customer for bigger products). And we did study for a while before reaching that conclusion.

Did that study look at webservers other than Apache? I assume you realize there are many others out there, including those designed to be used inside embedded systems.

Did you also look into building Forth into the webserver? There are modules (like mod_perl, mod_python, mod_ruby, etc.) that build those respective languages into the webserver, allowing it to have dynamic content driven by code in those languages. Nothing would prevent someone from doing the same for Forth and getting the same benefits users of those other languages have.

I assume that since you used the phrase "web services" that the embedded webserver you looked at wasn't serving just static pages, but something driven by Forth code (perhaps using templating or other techniques). Is this the case?

My point in asking these questions isn't to suggest your study's conclusion was wrong. My point is to find the edges of your study so that the peanut gallery here who hangs off the advice of experts can understand the limits of what that study looked into.
.



Relevant Pages

  • Re: XP pro and Apache 2
    ... I'm not into Apache, but from what I gather so far, you've got it ... running on your XP box as a 'virtual webserver' and from that box you can ... This indicates that the browser is consulting a DNS server (through your ... webserver is the HOSTS file and in that file I see no reference to ...
    (microsoft.public.windowsxp.configuration_manage)
  • Re: What are the dangers of having a Webserver?
    ... >> I keep reading about various security problems being found with Apache ... >> system through the webserver port, ... there are very occasionally bugs in the servers themselves such ...
    (comp.os.linux.security)
  • Re: Windows XP and IIS with .Net
    ... Yes, you could download Apache, but if you are only writing desktop you ... else that requires a webserver it requires IIS. ... need to move to Windows 2000 or Windows XP ... David Dietz -- IIS Technical Lead ...
    (microsoft.public.inetserver.iis.security)
  • apache13-fp - having mucho problems
    ... I HAVE to enable frontpage extensions on my apache webserver. ... I needed to install mod_frontpage AND apache13-fp. ...
    (freebsd-isp)
  • Re: Is there a web host for developers?
    ... Apache can't be compared to ASP.Net...apache is a web server, ... programming framework.. ... You don't program apache you just run your code on ... > So far, for developing, it seems .net means quicker but it costs vs. ...
    (microsoft.public.dotnet.framework.aspnet)