Let's do this

236 views
Skip to first unread message

Eric

unread,
Apr 9, 2012, 8:15:51 PM4/9/12
to Julia MVC Framework
Alright, I'm about 24 hours away from finishing this project that's
been dragging me down the past few weeks, and would already be
finished if I hadn't kept taking 15 min breaks to read over the Julia
docs/source code. I was a bit on the fence, particularly since LuaJit
and OpenResty have recently caught my attention as a high-performance
web framework, but having read more on the language, and looked at the
code (is actually understandable for the most part!), I really am
liking where Julia is going. I have a bunch of questions now, but I
like the emphasis these guys are placing on performance.

As a Python guy, I've been a little frustrated by CPython's
lackadaisical attitude toward performance (which can be mitigated by
Cython, but still). Fortunately, there's PyPy, but with LuaJit and
Julia springing on the scene, it may be too little, too late. No
offense, but I imagine you Ruby guys might feel the same about Ruby's
performance (and this is coming from someone who really, really likes
the Ruby language). Jumping on the Julia bandwagon at this point, and
being the guys who put together the first coherent web framework for
Julia, could put us in a very good position.

Anyway, here's a real interesting thread:

http://groups.google.com/group/julia-dev/browse_thread/thread/e4c568610958219f/0ee98640e7ded65d?show_docid=0ee98640e7ded65d

