Re: [ANN] Taoensso library updates / 2014 September

2014-09-07 Thread Peter Taoussanis


 No problem. I just wanted to check that it was an intentional change, and 
 not some unknown bug that had crept in.


Sure, appreciate that. And one had (buggy CHANGELOG) - so good that you 
checked ;-)

I just switched my app from Om/Sablono + Sente to Reagent + Sente and I'm 
 currently working on cleaning things up now that Reagent has allowed for 
 quite a bit of simplification so I'm in refactoring mode at the moment... 


Reagent's great, can't recommend it enough.
 

 About the only thing I could ask for is IE8 compatibility :)


Hmm, yeah - haven't looked into that myself. Can't think of anything 
off-hand that'd make it impossible, PR would absolutely be welcome.

Cheers!

-- 
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.


[ANN] Nginx-Clojure v0.2.5 released!

2014-09-07 Thread Yuexiang Zhang
0.2.5 (2014-09-07)
   
   1. New Feature: Reference variables in jvm_options  different jvm debug 
   ports for jvm processes (issue #42)
   2. New Feature: Server Sent Events(SSE)  Long polling (issue #41, issue 
   #36)
   3. New Feature: Supports 64-bit JDK on 64-bit Windows (issue #40)
   4. New Feature: Coroutine based socket supports JDK8 (issue #39)
   5. New Feature: More easier to archive Sub/Pub services with Broadcast 
   Events to all Nginx workers (issue #39)
   6. New Feature: Asynchronous Channel a wrapper of asynchronous socket to 
   make the usage easier (issue #37)
   7. Enhancement: Fix--On Windows a little many write events happen and 
   these events seem useless (issue #35)


So far Nginx-Clojure have supported:


   - Linux x86 32-bit (tested with CentOS 5.10 i386 )
   - Linux x64 (tested with CentOS 5.10 x64, Ubuntu  13.10 x64, Alpine 
   Linux 3.03 x64)
   - Windowns x86 32-bit (tested with Windows XP 32-bit)
   - Windows X64 (tested with Windows XP 64-bit)
   - MacOSX  (tested with MacOSX 10.7 X64)
   

Web Site   http://nginx-clojure.github.io/
Source Hosted on Github https://github.com/nginx-clojure/nginx-clojure
Google Group (mailing list) 
https://groups.google.com/forum/#!forum/nginx-clojure


-- 
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.


Re: [ANN] Nginx-Clojure v0.2.5 released!

2014-09-07 Thread gvim

On 07/09/2014 13:45, Yuexiang Zhang wrote:


0.2.5 (2014-09-07)

 1. New Feature: Reference variables in jvm_options  different jvm
debug ports for jvm processes (issue #42)
 2. New Feature: Server Sent Events(SSE)  Long polling (issue #41,
issue #36)
 3. New Feature: Supports 64-bit JDK on 64-bit Windows (issue #40)
 4. New Feature: Coroutine based socket supports JDK8 (issue #39)
 5. New Feature: More easier to archive Sub/Pub services with Broadcast
Events to all Nginx workers (issue #39)
 6. New Feature: Asynchronous Channel a wrapper of asynchronous socket
to make the usage easier (issue #37)
 7. Enhancement: Fix--On Windows a little many write events happen and
these events seem useless (issue #35)




What are the trade-offs, if any, compared with Immutant + Wildfly (on 
CentOS 6)? Memory usage is of particular interest.


gvim

--
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.


Re: [ANN] Nginx-Clojure v0.2.5 released!

2014-09-07 Thread Yuexiang Zhang
Sorry I don't use Immutant + Wildfly and know little about it.

The simple benchmarks including Immutant  Nginx-Clojure can be found from
HERE https://github.com/ptaoussanis/clojure-web-server-benchmarks.

From Nginx-Clojure the most attractive things to us is :


   1. Nginx's architecture is Master + Worker processes, Nginx-Clojure
   embed one JVM in per Worker process. So if any of worker process crashes,
   the other JVM instances can still work and the Master will recreate a new
   Worker process embedding with a new JVM instance.
   2. Nginx's perfect performance when handle even over 10 thousand
   connections
   3. Coroutine based socket let old Java Socket API based app/libraries
   won't lock a thread anymore
   4. IO (Coroutine based socket, Asynchronous socket  Channel) are on top
   of Nginx IO API which is more worldly-wise than Java NIO on huge scalar
   server application.
   5. JVMs are not goot at huge memory management. Configurable multiple
   JVM instances (is the same number of Nginx Worker processes) will  manage
   less memory. e.g. we have ten Nginx Worker processes in one Nginx instance
   every JVM instance will only manage 1/10 memory
   6.  Nginx already has many modules / features such as rate limit , spdy
   , pages cache, image filter etc. Most of them maybe are difficult or less
   effective to be implemented in pure Java world.


Xfeep







On Sun, Sep 7, 2014 at 11:27 PM, gvim gvi...@gmail.com wrote:

 On 07/09/2014 13:45, Yuexiang Zhang wrote:


 0.2.5 (2014-09-07)

  1. New Feature: Reference variables in jvm_options  different jvm
 debug ports for jvm processes (issue #42)
  2. New Feature: Server Sent Events(SSE)  Long polling (issue #41,
 issue #36)
  3. New Feature: Supports 64-bit JDK on 64-bit Windows (issue #40)
  4. New Feature: Coroutine based socket supports JDK8 (issue #39)
  5. New Feature: More easier to archive Sub/Pub services with Broadcast
 Events to all Nginx workers (issue #39)
  6. New Feature: Asynchronous Channel a wrapper of asynchronous socket
 to make the usage easier (issue #37)
  7. Enhancement: Fix--On Windows a little many write events happen and
 these events seem useless (issue #35)



 What are the trade-offs, if any, compared with Immutant + Wildfly (on
 CentOS 6)? Memory usage is of particular interest.

 gvim

 --
 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 a topic in the
 Google Groups Clojure group.
 To unsubscribe from this topic, visit https://groups.google.com/d/
 topic/clojure/baqWfrei8CE/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to
 clojure+unsubscr...@googlegroups.com.

 For more options, visit https://groups.google.com/d/optout.


-- 
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.


Annex is a fact store

2014-09-07 Thread Henrik Eneroth
Conceptually, this looks vaguely similar to Datomic.

https://speakerdeck.com/markhibberd/towards-annex-a-fact-based-dependency-system-icfp

-- 
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.


Re: [ANN] Nginx-Clojure v0.2.5 released!

2014-09-07 Thread gvim

On 07/09/2014 17:51, Yuexiang Zhang wrote:


 From Nginx-Clojure the most attractive things to us is :

 1. Nginx's architecture is Master + Worker processes, Nginx-Clojure
embed one JVM in per Worker process. So if any of worker process
crashes, the other JVM instances can still work and the Master will
recreate a new Worker process embedding with a new JVM instance.
 2. Nginx's perfect performance when handle even over 10 thousand
connections
 3. Coroutine based socket let old Java Socket API based app/libraries
won't lock a thread anymore
 4. IO (Coroutine based socket, Asynchronous socket  Channel) are on
top of Nginx IO API which is more worldly-wise than Java NIO on huge
scalar server application.
 5. JVMs are not goot at huge memory management. Configurable multiple
JVM instances (is the same number of Nginx Worker processes) will
  manage less memory. e.g. we have ten Nginx Worker processes in one
Nginx instance every JVM instance will only manage 1/10 memory
 6.   Nginx already has many modules / features such as rate limit ,
spdy , pages cache, image filter etc. Most of them maybe are
difficult or less effective to be implemented in pure Java world.



I'm fairly new to Clojure/JVM but I was under the impression Java 
webservers such as Wildfly (= JBoss) had a reputation for managing 
memory efficiently by spawning threads, ie. only a single JVM instance 
required? Your scenario with multiple JVMs/1 per worker sounds like a 
much bigger memory footprint but, as I said, I'm new to Java.


gvim

--
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.


ANN: [com.stuartsierra/component 0.2.2]

2014-09-07 Thread Stuart Sierra
Component: managed lifecycle and dependency injection for
stateful objects

https://github.com/stuartsierra/component

Release 0.2.2 contains the following minor enhancements:

  * System maps print as `#SystemMap` to avoid trying to
print huge objects in the REPL.

  * Added error helpers `ex-component?` and
`ex-without-components`: refer to docstrings for details

  * Exceptions:

 * Change `:component-key` to `:system-key` in `ex-data`
   maps: this is a breaking change for code which
   depended on the value of `:component-key`

 * Added `:system-key` to `ex-data` map from `try-action`

 * Minor changes to exception message strings

Leiningen dependency information:

[com.stuartsierra/component 0.2.2]


-- 
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.


davstore: a buzzword-complete file storage; public demo of namespaced data.xml

2014-09-07 Thread Herwig Hochleitner
Hi Folks!

Maybe you remember my 'recent' push for data.xml namespacing support. I've
built out most of the stuff, that I had sketched in the design document,
but before pushing for an actual release, I'd ask you to evaluate my
approach towards namespaced xml.

I published the project [1] that actually made me dive into data.xml:
davstore: A WebDAV file storage, backed by datomic and a git-like blob
storage. With core.typed - checked database functions (how's that for
buzzwords ;-)
I'm using this in production, with my current version version of data.xml
[2]

So, apart from enjoying davstore, which I think is pretty nifty, I'd like
to ask you to sift through my usage of data.xml and report whether you can
see yourself interacting with xml in that way. [3] [4]

kind regards

[1] https://github.com/bendlas/davstore
[2] https://github.com/bendlas/data.xml
[3] https://github.com/bendlas/davstore/blob/master/src/davstore/dav/xml.clj
[4] https://github.com/bendlas/davstore/blob/master/src/davstore/dav.clj

[BCC] People that were part of previous discussions around namespaced
data.xml

-- 
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.


Re: [ANN] Nginx-Clojure v0.2.5 released!

2014-09-07 Thread Yuexiang Zhang
Not only Wildfly but also most of mainstream pure java webservers use
thread pool to handle http requests. Nginx-Clojure can also be configurated
to use thread pool with one or many JVM instances.

Advanced Java webservers use Java NIO (I/O multipexing) to do the first
phrase (Http request accepting and simple parsing)  then run user business
flow with thread pool. The first phrase only need one or very few threads.
But at the second phrase (using thread pool) largely existing Java Socket
API based libraries such as JDBC drivers, Http Client are  blocking so if
there are many connections they 'll eat up all threads and make the
webserver hang because a OS can only support less threads than connections.
By the way threads in JVM are not cheap and they use more memory than pure
native OS threads and OS threads are pre-emptive and scheduled at constant
time slice so if there are too many threads scheduling will cost too many
of cpu cycles to do real works.

For large scalar application one JVM instance is really not enough. Typical
scenario is we use serveral Java webservers such as tomcat, jetty,
glassfish etc, and
put a reverse proxy such as Nginx, Haproxy, Apache in the front of them.
And Nginx-Clojure make this work easier because it can automatic embed JVM
instances into Nginx worker processes and we need not maintain too many
webservers.

Since JDK 5, JVM instances can share Class data to reduce memory usage and
the startup time for java applications. And on our  enviroment typically we
use coroutine based sockets to work with Apache http client , Solr client
,etc. Coroutines are cooperative and cheaper than threads and be created as
much as our memory can bear.

Xfeep

On Mon, Sep 8, 2014 at 3:27 AM, gvim gvi...@gmail.com wrote:

 On 07/09/2014 17:51, Yuexiang Zhang wrote:


  From Nginx-Clojure the most attractive things to us is :

  1. Nginx's architecture is Master + Worker processes, Nginx-Clojure
 embed one JVM in per Worker process. So if any of worker process
 crashes, the other JVM instances can still work and the Master will
 recreate a new Worker process embedding with a new JVM instance.
  2. Nginx's perfect performance when handle even over 10 thousand
 connections
  3. Coroutine based socket let old Java Socket API based app/libraries
 won't lock a thread anymore
  4. IO (Coroutine based socket, Asynchronous socket  Channel) are on
 top of Nginx IO API which is more worldly-wise than Java NIO on huge
 scalar server application.
  5. JVMs are not goot at huge memory management. Configurable multiple
 JVM instances (is the same number of Nginx Worker processes) will
   manage less memory. e.g. we have ten Nginx Worker processes in one
 Nginx instance every JVM instance will only manage 1/10 memory
  6.   Nginx already has many modules / features such as rate limit ,
 spdy , pages cache, image filter etc. Most of them maybe are
 difficult or less effective to be implemented in pure Java world.


 I'm fairly new to Clojure/JVM but I was under the impression Java
 webservers such as Wildfly (= JBoss) had a reputation for managing memory
 efficiently by spawning threads, ie. only a single JVM instance required?
 Your scenario with multiple JVMs/1 per worker sounds like a much bigger
 memory footprint but, as I said, I'm new to Java.


 gvim

 --
 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 a topic in the
 Google Groups Clojure group.
 To unsubscribe from this topic, visit https://groups.google.com/d/
 topic/clojure/baqWfrei8CE/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to
 clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


-- 
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.


Interop nightmare

2014-09-07 Thread Sam Raker
I'm trying to use the Stanford Parser from Clojure, but I don't know hardly 
any Java, and this is my first time working with the interop stuff. All I 
want to do is play around with the class in the REPL. I added 
`[edu.stanford.nlp/stanford-parser 3.4.1]` to my Lein `project.clj`, and 
the download seemed to go fine. The documentation 
is 
http://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/parser/lexparser/LexicalizedParser.html
 
for those of you playing at home.

Basically, my efforts have been a total failure. I can `(import 
edu.stanford.nlp.parser.lexparser.LexicalizedParser)`, but after that, it's 
just a nightmare of `no matching ctor`, `no matching field`, 
`NoSuchFieldException` and `expected static field` errors. I can't even 
initialize anything -- `(def parser (new LexicalizedParser))` gives me the 
aforementioned `no matching ctor` error.

Like I said before, this is entirely my fault: I don't know Java, I don't 
know interop, and I Google has failed me. So I turn to you, beloved Clojure 
community, to correct my ignorance. I'm sure it's not hard, I'm just 
missing something.


Thanks,
-sam

-- 
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.


Re: Clojure statechart / hierarchical FSM implementation

2014-09-07 Thread Kevin Lynagh
I've been working on an implementation of Harel's statecharts based on his 
original paper 
(http://www.wisdom.weizmann.ac.il/~dharel/SCANNED.PAPERS/Statecharts.pdf) 
and Horrocks' excellent Constructing the User Interface with Statecharts
(http://www.amazon.com/Constructing-User-Interface-Statecharts-Horrocks/dp/0201342782).

There's a brief demo of using statecharts with ClojureScript livereloading 
here:

https://www.youtube.com/watch?v=57wJpfMcfnU

However, my implementation is experimental and I want to spend six months 
building real software with Harel's notation before I consider releasing 
any code.
If you end up exploring the space and want to discuss design/implementation 
issues re: statecharts, I'd be happy to discuss off-list.

cheers,

Kevin

On Friday, September 5, 2014 12:13:43 AM UTC-7, Andre Van Der Merwe wrote:

  Does anyone know of a clojure implementation of a Harel statechart or 
 some variation of it (UML2 statechart, hierarchical FSM etc)? Specifically 
 I’d like the implementation to handle; hierarchical nesting, history 
 states, conditions, concurrency and communication if possible.

  

 Alternatively are there any papers or examples that you know of that 
 discuss implementing statecharts? Most of the ones I’ve seen are code-gen 
 tools and that does not really what I am after.

  

 Thanks.

  

 Andre.
  
 --
 Information contained in this e-mail, including attachments and any rights 
 hereto are the property of Portfolio Prospecting and Performance (Pty) Ltd 
 (unless the context clearly indicates otherwise). It is confidential, 
 private and intended for the addressee only and should you not be the 
 addressee and receive it by mistake, kindly notify the sender and delete 
 this information immediately without further disclosure to any other party. 
 Save for bona fide views of Portfolio Prospecting and Performance (Pty) 
 Ltd, views and opinions expressed in this e-mail are those of the sender 
 only. Portfolio Prospecting and Performance (Pty) Ltd accepts no liability 
 whatsoever for any loss or damages incurred, or suffered, arising from the 
 use the information in this e-mail. Portfolio Prospecting and Performance 
 (Pty) Ltd does not warrant the integrity of this e-mail nor that it is free 
 of errors, viruses, interception or interference
  

-- 
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.


can't connect with Datomic transactor

2014-09-07 Thread Wilker
Hi,

I was using Datomic in memory for a few days, and now I tried to switch for
a more persistent storage. First I tried just using the free, but I was
getting this error:

CompilerException java.lang.NoSuchMethodError:
clojure.lang.SeqIterator.init(Lclojure/lang/ISeq;)V,
compiling:(form-init5913779045640355531.clj:1:11)

Then I tried to use pro to see if that works, but end up with same results.

The funny part is, if I try to connect just after launching the transactor
I get this:

(def conn (d/connect uri))
CompilerException clojure.lang.ExceptionInfo: Error communicating with HOST
localhost on PORT 4334 {:alt-host nil, :peer-version 2, :password ...,
:username ..., :port 4334, :host localhost, :version 0.9.4894,
:timestamp 1410145249419, :encrypt-channel true},
compiling:(form-init5913779045640355531.clj:1:11)

Then if I run same thing again:

(def conn (d/connect uri))
CompilerException java.lang.NoSuchMethodError:
clojure.lang.SeqIterator.init(Lclojure/lang/ISeq;)V,
compiling:(form-init5913779045640355531.clj:1:11)

Running (d/create-database) works just fine (I can confirm by checking on
the console).

All that I get from datomic transactor log is this:

2014-09-08 00:05:24.455 INFO  defaultdatomic.lifecycle - {:tid 26, :pid
58071, :host localhost, :port 4334, :encrypt-channel true, :version
0.9.4894, :timestamp 1410145524454, :event :transactor/heartbeat, :rev
198}

I have no more idea about what to do to fix it... You guys know what this
issue is about?

Thanks.
---
Wilker Lúcio
http://about.me/wilkerlucio/bio
Woboinc Consultant
+55 81 82556600

-- 
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.


Re: Interop nightmare

2014-09-07 Thread Herwig Hochleitner
I'm not familiar with the stanford parser, or nlp, but the `no matching
ctor error` is easily explained:
According to the doc
http://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/parser/lexparser/LexicalizedParser.html#LexicalizedParser(edu.stanford.nlp.parser.lexparser.Lexicon,
edu.stanford.nlp.parser.lexparser.BinaryGrammar,
edu.stanford.nlp.parser.lexparser.UnaryGrammar,
edu.stanford.nlp.parser.lexparser.DependencyGrammar,
edu.stanford.nlp.util.Index, edu.stanford.nlp.util.Index,
edu.stanford.nlp.util.Index, edu.stanford.nlp.parser.lexparser.Options), the
only Constructor to LexicalizedParser takes 8 arguments, whose types I
won't bother to repeat.

Assuming you are familiar with the first half of
http://clojure.org/java_interop , I recommend that you find a usage example
of Stanford Parser and translate it to clojure sytax. That way you only
have to bother with one unknown at a time and it will be easier to answer
questions.

kind regards

2014-09-08 4:50 GMT+02:00 Sam Raker sam.ra...@gmail.com:

 I'm trying to use the Stanford Parser from Clojure, but I don't know
 hardly any Java, and this is my first time working with the interop stuff.
 All I want to do is play around with the class in the REPL. I added
 `[edu.stanford.nlp/stanford-parser 3.4.1]` to my Lein `project.clj`, and
 the download seemed to go fine. The documentation is
 http://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/parser/lexparser/LexicalizedParser.html
 for those of you playing at home.

 Basically, my efforts have been a total failure. I can `(import
 edu.stanford.nlp.parser.lexparser.LexicalizedParser)`, but after that, it's
 just a nightmare of `no matching ctor`, `no matching field`,
 `NoSuchFieldException` and `expected static field` errors. I can't even
 initialize anything -- `(def parser (new LexicalizedParser))` gives me the
 aforementioned `no matching ctor` error.

 Like I said before, this is entirely my fault: I don't know Java, I don't
 know interop, and I Google has failed me. So I turn to you, beloved Clojure
 community, to correct my ignorance. I'm sure it's not hard, I'm just
 missing something.


 Thanks,
 -sam

 --
 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.


-- 
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.


Re: Interop nightmare

2014-09-07 Thread Michael Klishin
On 8 September 2014 at 06:50:38, Sam Raker (sam.ra...@gmail.com) wrote:
 I can `(import  
 edu.stanford.nlp.parser.lexparser.LexicalizedParser)`,  
 but after that, it's just a nightmare of `no matching ctor`, `no  
 matching field`, `NoSuchFieldException` and `expected static  
 field` errors. I can't even initialize anything -- `(def parser  
 (new LexicalizedParser))` gives me the aforementioned `no  
 matching ctor` error.

The only constructor on that class has way more than 0 arguments:
http://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/parser/lexparser/LexicalizedParser.html#LexicalizedParser(edu.stanford.nlp.parser.lexparser.Lexicon,
 edu.stanford.nlp.parser.lexparser.BinaryGrammar, 
edu.stanford.nlp.parser.lexparser.UnaryGrammar, 
edu.stanford.nlp.parser.lexparser.DependencyGrammar, 
edu.stanford.nlp.util.Index, edu.stanford.nlp.util.Index, 
edu.stanford.nlp.util.Index, edu.stanford.nlp.parser.lexparser.Options)

Perhaps you should use a factory method to instantiate it:
http://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/parser/lexparser/LexicalizedParser.html#loadModel()

See http://clojure-doc.org/articles/language/interop.html, too. 
--  
@michaelklishin, github.com/michaelklishin

-- 
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.


Re: [ANN] Nginx-Clojure v0.2.5 released!

2014-09-07 Thread Xfeep
 In addition one Java thread will tie up one native OS thread.
A
On Monday, September 8, 2014 10:50:13 AM UTC+8, Yuexiang Zhang wrote:

 Not only Wildfly but also most of mainstream pure java webservers use 
 thread pool to handle http requests. Nginx-Clojure can also be configurated 
 to use thread pool with one or many JVM instances. 

 Advanced Java webservers use Java NIO (I/O multipexing) to do the first 
 phrase (Http request accepting and simple parsing)  then run user business 
 flow with thread pool. The first phrase only need one or very few threads. 
 But at the second phrase (using thread pool) largely existing Java Socket 
 API based libraries such as JDBC drivers, Http Client are  blocking so if 
 there are many connections they 'll eat up all threads and make the 
 webserver hang because a OS can only support less threads than connections. 
 By the way threads in JVM are not cheap and they use more memory than pure 
 native OS threads and OS threads are pre-emptive and scheduled at constant 
 time slice so if there are too many threads scheduling will cost too many 
 of cpu cycles to do real works.

 For large scalar application one JVM instance is really not enough. 
 Typical scenario is we use serveral Java webservers such as tomcat, jetty, 
 glassfish etc, and
 put a reverse proxy such as Nginx, Haproxy, Apache in the front of them. 
 And Nginx-Clojure make this work easier because it can automatic embed JVM 
 instances into Nginx worker processes and we need not maintain too many 
 webservers.

 Since JDK 5, JVM instances can share Class data to reduce memory usage and 
 the startup time for java applications. And on our  enviroment typically we 
 use coroutine based sockets to work with Apache http client , Solr client 
 ,etc. Coroutines are cooperative and cheaper than threads and be created as 
 much as our memory can bear.

 Xfeep

 On Mon, Sep 8, 2014 at 3:27 AM, gvim gvi...@gmail.com wrote:

 On 07/09/2014 17:51, Yuexiang Zhang wrote:


  From Nginx-Clojure the most attractive things to us is :

  1. Nginx's architecture is Master + Worker processes, Nginx-Clojure
 embed one JVM in per Worker process. So if any of worker process
 crashes, the other JVM instances can still work and the Master will
 recreate a new Worker process embedding with a new JVM instance.
  2. Nginx's perfect performance when handle even over 10 thousand
 connections
  3. Coroutine based socket let old Java Socket API based app/libraries
 won't lock a thread anymore
  4. IO (Coroutine based socket, Asynchronous socket  Channel) are on
 top of Nginx IO API which is more worldly-wise than Java NIO on huge
 scalar server application.
  5. JVMs are not goot at huge memory management. Configurable multiple
 JVM instances (is the same number of Nginx Worker processes) will
   manage less memory. e.g. we have ten Nginx Worker processes in one
 Nginx instance every JVM instance will only manage 1/10 memory
  6.   Nginx already has many modules / features such as rate limit ,
 spdy , pages cache, image filter etc. Most of them maybe are
 difficult or less effective to be implemented in pure Java world.

  
 I'm fairly new to Clojure/JVM but I was under the impression Java 
 webservers such as Wildfly (= JBoss) had a reputation for managing memory 
 efficiently by spawning threads, ie. only a single JVM instance required? 
 Your scenario with multiple JVMs/1 per worker sounds like a much bigger 
 memory footprint but, as I said, I'm new to Java.


 gvim

 -- 
 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 a topic in 
 the Google Groups Clojure group.
 To unsubscribe from this topic, visit https://groups.google.com/d/
 topic/clojure/baqWfrei8CE/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to 
 clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.




-- 
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