Static purity analysis.

2017-10-15 Thread Tiago Dall'Oca
Haven't had time to look in deep but looks promising.

+1

I'd love to have more static analysis in Clojure and sometimes it feels like 
it's underrated (by the community). Just thoughts.

Keep up! 

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Static purity analysis.

2017-10-15 Thread Christian Weilbach
Hey,

I have had finally the time to prototype an idea I had for over a year:

https://github.com/whilo/beichte

It is only a first prototype, but the basic mechanics work fine, i.e. it
is doing a deep recursive walk through your Clojure codebase (everything
that is on the classpath or filesystem) and tracks down impure var
accesses. I would like to get feedback of what you think about this and
would like see integrated if this becomes a linter.

I am thinking in the direction that you have to declare your vars as
impure explicitly, either by adding a "!" at the end of the function
name or by some metadata on vars (opt-out purity). This would allow you
to go as far as Haskell does in regard to enforcing purity without using
the type system and monads for it. This is not meant as a criticism of
Haskell, rather as a disentanglement of purity from the type system.

There will be a considerable effort needed in assigning purity to core
classes and methods and maybe also beyond Clojure to core libraries, but
maybe somebody has some ideas of how to ease this process(?).

Best,
Christian

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


signature.asc
Description: OpenPGP digital signature


Re: hello world question !!!

2017-10-15 Thread Damien Mattei
thanks for the answers and comments of John, James and others,
the discussion has opened many aspect of web application development and it 
is is positive.

about the IDE, i'm not using Netbeans with Scheme or LisP exclusively, in 
fact Netbeans was used in the office just to create web service in Java,
this thing can be done by hand in command line too, Kawa Scheme also can do 
it itself :
 https://www.gnu.org/software/kawa/Servlets.html

from the discussion i see now many solution to test ,I will install 
Leiningen, also i see in the doc of Immutant that it is possible to 
generate some war files :
http://immutant.org/documentation/current/apidoc/guide-wildfly.html#h3386

i hope i could use Clojure for that because it seems a really fun and solid 
LisP dialect.
I will post updates when i have a concrete usable solution.

Regards,

Damien

On Saturday, October 14, 2017 at 5:07:08 PM UTC+2, John M. Switlik wrote:
>
> James, 
>
> Thanks. I saw a writeup mentioning Leiningen that I will go back to. 
>
> It is not the 'toy' issue that concerns me. It is that all sorts of 
> browsers exist as well as a whole slew of different types of users. And, if 
> I am going to push something down to a remote device, I want to expect that 
> it would be handled in a nice manner. 
>
> As for example projects, these are prime; but, they are supported by 
> working professionals. So, Clojure does have a lot to offer. 
>
>http://base2s.com/work/ 
>
> I am sure that I'll look back and see that it was easy. But, this seems 
> like an opportunity to step through the thing (that is, the hugely 
> complicated world of the muddy cloud) and see how things evolved. Those 
> little interpreters are up there as a lure in the meantime. 
>
> Cheers, 
> John
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.