soegaard / urlang

Urlang is JavaScript with a sane syntax
303 stars 16 forks source link

Added more sophisticated Ractive + Bootstrap example #1

Closed danprager closed 8 years ago

danprager commented 8 years ago

Also included the html output and amended the READ.me file.

soegaard commented 8 years ago

Thanks!

danprager commented 8 years ago

Thank-you!

On Thu, Mar 17, 2016 at 12:18 AM, Jens Axel Søgaard < notifications@github.com> wrote:

Thanks!

— You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub https://github.com/soegaard/urlang/pull/1#issuecomment-197323992

Daniel Prager Agile/Lean Coaching, Innovation, and Leadership Profile: skillfire.co/dan Startups: youpatch.com http://www.youpatch.com, skillfire.co Twitter: @agilejitsu https://twitter.com/agilejitsu Blog: agile-jitsu.blogspot.com Linkedin: au.linkedin.com/in/danielaprager

soegaard commented 8 years ago

Hi Daniel,

I have just added another Bootstrap example:

https://github.com/soegaard/urlang/blob/master/urlang-examples/parabola/parabola.rkt

This time without ractive, but using @-syntax to construct the html.

/Jens Axel

2016-03-16 19:41 GMT+01:00 Daniel Prager notifications@github.com:

Thank-you!

On Thu, Mar 17, 2016 at 12:18 AM, Jens Axel Søgaard < notifications@github.com> wrote:

Thanks!

— You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub https://github.com/soegaard/urlang/pull/1#issuecomment-197323992

Daniel Prager Agile/Lean Coaching, Innovation, and Leadership Profile: skillfire.co/dan Startups: youpatch.com http://www.youpatch.com, skillfire.co Twitter: @agilejitsu https://twitter.com/agilejitsu Blog: agile-jitsu.blogspot.com Linkedin: au.linkedin.com/in/danielaprager

— You are receiving this because you modified the open/close state. Reply to this email directly or view it on GitHub https://github.com/soegaard/urlang/pull/1#issuecomment-197479964

Jens Axel Søgaard

danprager commented 8 years ago

Hi Jens

Nice!

It's not clear to me which is the best html syntax to use is, so probably best to leave it orthogonal for now.

One of the challenges (when using ractive or similar) is how to include the {{mustasche} syntax so that it has semantic meaning, rather than just treating it as a string.

For example, in ractive it is legitimate to include expressions like {{counter + 1}}, but in our context it would be preferable to be able to specify {{(+ counter 1)}} and have Urlang performa an interpretation.Similary {{#section}} ... {{/section}} would be better done as (#section ...) or some-such.

Nice to see a bit of positive response on the mailing list!

Cheers

Dan

On Thu, Mar 17, 2016 at 9:33 AM, Jens Axel Søgaard <notifications@github.com

wrote:

Hi Daniel,

I have just added another Bootstrap example:

https://github.com/soegaard/urlang/blob/master/urlang-examples/parabola/parabola.rkt

This time without ractive, but using @-syntax to construct the html.

/Jens Axel

2016-03-16 19:41 GMT+01:00 Daniel Prager notifications@github.com:

Thank-you!

On Thu, Mar 17, 2016 at 12:18 AM, Jens Axel Søgaard < notifications@github.com> wrote:

Thanks!

— You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub https://github.com/soegaard/urlang/pull/1#issuecomment-197323992

Daniel Prager Agile/Lean Coaching, Innovation, and Leadership Profile: skillfire.co/dan Startups: youpatch.com http://www.youpatch.com, skillfire.co Twitter: @agilejitsu https://twitter.com/agilejitsu Blog: agile-jitsu.blogspot.com Linkedin: au.linkedin.com/in/danielaprager

— You are receiving this because you modified the open/close state. Reply to this email directly or view it on GitHub https://github.com/soegaard/urlang/pull/1#issuecomment-197479964

Jens Axel Søgaard

— You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub https://github.com/soegaard/urlang/pull/1#issuecomment-197586564

Daniel Prager Agile/Lean Coaching, Innovation, and Leadership Profile: skillfire.co/dan Startups: youpatch.com http://www.youpatch.com, skillfire.co Twitter: @agilejitsu https://twitter.com/agilejitsu Blog: agile-jitsu.blogspot.com Linkedin: au.linkedin.com/in/danielaprager

soegaard commented 8 years ago

Hi Daniel,

(Btw: I responded to the wrong email thread).

The problem that moustache templates have with abstractions leaking is also present when used from JavaScript. Researching how other JavaScript libraries do made me discover MonkBerry:

https://github.com/monkberry/monkberry

The idea is to compile the template at the server and produce JavaScript code that generates html on the client. Now since Urlang allows macros one possible solution would be to implement "MonkBerry" as a macro. The MonkBerry readme shows some examples of what the expansion of a template looks like. Implementing a subset of moustache as an urlang macros looks therefore as a realistic project - but unfortunately I do't see myself having much time for hacking on this for while. Maybe you want to try?

However I see there are many template libraries in JavaScript, so there might be other, better solutions.

https://developer.mozilla.org/en/docs/JavaScript_templates

/Jens Axel

danprager commented 8 years ago

Hi Jens

I'm very happy to explore other libraries and approaches as my time allows (it's going to be a bit sporadic).

I think I'd need a bit of guidance about how to hack together Urlang macros to open up a subset of mustache. Could you outline what you have in mind?

But maybe it's a bit premature to go down the road of more tightly integrating mustache: I think for my next experiment I'll try porting this example from mithril.js -- https://lhorie.github.io/mithril/getting-started.html -- which takes a non-template-based approach, and might turn out to be a better fit.

Cheers

Dan

On Thu, Mar 17, 2016 at 10:30 PM, Jens Axel Søgaard < notifications@github.com> wrote:

Hi Daniel,

(Btw: I responded to the wrong email thread).

The problem that moustache templates have with abstractions leaking is also present when used from JavaScript. Researching how other JavaScript libraries do made me discover MonkBerry:

https://github.com/monkberry/monkberry

The idea is to compile the template at the server and produce JavaScript code that generates html on the client. Now since Urlang allows macros one possible solution would be to implement "MonkBerry" as a macro. The MonkBerry readme shows some examples of what the expansion of a template looks like. Implementing a subset of moustache as an urlang macros looks therefore as a realistic project - but unfortunately I do't see myself having much time for hacking on this for while. Maybe you want to try?

However I see there are many template libraries in JavaScript, so there might be other, better solutions.

https://developer.mozilla.org/en/docs/JavaScript_templates

/Jens Axel

— You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub https://github.com/soegaard/urlang/pull/1#issuecomment-197834004

Daniel Prager Agile/Lean Coaching, Innovation, and Leadership Profile: skillfire.co/dan Startups: youpatch.com http://www.youpatch.com, skillfire.co Twitter: @agilejitsu https://twitter.com/agilejitsu Blog: agile-jitsu.blogspot.com Linkedin: au.linkedin.com/in/danielaprager