From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,c70dc869310ffb51 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,UTF8 Path: g2news2.google.com!news2.google.com!news.glorb.com!usenet.stanford.edu!newsfeed.berkeley.edu!ucberkeley!newsfeed.arcor.de!newsspool4.arcor-online.net!news.arcor.de.POSTED!not-for-mail Date: Mon, 17 Jan 2011 13:13:18 +0100 From: Georg Bauhaus User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Annoucing memcache-ada 0.1 References: <4d335a76$0$43992$742ec2ed@news.sonic.net> <2b5cd851-c148-41f4-95e7-14f235846e6a@q18g2000vbk.googlegroups.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Message-ID: <4d34325e$0$6775$9b4e6d93@newsspool3.arcor-online.net> Organization: Arcor NNTP-Posting-Date: 17 Jan 2011 13:13:18 CET NNTP-Posting-Host: 6f17ee8f.newsspool3.arcor-online.net X-Trace: DXC=C4ATG18kikRV0Pe9PRnbJ\McF=Q^Z^V3X4Fo<]lROoRQ8kFZLh>_cHTX3j]HfVoY=18`GQ X-Complaints-To: usenet-abuse@arcor.de Xref: g2news2.google.com comp.lang.ada:17457 Date: 2011-01-17T13:13:18+01:00 List-Id: On 17.01.11 11:40, Simon Wright wrote: > "Yannick DuchĂȘne (Hibou57)" writes: > >> there is *never* >> something like stateful with web process. [...] state >> at the client side, not a per-cession state at the server side. > > Using AJAX, there is certainly state within one page... but even > excluding that, there clearly _is_ per-session state on the server; of > course, the browser has to identify the session concerned before the > server can know where to continue from. Should there be session state in a server at all? Alternatively, State := Server_Side.Evaluate (POST request); if Is_Possible_State (State, Web Server Information) then ... else Send_Error_Indication; end if; A request will carry enough information to signal state assumptions. The gist of it is that there is a finite number of possible states (and state histories) in a web interaction. If a request indicates one of these states (or histories), the server may continue the interaction. If possible, it may assume the corresponding state regardless of actual histories. (Since, in any case a client may use multiple tabs running the "same" web interaction, create forged requests, switch computers, exchange cookies, switch ethernet connections, move VMs, or send request caused by viral infections ...) The set of possible states can change while some web interaction is going on. Model data may have changed in the mean time, since multiple clients concurrently update data, effects are as intended by some request history, etc. But there always is a set of states, and, therefore, there always is a predicate to be called for testing a request. Correct?