I will surely have a look...I am also interested in the auto saving...I
guess it's implemented the same way..using this custom file watcher layer
over file systems...

It will be fun, and at the moment I read Java better than Clojure ;)

Thank you for the reply
On Jun 8, 2014 9:51 AM, "Colin Fleming" <[email protected]> wrote:

> No, I don't, sorry. You could always look at the IntelliJ implementation
> which is open source - it's a massive complex ball of Java though.
>
> I think the actual indexing itself is fairly straightforward - I'm using
> the lowest-level indexes that IntelliJ offers, and that allows me to
> basically work with maps which fits very nicely with Clojure. The difficult
> bit is knowing when to invalidate them when files have been updated. For a
> primitive version you could just use a file watcher, but IntelliJ's is much
> more sophisticated since it has a virtual representation of a file system
> which allows much more control and knowledge of when and how things have
> changed. You also really need it integrated into your actions - when an
> action tries to perform some access requiring an index, IntelliJ will
> lazily update the index at that point, but that's more difficult to do with
> a watcher. Again, nothing is impossible, but it's a lot of work and I'm
> willing to bet there are a ton of nasty edge cases.
>
>
> On 5 June 2014 06:56, Andrea Richiardi <[email protected]> wrote:
>
>> On Tuesday, 3 June 2014 16:51:45 UTC+2, Colin Fleming  wrote:
>> > Sure, anything is of course possible with enough work :-)
>> >
>>
>> Oh yes definitely! Do you know by any chance some good reference on
>> implementation strategies for these kind of indexers? I think that the
>> spreading of a programming language depends a lot on its tooling, and from
>> what I see Clojure has potential but is missing some cool feature and IDE
>> support (Cursive aside).
>> I don't know if am going to start something like this, but it would be a
>> good reading regardless.
>>
>> --
>> Note that posts from new members are moderated - please be patient with
>> your first post.
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "ClojureScript" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at http://groups.google.com/group/clojurescript.
>>
>
>  --
> Note that posts from new members are moderated - please be patient with
> your first post.
> ---
> You received this message because you are subscribed to a topic in the
> Google Groups "ClojureScript" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/clojurescript/_95-aqLFhb4/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/clojurescript.
>

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/clojurescript.

Reply via email to