Matthias Felleisen | 1 May 2007 01:07
Favicon

Re: web programming, continuation, CPS transform, etc.


On Apr 30, 2007, at 6:19 PM, Yin-So Chen wrote:

> Hi Matthias - thanks for the reply ;)
>
> > 4) Is PLT web server moving toward the paper's findings?  If not,
> > why not?
>
>
> Partly due to manpower. See above. To some extent, we really need to
> design a full-fledged web language based on Scheme that makes good
> use of continuations.
>
> I am not sure if I follow... Are you saying that the direction of  
> PLT web server focus only on continuation?  By that I mean that I  
> infer that CPS/ANF is outside of the research scope w.r.t to PLT  
> web server.

As far as we are concerned, the exploration of continuation in the  
context of interactive web programming was our primary motivation to  
do research in this area.

We have done other things for the web server, but I wouldn't consider  
them 'research.'

CPS and ANF are general topics, only coincidentally related to the  
web server.

>
> At the same time, AJAX has relieved the need for many uses of
(Continue reading)

Yin-So Chen | 1 May 2007 01:21
Picon
Gravatar

Re: web programming, continuation, CPS transform, etc.


On 4/30/07, Matthias Felleisen <matthias-1vnkWVZi4QaVc3sceRu5cw@public.gmane.org> wrote:


As far as we are concerned, the exploration of continuation in the
context of interactive web programming was our primary motivation to
do research in this area.

We have done other things for the web server, but I wouldn't consider
them 'research.'

CPS and ANF are general topics, only coincidentally related to the
web server.

I see - if continuation is *the* way - then perhaps "serializable" continuation (so another web server instance anywhere on the network can load it "cheaply" and resume computation) would be the path toward scalability ;)

>
> (just my 2 cents) From a practitioner perspective, AJAX does
> provide some simplifications in web development, but also
> complicates the structure of the code especially in situations
> where one needs to handle both ajax and non-ajax capable browsers
> (while few desktop client suffer from this issue today - more
> mobile clients are on the rise).  Code duplication is huge in such
> cases and I am still searching for a good abstraction... ;)
>

Good topics for research. Keep pushing -- Matthias


I certainly will - these problems are dear to my heart too.

Thanks Matthias,

yinso


--
http://www.yinsochen.com
...continuous learning...
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme
Matthias Felleisen | 1 May 2007 01:22
Favicon

Re: web programming, continuation, CPS transform, etc.


On Apr 30, 2007, at 7:21 PM, Yin-So Chen wrote:

>
> On 4/30/07, Matthias Felleisen <matthias@...> wrote:
>
> As far as we are concerned, the exploration of continuation in the
> context of interactive web programming was our primary motivation to
> do research in this area.
>
> We have done other things for the web server, but I wouldn't consider
> them 'research.'
>
> CPS and ANF are general topics, only coincidentally related to the
> web server.
>
> I see - if continuation is *the* way - then perhaps "serializable"  
> continuation (so another web server instance anywhere on the  
> network can load it "cheaply" and resume computation) would be the  
> path toward scalability ;)

Yes. ICFP'05 is a step in this direction. There are others. -- Matthias

_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Robby Findler | 1 May 2007 03:17
Favicon

Re: Built mzscheme from source, but can't find the web server.

Jay gave the specific answer to get you one step further, but for the
general answer you may wish to read the README or see the svn web page
(the web page is down right now, but you can get to it via one link
from this page: http://pre.plt-scheme.org/installers/ -- sorry I can't
get the actual link)

The next step that many miss is for the docs.

Robby

On 4/30/07, Ethan Herdrick <info@...> wrote:
> I've built mzscheme from source, by doing this:
>
> # ../plt/src/configure --enable-mred=NO
>
> followed by:
>
> # make
>
> This seems to have worked OK, except I don't see any sign of
> plt-web-server-text.  I want to run that.  What am I doing wrong?
>
> Thanks!
>
> -Ethan
>
> P.S.  I compiled mzscheme without mred because I don't want to install
> X on my machine, and of course mred requires X.  If I really need to,
> I could install X, but I was thinking that it wouldn't be necessary.
> _________________________________________________
>   For list-related administrative tasks:
>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Grant Rettke | 1 May 2007 04:19
Picon
Favicon
Gravatar

Re: web programming, continuation, CPS transform, etc.

> > 4) Is PLT web server moving toward the paper's findings?  If not,
> > why not?
>
> At the same time, AJAX has relieved the need for many uses of
> continuations. So perhaps this research has explored as much as
> possible and will need to be resumed when the dust has settled on the
> (limittations of) AJAX.

My take is that continuations are more about capturing state and
making the program easier to understand. AJAX achieves neither of
these goals, in fact, quite the opposite!
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Matthias Felleisen | 1 May 2007 04:23
Favicon

Re: web programming, continuation, CPS transform, etc.


On Apr 30, 2007, at 10:19 PM, Grant Rettke wrote:

>> > 4) Is PLT web server moving toward the paper's findings?  If not,
>> > why not?
>>
>> At the same time, AJAX has relieved the need for many uses of
>> continuations. So perhaps this research has explored as much as
>> possible and will need to be resumed when the dust has settled on the
>> (limittations of) AJAX.
>
> My take is that continuations are more about capturing state and
> making the program easier to understand. AJAX achieves neither of
> these goals, in fact, quite the opposite!

