Re: Cyclic namespace dependencies!

2016-12-30 Thread Nathan Davis
On Friday, December 30, 2016 at 10:13:49 AM UTC-6, Mars0i wrote: > > I love Clojure. But: My number one complaint about it is that the > compiler won't allow cyclic namespace dependencies. I am not a > compiler-writer, but as far as I can tell the only reason for this > restriction is ...

[ANN] pulley.thread-local 0.1.0

2016-10-04 Thread Nathan Davis
n atom-like interface for thread-local bindings. Due to the simplicity of the project, I decided to experiment with Literate Programming. All the code is contained within Readme.org. Feedback / advice on this structure (and other areas of the project too) are definitely welcome. Nathan Davis -

Re: Joy of Clojure : Backward running lisp ??

2016-06-27 Thread Nathan Davis
One common problem we deal with in programming goes like this: I have certain inputs. I desire a certain output. What function (or combination of functions) will give me the desired output? Since a relation makes no distinction between "inputs" and "outputs", relational programming is one

Re: reader conditional not handling defmacro?

2016-05-27 Thread Nathan Davis
Alex, On the Dev list, you mentioned you had discussed this several times with Rich and others, but were unable to reach concensus. May I ask what the hangup is (i.e., what reservations / objections were expressed) and what other options came out of those discussions? Nathan Davis On Friday

Re: reader conditional not handling defmacro?

2016-05-26 Thread Nathan Davis
get* would act as a predicate, indicating whether a particular "feature" is available for the target platform. Then if a macro needs to be expanded in a certain way for certain platforms, it can just consult *compiler-target*. Anyway, that's my 2-cents. Nathan Davis On Sunday, May 22

Re: Avoiding nested ifs...

2016-05-26 Thread Nathan Davis
do is have access to the continuation at that point. And since pulley.cps makes continuations first-class objects, you can bind them to variables (including dynamic vars), pass/return them to/from functions, etc. Hopefully this helps. Like I said, explore other options first, but continuations

[ANN] pulley.cps 0.2.2

2016-05-09 Thread Nathan Davis
y, (fn* [<...>] <...>) forms are now transformed properly, so e.g. (delay <...>) now works. Thank you for your feedback and support! Nathan Davis -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send emai

Re: [ANN] Clojure 1.8.0-beta2

2015-10-28 Thread Nathan Davis
On Wednesday, October 28, 2015 at 9:57:54 AM UTC-5, Alex Miller wrote: > > > On Tuesday, October 27, 2015 at 9:02:49 PM UTC-5, Nathan Davis wrote: >> >> Or better yet, is there any interest in providing an interface to hook >> into the namespace loading proc

Extending namespace loading

2015-10-28 Thread Nathan Davis
red useful, or does it unnecessarily complicate namespace loading? Any alternative designs you feel would be better? Nathan Davis -- 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

[ANN] pulley.cps 0.2.1

2015-10-27 Thread Nathan Davis
Hi everyone, I'm pleased to annouce the release of pulley.cps <https://github.com/positronic-solutions/pulley.cps> version 0.2.1. This is a bugfix release that fixes a couple bugs related to dynamic vars and def forms. Nathan Davis -- You received this message because you are subs

Re: [ANN] Clojure 1.8.0-beta2

2015-10-27 Thread Nathan Davis
Or better yet, is there any interest in providing an interface to hook into the namespace loading process, so that monkey-patches are not necessary? Nathan Davis On Tuesday, October 27, 2015 at 6:47:21 PM UTC-5, Ambrose Bonnaire-Sergeant wrote: > > I've been monkey-patching `clojure.cor

Re: Library suggestions requested for clojure-toolbox.com

2015-10-06 Thread Nathan Davis
pulley.cps: https://github.com/positronic-solutions/pulley.cps On Monday, October 5, 2015 at 2:41:11 PM UTC-5, James Reeves wrote: > > If you've written or know about a Clojure or ClojureScript library, and > it's not already on clojure-toolbox.com , > I'd like

Re: Lazy deserialization / reserialization, aatree release 0.3.0

2015-10-01 Thread Nathan Davis
structure compatible with Clojure maps. But then you say that serializing "updates" is done incrementally. Could you elaborate on this? Do you mean that the new copy to be serialized is basically diff'd agaist the old version, and just the difference is serialized? Thanks, Nat

Re: Lazy deserialization / reserialization, aatree release 0.3.0

2015-10-01 Thread Nathan Davis
> This is where I get confused. Are aatrees persistent structures (in the functional programming sense, like Clojure's data structures) whose values cannot be changed (although their internal representation ("form") may change), or are they mutable? If they are persistent, what

Re: 'seq' performance for 'empty?' compared to 'count'. And where's !=?

2015-10-01 Thread Nathan Davis
lly realizing its head, please let the Clojure community know! I'm not saying having an explicit 'empty' method is a bad idea, but I'm not sure the current situation is as bad as you think. Nathan Davis -- You received this message because you are subscribed to the Google Groups "Clojure&

Re: Lazy deserialization / reserialization, aatree release 0.3.0

2015-10-01 Thread Nathan Davis
amples on using the library. I think adding a few examples (with perhaps a little explanation of what is happening under the covers) would go a long way. Nathan Davis On Thursday, October 1, 2015 at 4:22:48 PM UTC-5, William la Forge wrote: > > Sorry for my bad language. I've not written

Re: functions that operate on map_entry?

2015-09-25 Thread Nathan Davis
Try key and val: user=> (doc key) - clojure.core/key ([e]) Returns the key of the map entry. nil user=> (doc val) - clojure.core/val ([e]) Returns the value in the map entry. nil user=> On Friday, September 25, 2015 at 3:32:51 PM UTC-5,

Re: [ANN] Release of pulley.cps 0.2.0

2015-09-22 Thread Nathan Davis
e *loop* verion. On OpenJDK 8, the CPS code is consistently slower in all cases (though, as expected, the slow-down decreases as n increases). > thanks, > Francesco > > > > > On Monday, September 21, 2015 at 9:24:20 PM UTC+2, Nathan Davis wrote: >> >> I'm pleased

Re: [ANN] Release of pulley.cps 0.2.0

2015-09-22 Thread Nathan Davis
Thanks, Francesco. I'll definitely take a look at those resources. Nathan Davis On Tuesday, September 22, 2015 at 4:31:07 PM UTC-5, Francesco Bellomi wrote: > > Thanks for taking the time to write such a detailed answer, I really > appreciated it. > > Delimited continuations a

[ANN] Release of pulley.cps 0.2.0

2015-09-21 Thread Nathan Davis
n-time library. The main feature of this release is the addition of exception support — you can now use try, throw, and catch just like you would in regular Clojure code. There are various other enhancements as well, mostly to support the exception code, as documented in the changelog. Nathan

Re: [ANN] Introducing pulley.cps

2015-02-24 Thread Nathan Davis
iterative processes in a recursive, functional, manner while retaining space efficiency. Some people find this more natural than iterative alternatives, such as state machines. Again, this can be done by hand, but is very tedious. Nathan Davis On Tue, Feb 24, 2015 at 3:03 AM, Vladimir Bokov bokov.v

[ANN] Introducing pulley.cps

2015-02-19 Thread Nathan Davis
bug reports and if you have trouble navigating the documentation. Have fun, Nathan Davis -- 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

Re: Attempt at rethrow macro

2013-04-03 Thread Nathan Davis
this violate separation between the macro expander and the compiler? Are there states that can not be reached (i.e., the pre-expanded code is semantically different than the non-expanded code), no matter how we implement our expander? Nathan Davis On Tuesday, April 2, 2013 3:37:14 PM UTC