Slashdot Mirror


Web Apps Language Opa Gets a Web-Based IDE

First time accepted submitter koper writes "The new programming language Opa makes web programming easier by providing a one-tier one-language-for-everything approach. Now it goes one step further by providing a (very-minimalistic for now) web-based IDE that allows users to compile & deploy Opa programs in one click in your web browser. Give it a spin!"

83 comments

  1. Re:first turd! by Anonymous Coward · · Score: 0

    Off-topic yet insightful.. oO

  2. Might be mocked by some... but... by Anonymous Coward · · Score: 0

    Things like this would be a really nice way to introduce people to programming, 0-setup and they can just 'start' with some examples

    As someone who has taught programming at summer camps, tutored college intro programming and other such classes, I can see this being nice for not only 'new' people, but also anyone just wanting to 'play' with the language.

    1. Re:Might be mocked by some... but... by cshark · · Score: 1

      It's great for that. But you're not going to see a lot of expert programmers sign on to something that has no clear distinction between database, app server, client, and web server. And, since Opa has a totally unique way of doing things, it's not going to be easy to re-use most anything you pick up learning Opa. Sure, you could teach newbie programmers how to do it, but there's zero commercial demand for it, and you're teaching them a skill set that's not good for anything else (right now anyway). You're better off teaching new programmers Python. At least that way, they'll pick up habits that are re-usable elsewhere.

      --

      This signature has Super Cow Powers

    2. Re:Might be mocked by some... but... by justforgetme · · Score: 1
      --
      -- no sig today
  3. Nice writeup by msobkow · · Score: 1

    It's nice to see someone presenting an honest assessment of their technology's actual capabilities instead of trying to spin it into something more than it is with buzzwords like "artificial intelligence".

    "Opa is a concise and elegant language for writing distributed web applications."

    It looks tighter than something like Java or C#, but it's still tied to manipulation of the DOM structures through, so it does require a solid understanding of the underlying web technologies, XML, and HTML. I don't think there's any way of avoiding that, though, because unless you expose the low-level capabilities, you limit the expressiveness of the final system.

    There are no magic bullets. Tools may make it easier or do more work for you than others, but sooner or later you need human intelligence to tie it all together and make it useful.

    --
    I do not fail; I succeed at finding out what does not work.
    1. Re:Nice writeup by buchner.johannes · · Score: 2

      If 90% of all web apps are the same, a language (or in case of Opa, it should probably be called a web application build system) can be the magic bullet for 80%.

      --
      NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
    2. Re:Nice writeup by datavirtue · · Score: 1

      Is it even possible to write a web app in ASM? I think so.

      --
      I object to power without constructive purpose. --Spock
    3. Re:Nice writeup by funfail · · Score: 1

      At the end, everything is written in ASM...

  4. Re:first turd! by ThurstonMoore · · Score: 1

    Bravo! This is why I browse with all comments on. +5

  5. Opa = Grandpa by Anonymous Coward · · Score: 1

    Makes it sound very outmoded in Dutch, German, and perhaps a few other languages around the world.

    1. Re:Opa = Grandpa by Anonymous Coward · · Score: 1

      You've seen nothing yet. Think Japanese, "Oppai"

    2. Re:Opa = Grandpa by Zumbs · · Score: 1

      In Greek Opa is similar to Spanish Olé.

      --
      The truth may be out there, but lies are inside your head
    3. Re:Opa = Grandpa by Anonymous Coward · · Score: 1

      In spanish (argentina) opa means stupid/dumb.

      Also, the licence is AGPL, for a programming language that kind of restrict almost all serious use.

      Good luck selling your language dude!

    4. Re:Opa = Grandpa by Zumbs · · Score: 1

      Not my language, dude ;-)

      --
      The truth may be out there, but lies are inside your head
  6. XSS scripting issues by networkz · · Score: 3, Insightful

    Neat, but that site wont work with NoScript installed unless you allow XSS.

    Not a huge problem for some, but is a deal breaker for me.

    unless there's a workaround?

    1. Re:XSS scripting issues by ThurstonMoore · · Score: 3, Funny

      Workaround, disable no-script.

    2. Re:XSS scripting issues by Anonymous Coward · · Score: 0

      Not gonna happen.

    3. Re:XSS scripting issues by msobkow · · Score: 1

      Are you seriously complaining that Javascript enabled technology won't work with NoScript blocking Javascript from running?

      Man, I've had some good stuff in my day, but I want some of whatever you're smoking!

      --
      I do not fail; I succeed at finding out what does not work.
    4. Re:XSS scripting issues by networkz · · Score: 1

      You're confusing running Noscript, and it's per-site blocking - with XSS blocking which applies to all sites, not just one.

      Might want to read up on NoScript, babes!

    5. Re:XSS scripting issues by networkz · · Score: 1

      Anti-XSS protection exceptions however, are not a one-click solution. So hence it being a deal breaker.

    6. Re:XSS scripting issues by Anonymous Coward · · Score: 0

      Here's a crazy idea: try reading the post you're replying to before you actually reply.

    7. Re:XSS scripting issues by msobkow · · Score: 1

      Here's an idea: Explain what you mean instead of assuming your audience knows the details of the issue as well as you do.

      --
      I do not fail; I succeed at finding out what does not work.
    8. Re:XSS scripting issues by Anonymous Coward · · Score: 1

      Here's an idea: maybe if the OP says "unless you allow XSS", perhaps what he really means is "unless you allow XSS".

    9. Re:XSS scripting issues by msobkow · · Score: 0

      You're still assuming that I have any grasp of why a cross-site scripting issue would affect running Javascript.

      You also assume that I knew NoScript has to be enabled on a per-site basis, rather than defaulting to "On" like AdBlock Plus. Having never been paranoid enough to shut off JavaScript, I've never installed NoScript and would never even consider developing a real application to work around the limitations that requirement would impose. What's next? Demand for lynx support?

      --
      I do not fail; I succeed at finding out what does not work.
    10. Re:XSS scripting issues by donscarletti · · Score: 1

      XSS or Cross Site Scripting is a nasty method that bad people use to spy on sites you are logged in to. NoScript is a Firefox extension to limit javascript access privileges to prevent such attacks in addition to providing per-site script blocking.

      In other words, he was complaining that he had to disable his XSS protection, not javascript in its entirety.

      Those are the details, you could have looked them up yourself on google and been the one to clarify that post, but instead you wrote something based on incorrect assumptions and you were rebuked for it by a guy called "Anonymous Coward". If you care about an issue enough to comment, at least do 2 minutes of research, you really cease to be "audience" once you start heckling.

      --
      When Argumentum ad Hominem falls short, try Argumentum ad Matrem
    11. Re:XSS scripting issues by dkf · · Score: 2

      Fix NoScript then... since its obviously broken.

      Or add proxying to your local server for the JS content that would otherwise come from another server. Or use something else that doesn't insist on using unsafe security practices. How hard could it be?

      --
      "Little does he know, but there is no 'I' in 'Idiot'!"
    12. Re:XSS scripting issues by Anonymous Coward · · Score: 1

      You're still assuming that I have any grasp of why a cross-site scripting issue would affect running Javascript.

      You don't need to know the details. You can infer from the OP that NoScript has protections against XSS, separate from blocking Javascript entirely, and that this new IDE somehow triggers those protections.

    13. Re:XSS scripting issues by mhelander · · Score: 1

      Thank you, +1 informative

    14. Re:XSS scripting issues by Anonymous Coward · · Score: 0

      I hear computer viruses can't get in if you wear a condom.

  7. Re:first turd! by Anonymous Coward · · Score: 0

    What the hell kind of name is "Thurston"?

  8. Ugh by Anonymous Coward · · Score: 0

    Another language to learn? Man, these pop up like mushrooms after rain.

    1. Re:Ugh by Hazel+Bergeron · · Score: 1

      Modern technology is about dragging people along just quickly enough that they don't stop to look around and see how shit everything is.

  9. Not True with GWT by koestrizer · · Score: 2

    Google Web Toolkit allows you to create nice web client applications without any significant knowledge of HTML or CSS. Instead, you have to know the GWT Java classes (not JavaScript; it gets translated into that automagically). I used it in a real project and had to deal with CSS only to make it "nice to see".

    1. Re:Not True with GWT by msobkow · · Score: 1

      My point is that you are providing the human intelligence to work with that tool. You do the layouts, you tie it to data, even if it's at a higher level than raw HTML, CSS, and Javascript. Neuron Data's Open Interface used to be an abstract GUI toolkit that ran on Unix/X-11 systems, Windows, and Apple MacOS. You could stick with their abstract widgets and knock off an interface pretty quickly, but if you needed to do real customization, the hooks were still there to extend and customize how things looked, right down to creating custom widgets.

      Don't confuse the power of a 4GL to deal with a basic 80% line of business application with the ability to deal with the fundamental complexity of a real system. If line of business needs suited everyone, we'd have all been using something like MS Access for years.

      --
      I do not fail; I succeed at finding out what does not work.
    2. Re:Not True with GWT by koestrizer · · Score: 1

      Indeed GWT is not a panacea. But it can definitely be called a general-purpose programming environment for client/server applications, with the client running as a browser application on a broad base of browsers without any browser-specific coding required. It is also true that because it is general-purpose, the programmer must create "data-bindings" from widgets to database tables explicitly, if his application requires this. But how should it be done differently, if GWT is supposed to be the basis of Google Mail, Google Office applications and any other application one can think of running inside a browser ? GWT is not just a database-based framework, but a very generic widget-based programming infrastructure from which programmers can build whatever they can think of.

  10. who gives a fuck about this useless platform? by Anonymous Coward · · Score: 0

    are we going to get a writeup on slashdot every time oracle releases a new version of peoplesoft? because this closed pay-only platform is just about as good and has way way way less users. I feel like I'm reading fucking bitcoin stories--nobody fucking cares!

    1. Re:who gives a fuck about this useless platform? by koper · · Score: 1

      Well, you may not care, but obviously some people do. Also if you rant something at least you could get your facts straight; the platform is not closed (it's open source) and it's not pay-only (the AGPL licence is free and so is the proprietary one for small and medium companies, see here and here)

  11. Re:first turd! by ThurstonMoore · · Score: 1

    Thurston Moore is singer/guitarist for Sonic Youth, I like them.

  12. You only ever need to know assembly, C and Python. by Anonymous Coward · · Score: 1

    That's what happens when people don't know assembly, C and Python. Those are the only three languages you'll ever need to know for doing any type of programming.

    You use C and assembly when you need to interface with hardware, when you need to keep your software small, when you need speed, or when you need absolute control. You use Python for everything else, including web development, text processing, scientific computing, servers, and desktop applications.

    Given how easily Python interfaces with C, and how easily C interfaces with assembly, you have a perfect stack for every kind of programming problem imaginable. You can easily combine them as necessary to solve your problem quickly and properly.

    There are high quality free and open source implementations of each, and they are supported in some form or another on just about every worthwhile platform available. No other languages or platforms come close.

  13. Re:You only ever need to know assembly, C and Pyth by FlyingGuy · · Score: 1, Interesting

    Python is just a superset of C that some ass wrote because he thought it would be cute to have an invisible block closure/. I am forking python and adding a customizable block closure so people have the choice to be handcuffed by indentation as block closure if they are really that stupid.

    If you know C and assembler you know ever stinking POS scripting language that has come down the pike, since every last one of them is nothing more then a C derivative.

    --
    Hey KID! Yeah you, get the fuck off my lawn!
  14. Re:first turd! by chill · · Score: 1

    Thurston Howell III was the rich, old guy on Gilligan's Island.

    --
    Learning HOW to think is more important than learning WHAT to think.
  15. Re:You only ever need to know assembly, C and Pyth by Anonymous Coward · · Score: 0

    What, you normally don't indent your code? Are you a rebel who leaves it all left-justified? Is that why you have such a problem with Python's indentation approach?

  16. Re:You only ever need to know assembly, C and Pyth by Anonymous Coward · · Score: 0

    Bah, C is just syntactic sugar over assembly, anyway.
    (In other words, you're an idiot that has completely missed the point of scripting languages.)

  17. Re:You only ever need to know assembly, C and Pyth by istartedi · · Score: 1

    Except of course when you need to pay the rent and the project is in Java, or C++, or PHP, or... (etc.).

    With those minor exceptions, you're right. :)

    --
    For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
  18. Re:first turd! by Anonymous Coward · · Score: 0

    So much for browsing +5. You just got trolled.

  19. Re:first turd! by ThurstonMoore · · Score: 1

    I browse at -1. The + 5 was for the post.

  20. Re:You only ever need to know assembly, C and Pyth by Rockoon · · Score: 1

    You use C and assembly when you need to interface with hardware

    Which language feature is it that enables C to interface with hardware? Were you thinking of pointers? Seriously?

    I think you are under the growing misconception that C is "close to the hardware."

    --
    "His name was James Damore."
  21. Re:You only ever need to know assembly, C and Pyth by Thing+1 · · Score: 1

    Yeah, you're saying "get off my lawn" and you're not advocating toggling the switches manually to input your program? You fail old age. (That, and try doing regexes in C...)

    --
    I feel fantastic, and I'm still alive.
  22. Re:first turd! by Thing+1 · · Score: 1

    This has been circulating for at least a decade. I saw it first (which was the only other time I've seen it) over a decade ago, on alt.tasteless (Usenet).

    --
    I feel fantastic, and I'm still alive.
  23. Re:You only ever need to know assembly, C and Pyth by Anonymous Coward · · Score: 0

    Are you for real? Are you fucking serious? ARE YOU FUCKING KIDDING US?

    Virtually all production-grade C compilers allow some form of inline assembly code. Depending on the hardware in question, this will allow you to do such things as use processor-specific opcodes, write to various processor and controller registers, and otherwise interface directly with hardware in ways that cannot be done from many other programming languages.

    Furthermore, C gives exceptional control over the layout of data in memory, far beyond what many other languages allow. Yes, pointers do help with this. This is often essential when interfacing with hardware.

    Don't take my word for it either, fool. Just go and see how almost every embedded and non-embedded OS today is written in C. For crying out loud, they usually make it damn easy to write device drivers (yes, device drivers which interface directly with hardware!) written purely in C! Go look at the source code to the fricking Linux kernel if you don't believe me. You'll see almost all of it written in C, including the device drivers.

    You need to drag your sorry Rubyist ass back to reddit, where the utter bullshit you're spouting out has a place. Your misbehavior is just not tolerated here. Rockoon, you make us all sick with your nonsense.

  24. Re:You only ever need to know assembly, C and Pyth by Anonymous Coward · · Score: 0

    If you did not have to worry about minimum latency issues / tuning your code by adding NOP's or fiddling with the addresses of particular words in storage to achieve optimum execution times, or have never heard the words "Mercury Delay Line", you've no idea of what old age is, "dude".

  25. Why not JavaScript? by SanityInAnarchy · · Score: 1

    I get the conceptual framework of deploying a single "binary" to everything.

    Here's what I don't get: Why invent a new language, bound to a framework and to a specific target application, rather than adapting an existing language to the task? What can I do with Opa that I can't with JavaScript?

    --
    Don't thank God, thank a doctor!
    1. Re:Why not JavaScript? by Anonymous Coward · · Score: 0

      It's the client-server split brain. You need static type analysis and erlang-esque messaging so everything appears in a single flow, even if it is not.
      Opa can assess what belongs where behind the scenes, which is one of its unique features. At everything else (including comprehesible syntax or real database), it fails miserably.

      When you're using javascript or any other dynamic language, you have to be explicit about client/server and the infrastructure to communicate between the two.

    2. Re:Why not JavaScript? by cshark · · Score: 1

      Yes, I understand this, but you're still writing Javascript if Javascript is being created (which it is with Opa), if you're thinking about it or not.

      You just add so many layers to it that figuring out what's actually going on at different layers inside the application becomes a hell of a lot more difficult.

      This is the same problem Rails has, and you see it with Javascript frameworks like Ext (or whatever they're calling it these days). I'm not saying Opa is bad, just that as a control freak programmer who likes to know at every step what his app is doing, that I would have trouble with giving that up. I don't think I'm the only one either.

      I understand the need to write things faster.
      I work in production, I have to understand this.
      What I can't comprehend is why you want to create problems for yourself that you can't easily solve.

      Maybe you could enlighten me there.

      Thanks.

      --

      This signature has Super Cow Powers

    3. Re:Why not JavaScript? by SanityInAnarchy · · Score: 1

      JavaScript can handle Erlang-esque messaging, it just gets ugly with having to use callbacks and closures for everything. There are projects which fix this without building a whole new language.

      What does static type analysis have to do with anything?

      --
      Don't thank God, thank a doctor!
  26. some substance to it besides all this fud? by Anonymous Coward · · Score: 1

    I've actually tried to follow through the site - installing the compiler, reading the manual and trying it out. First impressions:

    1. The language itself is just a bastard sorry child of ocaml and erlang.
    2. Both parents are specific languages with steep learning curve.
    3. Using powerful paradigms with necessary horrible syntax makes no sense here - especially when webapp developers are your target audience.
    4. Opa brings a lot of hidden "gay magic" (all-in-one binary, the whole client/server rpc thing, objectified xhtml), yet fails to deliver something meaningful.
    5.To clarify the above, it doesn't make database models, templating, forms or MVC in general any easier - there is NO sweet spot hit as seen in ruby on rails or web2py - in fact, it's very, very lowlevel with neat erlang-like client/server model behind the scenes.

    Database, or better said, the lack of thereof, is a topic in itself:

    1. in OPA, there's a persistent storage of key/value, with a single index over it.
    2. no SQL, not even noSQL, no nothing. if someone manages to actually query some fields past key/value storage, please enlighten me.
    3. I suppose this is for the better, since well, we don't need to use real database queries in webapps, right? uh...

    Note that these are first impressions, not necesarily correct. OPA is very interesting from academic standpoint - in fact its origins are in academia. Damn undergrads should know their place - ocaml, erlang even scheme never proven to be useful past np-hard problems. As far webdevs are concerned, we just want our import flying

  27. Not for commercial use - AGPL by Cato · · Score: 1

    Opa is a really interesting design but it's AGPL, so it can't be used for any closed-source apps, even if hosted on a server. Maybe they will dual-license it in future, but right now it's only for open source work.

    1. Re:Not for commercial use - AGPL by devent · · Score: 1

      Open Source can be commercial, you know? Ask Redhat with US$ 909.3 million (FY 2011) revenue.

      --
      http://www.mueller-public.de - My site http://www.anr-institute.com/ - Advanced Natural Research Institute
    2. Re:Not for commercial use - AGPL by koper · · Score: 1

      Actually it *was* dual-licence from the start. Moreover for some time MLstate offers proprietary licence for free.

  28. Why must every new platform have it's own server? by cshark · · Score: 2

    Okay, so this is the sixth new platform I've reviewed in the last year that has its own built in web server. Why? It's a complete pain in the ass to manage platforms that are built this way. Most of the time, the servers they come with are not as good for general purpose use as Apache, and well, because they require their own servers... you can't really run them on a traditional server if you wanted to. Now, I understand the need and desire to change the paradigm. I've been there. I've tried to do it. But the web server paradigm EVERYONE ELSE USES is not broken. Why the hell is everyone trying to replace it with something that is untested, that doesn't work as well? Why can't someone design a precise, straight forward language that plugs into my web server, which allows me to scale and thread properly to billions of connections? I'm not asking for a lot. Other than I'm asking for a lot. Apparently.

    --

    This signature has Super Cow Powers

  29. Re:You only ever need to know assembly, C and Pyth by cshark · · Score: 1

    Spoken like someone who didn't take Python seriously enough to even learn the basic syntax. Well done sir. This kind of ass hattery is epic. I aspire to it. Thank you.

    --

    This signature has Super Cow Powers

  30. Re:You only ever need to know assembly, C and Pyth by cshark · · Score: 1

    Some people can't think without brackets. These kinds of people don't understand anything but C, and never will. You should feel sorry for this clod. He's earned it.

    --

    This signature has Super Cow Powers

  31. Re:You only ever need to know assembly, C and Pyth by cshark · · Score: 1

    When I think about paying rent, I ask myself what languages are in the highest demand, but the lowest supply. Usually some framework subset, or cms in php. Php is great. Easy, fast, flexible. And you won't have any problems with it if you think like a C++ programmer.

    --

    This signature has Super Cow Powers

  32. Re:You only ever need to know assembly, C and Pyth by justforgetme · · Score: 1

    He doesn't like excess whitespace because he is programming with it

    --
    -- no sig today
  33. Re:You only ever need to know assembly, C and Pyth by justforgetme · · Score: 1

    Everybody knows that real programmers program the logic gates directly, no sugar there!

    --
    -- no sig today
  34. Opa's database sucks by Anonymous Coward · · Score: 0

    After spending a week with Opa, I had to conclude that the database is next to useless for anything more than the most trivial database operations. A couple of queries on the mailing list led to "I'll find someone to answer that" responses, but with no further action. I'll keep reminding them every month, but I don't hold out much hope.

    1. Re:Opa's database sucks by Anonymous Coward · · Score: 0

      There seem to be a solution

  35. Re:You only ever need to know assembly, C and Pyth by Anonymous Coward · · Score: 0

    He doesn't mention his age. For all we know, he could be 13 years old, but just be smart enough to know the truth of the matter. What he says is right, regardless of age. Furthermore, regular expressions are not at all difficult to do in C. The GNU C library has good support for regexes, and there's always PCRE if you're not using the GNU C library. Both make using regexes from C very trivial.

  36. Re:You only ever need to know assembly, C and Pyth by Crudely_Indecent · · Score: 1

    What, you normally don't indent your code?

    Sure, I do...but I don't necessarily indent my code YOUR WAY. I indent to my preference.

    Sometimes, I put entire if statements on a single line! Not to be contrary, but because they're just that damned simple. Of course, not in Python......

    --


    "Lame" - Galaxar
  37. Re:Why must every new platform have it's own serve by Riskable · · Score: 2

    We had what you prefer for like a decade now and you know what? It sucks. Like PHP is somehow the the pinnacle of how application development should be. Hah!

    Not to mention the fact that managing Apache httpd or Nginx with generic language "plugins" is about as intuitive as tying your shoes using a robotic atm controlled by a BlackBerry.

    Also, please tell me how this model of development "doesn't work well?" If it doesn't work well no one will use it. Problem solved!

    Why don't you take a break from this old school, all-problems-have-been-solved web of yours and go tell some kids to get off your lawn.

    --
    -Riskable
    "Those who choose proprietary software will pay for their decision!"
  38. Certainly by koestrizer · · Score: 1

    ..you can write a web app in assembly language. It will just be more time-consuming do develop than using perl, C#, Java, GWT or similar technologies. It will probably be much smaller in memory footprint and much faster in execution perfomance, though. I guess the number of security problems will also be higher with assembly language, similar to using C.

  39. Re:Why must every new platform have it's own serve by koestrizer · · Score: 1

    Take a look at Google Web Toolkit. The default model is to use Java (not JavaScript; Java is translated into JS for the client side) both one the client and the server side. But if you are not happy with this model, you can of course use a different language/runtime on the server (such as Perl, C# or C++). As I said before, it is not a panacea, but a nice model IMO.

  40. Re:You only ever need to know assembly, C and Pyth by mhelander · · Score: 1

    I don't know enough about C, so this may just be failed speculation, but...

    C allows you to break out into ASM code, fine. But unless what you break out into is in fact an extension of ASM that includes some understanding of the C domain for integration - that is, IF you only break out to standard ASM that has no clue that it is embedded in a C program (this is my unfounded assumption) - then I see no theoretical difference to a langauge that can just call out to a component written in ASM. In other words, if C is considered to be able to "access the hardware directly" only because it can call out to ASM code, then Python could be considered to be able to "access the hardware directly" because it can call out to C which can call out to ASM. Sure, two layers of indirection is more than one, but they are both in the same camp of being more than zero layers of indirection away from the hardware.

  41. Re:Why must every new platform have it's own serve by Anonymous Coward · · Score: 0

    That’s the classic silver bullet syndrome I have seen all around: “All the problems have to be solved this way, cuz that’s the correct way to solve them”. Is natural a new platforms will have bugs, but sticking to classic paradigms will kill innovation.

  42. Re:Why must every new platform have it's own serve by Anonymous Coward · · Score: 0

    Uh I now have apps that run LightHTTPD as well as Nginix, and my server also must run apache.

    And of course, they required their own port number, and it's hard to distribute that to my users, so all of these websites are access via an apache proxy.

    So it's Apache proxy -> nginix
    and Apache proxy-> LightHTTPD ...

    what's the goddamn point really? Either way I must use Apache, I wish they would just use whatever webserver I want and not force me to run 3 webservers at the same damn time.

  43. Re:Why must every new platform have it's own serve by Anonymous Coward · · Score: 0

    Well, what he's saying is that there's no reason to reinvent the wheel of handling hypertext transfer protocol requests. While I agree that small tools doing specific things is the best way, and the unix way, to build that on the internet by making little webservers as some kind of hack on top of Unix ports and IP addresses is just wrong. There has been great interprocess communication and lots of other work that's been built on for 50+ years in computers. Things are the way they are for a reason. Some of them are bad reasons that are no longer valid (i.e. conserving memory by increasing complexity), but some of them are valid. Interprocess communication is complicated. You can't just do it all on a javascript client connecting to 20 or 30 different servers. You're going to need some type of layer 7 routing and probably authorization and compression and who knows what else. All of that is handled in say Apache and it's in a modular way. Now, the important thing about Apache is that it is sort of the reference implementation of httpd, but that doesn't mean some other small specialized server can't work in very special cases. httpd is not the most complex protocol to have some C-library made for it that can just be compiled in to a new application language. Look at all the UNIX tools that use OpenSSL libs, which change practically weekly and are extremely complex.
    So I guess I agree with both of you; yes, having a little webserver to configure for every little tool is not necessarily efficient, but it IS a pretty standardized interface that a lot of "regular" (i.e. non-computer scientist) people can understand. So there's no wonder it's being used for lots of stuff it's not really designed for. I mean, GET, PUT, POST, you can't make it any easier. The issue is that it's not really designed for transactions, or anything reliable, and it's definitely not a very scalable protocol. Google has SPDY, and that's still not what's needed. I feel like in the next 5 years there will be a new version of HTTP that implements transactions and connections and sessions and all that which will greatly simplify the application language side. .

  44. Re:You only ever need to know assembly, C and Pyth by jeremyp · · Score: 1

    C uses braces to delimit blocks, not brackets.

    Having explicit block delimiters is quite useful actually. It makes it possible to copy and paste blocks of code around without changing its meaning. Modern IDE editors use the braces to magically work out how it should be indented without you having to insert spaces.

    Any syntax in which characters you can't see are syntactically significant is asking for trouble, in my opinion. Then again, lots of really good code has been written in Python, so I may just be a bit paranoid.

    --
    All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
  45. Re:Why must every new platform have it's own serve by Anonymous Coward · · Score: 0

    Also, please tell me how this model of development "doesn't work well?" If it doesn't work well no one will use it. Problem solved!

    News Flash: No one uses Opa.

  46. Re:Why must every new platform have it's own serve by Anonymous Coward · · Score: 0

    Why can't someone design a precise, straight forward language that plugs into my web server, which allows me to scale and thread properly to billions of connections? I'm not asking for a lot.

    Have you looked at G-WAN (http://www.gwan.com/)? It ticks all those boxes, though probably not in the way you expected.

  47. Re:You only ever need to know assembly, C and Pyth by FlyingGuy · · Score: 1

    Spoken like someone who can't read.

    There is nothing particularly wrong with the syntax of python, it is a fine scripting language.

    What is wrong with it is that the author decided that his indentation style was better then anyone else and he coded his interpreter to enforce his stylistic view. Forgive me, but having an invisible block closure characters is stupid and wrong and that is why I am forking it and recoding it so that you can have your choice between something invisible and a curly brace ( which just happens to be the block opening ) as a block closure.

    --
    Hey KID! Yeah you, get the fuck off my lawn!
  48. Re:You only ever need to know assembly, C and Pyth by FlyingGuy · · Score: 1

    My Error, it does not use a curly brace to open a block.

    But it will!

    --
    Hey KID! Yeah you, get the fuck off my lawn!