At this point, it looks like there's an scgi interface (there
reference Julia web server), a third-party web server in Julia itself
(https://github.com/chzyer/JuliaWebServer) , and the mongrel/zeromq
interface discussed above (https://github.com/aviks/julia-zmq-
mongrel). The last one there includes a json parser in Julia, which
will be useful for us. And it would be great to get the guys
responsible for the latter two on board with us (Jeff Besanson, one of
the core Julia devs, built the scgi interface).

I've just joined the Julia-dev list and in another day I'll be ready
to start doing something. I've got no experience building a
framework, but I've used a lot of them, and I've long been interested
in the internals of Flask and werkzeug (Python counterparts to Sinatra
and Rack, kind of). So we'll see what I can do.

What are the rest of you up to this week?

Thanks for reading,

Eric

Nicholas Klick

unread,
Apr 9, 2012, 9:08:13 PM4/9/12
to julia-mvc...@googlegroups.com
Ok.


I liked Gaston, so I put this up there. We don't have to stick with it but you got to start somewhere. 

I have been checking this out: https://github.com/chzyer/JuliaWebServer . I have everything installed fine but the server crashes in the example code with refs to the "replace" method . Haven't gotten the chance to get the thing working. Not sure if we want to leverage this or try/build something else.

I look forward to working with you all.

Nicholas

Nicholas Klick

unread,
Apr 9, 2012, 9:15:30 PM4/9/12
to julia-mvc...@googlegroups.com
Also.

I wanted to see what the 'Original' Sinatra code looked like, as in the first commit made. I figured this was prob an easy way to understand the very basics of MVC. Seems like it mainly consists of a dispatcher, server, DSL, logger and a event manager. 

See attached for commit 1.
sinatra_original.zip

Eric

unread,
Apr 9, 2012, 9:43:42 PM4/9/12
to Julia MVC Framework
Thanks for taking the lead on that, Nicholas. I'll test out the
JuliaWebServer tomorrow once I've finished this project. I'm thinking
that it would be wise to have a set up kind of like Flask and Sinatra
do: implement JuliaWebServer (or something we build ourselves if we
absolutely must) but recommend it as a built-in development server
only. Production should shift to nginx or apache through Julia's
existing scgi wrapper, which is already part of the core Julia code
base (or we could eventually do an fastcgi wrapper). If the mongrel
interface turns out solid, we could recommend that as a (potentially
kickass) production alternative.

Also, I should probably make sure: are we all in agreement that this
framework should be permissively-licensed? It would probably be
easiest for everyone if we used the same license as the Julia language
itself, which is MIT, but I have no ideological issues with BSD or
Apache, either. Permissive licensing is one of the underpinnings of
the Julia language project, so I want to be sure we're all on the same
page here.

Can we go ahead and agree on a license?

Looking forward to working with you, too.


Eric

On Apr 9, 9:08 pm, Nicholas Klick <nicholas.kl...@gmail.com> wrote:
> Ok.
>
> https://github.com/knf/gaston
>
> I liked Gaston, so I put this up there. We don't have to stick with it but
> you got to start somewhere.
>
> I have been checking this out:https://github.com/chzyer/JuliaWebServer. I
> >http://groups.google.com/group/julia-dev/browse_thread/thread/e4c5686...

Nicholas Klick

unread,
Apr 9, 2012, 9:47:52 PM4/9/12
to julia-mvc...@googlegroups.com
Sounds good. MIT is fine with me. I will update the read me file unless anyone else has objections.

Seems like step 1 is some sort of development server no?

Nate Wienert

unread,
Apr 9, 2012, 9:52:02 PM4/9/12
to julia-mvc...@googlegroups.com
Love the progress on this. I've forked the repo and will begin dissecting Sinatra and the JuliaWebServer tonight as I have some time. Also really like the name, and as far as licensing MIT sounds good to me. Thanks for taking the initiative on that.

Eric, I agree it would be great if we reach out to the devs on julia-lang, I'll also be watching that list to keep up with the project as a whole. The ZeroMQ/Mongrel stuff looks really awesome.

Looks like first thing is the dev server, have no experience here but if I can get everything compiling tonight I'll be playing around with it.

Am stuck on a 2G hotspot for tonight (Just moved + temporary t-mobile phone) so may be behind a bit... but all the more reason to code.

Excited to see this thing move forward,
Nate

Patrick O'Leary

unread,
Apr 10, 2012, 12:40:34 AM4/10/12
to julia-mvc...@googlegroups.com
On Monday, April 9, 2012 8:08:13 PM UTC-5, NicholasKlick wrote:
Ok.


I liked Gaston, so I put this up there. We don't have to stick with it but you got to start somewhere. 

Impressively for such a young project, I think Julia's just earned its first name conflict:
https://groups.google.com/d/topic/julia-dev/Cy3Y8RQUWdw/discussion
https://bitbucket.org/mbaz/gaston
 

Keno Fischer

unread,
Apr 10, 2012, 12:51:42 AM4/10/12
to julia-mvc...@googlegroups.com
Also, if you're gonna do this be sure to checkout the libuv integration that is part of the windows port. Either at https://github.com/JuliaLang/julia/pull/521 or in my repo (https://github.com/loladiro/julia). Should make dealing with sockets a little easier. If you're missing functionality, shoot me an email. Right now I only implemented the necessary basics for Julia IPC.

Nicholas Klick

unread,
Apr 10, 2012, 1:01:58 AM4/10/12
to julia-mvc...@googlegroups.com
Hmmm.

Patrick, thanks for the heads up. I did make an attempt to see if the name was claimed already. Maybe we will just proceed with this name for now and see if it turns into anything. Otherwise a couple of other good names were proposed.

Keno, thanks for the info.

Nicholas Klick

unread,
Apr 10, 2012, 1:17:45 AM4/10/12
to julia-mvc...@googlegroups.com
Anybody have any other thoughts on the name for this? I can easily update the repo name before too many people start branching? Gaston is pretty cool but the name seems to be taken by this Julia gnuplot library already.

Patrick O'Leary

unread,
Apr 10, 2012, 8:45:52 AM4/10/12
to julia-mvc...@googlegroups.com
His middle name was Maurice. Gaston's son Marc Julia was a chemist; the Julia olefination is named after him. And Julia Robinson was a mathematician who helped resolve Hilbert's tenth problem. There are a limited number of "famous Julia-based project names," though. Winston is also already taken (from characters in 1984, it's a Julia-native plot library). I will point out that the technical computing users of Julia are probably going to want to keep the mathematicians' names to ourselves. :D


On Tuesday, April 10, 2012 12:17:45 AM UTC-5, NicholasKlick wrote:
Anybody have any other thoughts on the name for this? I can easily update the repo name before too many people start branching? Gaston is pretty cool but the name seems to be taken by this Julia gnuplot library already.

Nicholas Klick

unread,
Apr 10, 2012, 10:09:10 AM4/10/12
to julia-mvc...@googlegroups.com
I am personally not really hung up on "the name" at all. I think if the project actually gets off the ground and goes somewhere then it might matter. Something unique, easy to say and easy to google are my criteria. I also liked Jude for a name but am not really hung up on human names.

Nicholas Klick

unread,
Apr 10, 2012, 12:11:18 PM4/10/12
to julia-mvc...@googlegroups.com
Okay I changed the name of the project to Jude. Please either update your .git config files or delete your branches and rebranch: https://github.com/knf/jude
Reply all
Reply to author
Forward
0 new messages