Re: Making Dylan viable for small web applications?

Robert Roland <[email protected]> Sun, 14 Sep 2014 12:40:01 -0700
Newsgroups gmane.comp.lang.dylan.gwydion.devel
Message-ID <CAB3PbdW8vWzfPgKMpii1XGzEMb=7dAYB9G6TN2=KGNgFPDjxGA@mail.gmail.com>
--===============1986274152==
Content-Type: multipart/alternative; boundary=20cf30223cdd2bd38e05030baf1d

--20cf30223cdd2bd38e05030baf1d
Content-Type: text/plain; charset=UTF-8

So, you can do *some* of this now. The http-server works. I've made a
really small app with it: https://bitbucket.org/robdaemon/mediaemitter/src
- the goal was to make a simple web client to send to my Chromecast. I
didn't get far, as you can see.

I'll have to leave others to comment on the http server. I know it's
thread-based today, so it has scaling limitations.

You can use DSP (Dylan Server Pages) for templating, which is included in
the http server: https://github.com/dylan-lang/http/tree/master/server/dsp

The SQL abstraction layer is built into the core Open Dylan libraries. See:
https://github.com/dylan-lang/opendylan/tree/master/sources/databases/sql
and http://opendylan.org/documentation/library-reference/sql/index.html

I did work on extending the SQLite library and making a SQL library adapter
for it: https://github.com/dylan-foundry/sqlite-dylan

I'd like to see this go further forward though.

On Sun, Sep 14, 2014 at 8:22 AM, Francesco Ceccon <[email protected]>
wrote:

> Hello,
> I have a couple of ideas for small web applications that I want to develop
> using
> Dylan. I'm not sure about the state of http-server so I'm asking you, if
> something
> is outdated and/or you want it changed I think it's a good opportunity to
> discuss
> it here before working on it.
>
> By looking at projects like Lua's Lapis (http://leafo.net/lapis/) or
> Python's
> Flask and with a quick chat with Bruce I came up with a list of components
> we
> need:
>
> * A web-server, with this I mean the usual routing stuff plus handling
> session etc.
> * Template engine, I know someone is working on it so we should look into
> finishing
>   and/or integrating it with the server
> * Some kind of SQL abstraction layer, at first only supporting SQLite and
>   PostgreSQL would be fine. I'd also like a light ORM, but I think I'm in
> the
>   minority here.
>
> Then we need to figure out to make this components work well together.
>
> Finally, I'd love for the webserver to be extensible, so for example we
> would need
> to write a session-management plugin only once. Bruce talked about
> adopting a
> middleware architecture, but I forgot about it now.
>
> So, what do you think?
>
> -Francesco
> _______________________________________________
> hackers mailing list
> [email protected]
> https://lists.opendylan.org/mailman/listinfo/hackers
>

--20cf30223cdd2bd38e05030baf1d
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">So, you can do *some* of this now. The http-server works. =
I&#39;ve made a really small app with it:=C2=A0<a href=3D"https://bitbucket=
.org/robdaemon/mediaemitter/src">https://bitbucket.org/robdaemon/mediaemitt=
er/src</a> - the goal was to make a simple web client to send to my Chromec=
ast. I didn&#39;t get far, as you can see.<div><br></div><div>I&#39;ll have=
 to leave others to comment on the http server. I know it&#39;s thread-base=
d today, so it has scaling limitations.</div><div><br></div><div>You can us=
e DSP (Dylan Server Pages) for templating, which is included in the http se=
rver:=C2=A0<a href=3D"https://github.com/dylan-lang/http/tree/master/server=
/dsp">https://github.com/dylan-lang/http/tree/master/server/dsp</a></div><d=
iv><br></div><div>The SQL abstraction layer is built into the core Open Dyl=
an libraries. See: <a href=3D"https://github.com/dylan-lang/opendylan/tree/=
master/sources/databases/sql">https://github.com/dylan-lang/opendylan/tree/=
master/sources/databases/sql</a> and=C2=A0<a href=3D"http://opendylan.org/d=
ocumentation/library-reference/sql/index.html">http://opendylan.org/documen=
tation/library-reference/sql/index.html</a></div><div><br></div><div>I did =
work on extending the SQLite library and making a SQL library adapter for i=
t:=C2=A0<a href=3D"https://github.com/dylan-foundry/sqlite-dylan">https://g=
ithub.com/dylan-foundry/sqlite-dylan</a></div><div><br></div><div>I&#39;d l=
ike to see this go further forward though.</div></div><div class=3D"gmail_e=
xtra"><br><div class=3D"gmail_quote">On Sun, Sep 14, 2014 at 8:22 AM, Franc=
esco Ceccon <span dir=3D"ltr">&lt;<a href=3D"mailto:[email protected]" ta=
rget=3D"_blank">[email protected]</a>&gt;</span> wrote:<br><blockquote cl=
ass=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;p=
adding-left:1ex">Hello,<br>
I have a couple of ideas for small web applications that I want to develop =
using<br>
Dylan. I&#39;m not sure about the state of http-server so I&#39;m asking yo=
u, if something<br>
is outdated and/or you want it changed I think it&#39;s a good opportunity =
to discuss<br>
it here before working on it.<br>
<br>
By looking at projects like Lua&#39;s Lapis (<a href=3D"http://leafo.net/la=
pis/" target=3D"_blank">http://leafo.net/lapis/</a>) or Python&#39;s<br>
Flask and with a quick chat with Bruce I came up with a list of components =
we<br>
need:<br>
<br>
* A web-server, with this I mean the usual routing stuff plus handling sess=
ion etc.<br>
* Template engine, I know someone is working on it so we should look into f=
inishing<br>
=C2=A0 and/or integrating it with the server<br>
* Some kind of SQL abstraction layer, at first only supporting SQLite and<b=
r>
=C2=A0 PostgreSQL would be fine. I&#39;d also like a light ORM, but I think=
 I&#39;m in the<br>
=C2=A0 minority here.<br>
<br>
Then we need to figure out to make this components work well together.<br>
<br>
Finally, I&#39;d love for the webserver to be extensible, so for example we=
 would need<br>
to write a session-management plugin only once. Bruce talked about adopting=
 a<br>
middleware architecture, but I forgot about it now.<br>
<br>
So, what do you think?<br>
<br>
-Francesco<br>
_______________________________________________<br>
hackers mailing list<br>
<a href=3D"mailto:[email protected]">[email protected]<=
/a><br>
<a href=3D"https://lists.opendylan.org/mailman/listinfo/hackers" target=3D"=
_blank">https://lists.opendylan.org/mailman/listinfo/hackers</a><br>
</blockquote></div><br></div>

--20cf30223cdd2bd38e05030baf1d--

--===============1986274152==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
hackers mailing list
[email protected]
https://lists.opendylan.org/mailman/listinfo/hackers

--===============1986274152==--