AJAX programming is two-tier programming. The client tier is about re- 
actions to external events. The server tier supports persistency and  
outside pages. Continuations -- which capture control and NO state at  
all (see the research lit) -- are about facilitating the server  
switching pages. The client tier makes it less necessary to switch  
pages; instead local updates to pages are computed. -- Matthias

_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Eli Barzilay | 1 May 2007 06:44
Favicon
Gravatar

Re: using the ffi (ffi-lib)

On Apr 30, Hans Oesterholt-Dijkema wrote:
> L.S.,
> 
> I'm doing this for sqlite3 on a Linux system (slackware 8):
> 
> ldconfig -p | grep sqlite3 --> /usr/local/lib/libsqlite3.so
> 
> mzscheme:
>  >(require (lib "foreign.ss"))
>  >(ffi-lib "libsqlite3")
> ffi-lib: couldn't open "libsqlite3.so" (libsqlite3.so: cannot open 
> shared object file: No such file or directory)
> 
>  === context ===
> repl-loop
> 
>  > (ffi-lib "/usr/local/lib/libsqlite3")
> #<ffi-lib>
> 
> Why doesn't it work with only "libsqlite3"?

I don't know how slackware is organized, but you should look into
adding /usr/local/lib in "/etc/ld.so.conf", or set your own
LD_LIBRARY_PATH environment variable.

--

-- 
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Hans Oesterholt-Dijkema | 1 May 2007 12:55

Re: using the ffi (ffi-lib)

Hi Eli,

Thanks for your answer, but /usr/local/lib is in /etc/ld.so.conf.
ldconfig didn't work.

--Hans

Op 1/5/2007 schreef "Eli Barzilay" <eli@...>:

>On Apr 30, Hans Oesterholt-Dijkema wrote:
>> L.S.,
>>
>> I'm doing this for sqlite3 on a Linux system (slackware 8):
>>
>> ldconfig -p | grep sqlite3 --> /usr/local/lib/libsqlite3.so
>>
>> mzscheme:
>>  >(require (lib "foreign.ss"))
>>  >(ffi-lib "libsqlite3")
>> ffi-lib: couldn't open "libsqlite3.so" (libsqlite3.so: cannot open
>> shared object file: No such file or directory)
>>
>>  === context ===
>> repl-loop
>>
>>  > (ffi-lib "/usr/local/lib/libsqlite3")
>> #<ffi-lib>
>>
>> Why doesn't it work with only "libsqlite3"?
>
>I don't know how slackware is organized, but you should look into
>adding /usr/local/lib in "/etc/ld.so.conf", or set your own
>LD_LIBRARY_PATH environment variable.
>
>--
>          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
>                  http://www.barzilay.org/                 Maze is Life!
>
>
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Geoffrey S. Knauth | 1 May 2007 12:56
Gravatar

Re: serial port settings

On Apr 28, 2007, at 05:03, Richard Cleis wrote:
> I was asking you if 'portably' means 'without using an extension.'   
> I wrote a serial port extension because I wanted to learn to make  
> one, but I am not certain that it was necessary since I didn't ask  
> anyone if something were available.  With very few changes, another  
> person in our group ported it to Windows and Linux (from OS X, PPC).
>
> The FFI route may make more sense, but I have never done that.  If  
> I thought anyone were interested, I'd have cleaned up the C  
> extension and posted it (which I don't know how to do, either.)   
> Are you interested?

I'm interested.  At the moment, I'm working on getting DrScheme to  
talk to Mindstorms NXT.

_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Eli Barzilay | 1 May 2007 12:57
Favicon
Gravatar

Re: using the ffi (ffi-lib)

On May  1, Hans Oesterholt-Dijkema wrote:
> Hi Eli,
> 
> Thanks for your answer, but /usr/local/lib is in /etc/ld.so.conf.
> ldconfig didn't work.

Well, whatever the problem is, it's outside the scope of the foreigh
interface -- it's basically doing a plain call to `ldopen'.

> Op 1/5/2007 schreef "Eli Barzilay" <eli@...>:
> 
> >On Apr 30, Hans Oesterholt-Dijkema wrote:
> >> L.S.,
> >>
> >> I'm doing this for sqlite3 on a Linux system (slackware 8):
> >>
> >> ldconfig -p | grep sqlite3 --> /usr/local/lib/libsqlite3.so
> >>
> >> mzscheme:
> >>  >(require (lib "foreign.ss"))
> >>  >(ffi-lib "libsqlite3")
> >> ffi-lib: couldn't open "libsqlite3.so" (libsqlite3.so: cannot open
> >> shared object file: No such file or directory)
> >>
> >>  === context ===
> >> repl-loop
> >>
> >>  > (ffi-lib "/usr/local/lib/libsqlite3")
> >> #<ffi-lib>
> >>
> >> Why doesn't it work with only "libsqlite3"?
> >
> >I don't know how slackware is organized, but you should look into
> >adding /usr/local/lib in "/etc/ld.so.conf", or set your own
> >LD_LIBRARY_PATH environment variable.

--

-- 
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme


Gmane