Re: Loading two namespaces that :use each other.

2009-01-29 Thread Paul Stadig
I've run into some similar problems, but what I did was to just create a third namespace that contained the common core functionality. Could you, or have you tried something like that? Aside from that you could maybe try to do something in the body of your file (instead of the ns form) to deal wi

Clojure + Terracotta = Yeah, Baby!

2009-02-27 Thread Paul Stadig
ter way to do it. I'd be interested in knowing if anyone else has experience to share about using Terracotta with Clojure. Paul Stadig --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Clojure" gro

Re: Clojure + Terracotta = Yeah, Baby!

2009-02-27 Thread Paul Stadig
ween. We may be able then to reduce the number > of alternate implementations > if more where created. > > The work is in progress, next week is a school break week here so the pace > will slow down a bit. > We wanted to start earlier on this (before XMas) but we had updates to put

Re: Clojure + Terracotta = Yeah, Baby!

2009-02-28 Thread Paul Stadig
My approach was just to share what few refs I wanted, but another approach (like Luc's) is to share everything. The obvious advantage being that you can set! the root binding of vars (like function definitions). The goal with Terracotta is to make things as transparent as possible, so I don't thin

Re: Clojure + Terracotta = Yeah, Baby!

2009-02-28 Thread Paul Stadig
In the Namespace case, it might be premature optimization to worry about AtomicReference being replaced. If there is a way to rewrite that code with, say, synchronized blocks, and it will work better with Terracotta, I think it would be worth doing. I don't think it would be normal usage to be upd

Re: Clojure + Terracotta = Yeah, Baby!

2009-03-01 Thread Paul Stadig
I've started work on a Terracotta Integration Module for Clojure already. As I understand it, we can package up the Terracotta config as well as any replacement classes. This way we can "patch" Clojure temporarily until either Terracotta supports the features we need, or Clojure can be rewritten s

Re: Clojure Continuous Integration on Tapestry360

2009-03-01 Thread Paul Stadig
If I want to install maven into my local repository from a working copy (with local changes), how would I do so? I would expect to be able to do "mvn install", but it does not work. The pom.xml has been gutted of any source directory definitions, so it only builds an empty JAR. Assuming I have th

Re: Clojure + Terracotta = Yeah, Baby!

2009-03-01 Thread Paul Stadig
  We think the same way. Our first implementation of an >> >         alternative to AtomicReference >> >         is straightforward, we will look at improving it if the need >> >         arises. >> >> >         It will be easier to do so when we get stats from Terraco

Clojure + Terracotta: the Next Steps

2009-03-03 Thread Paul Stadig
I've done some more work on Clojure + Terracotta. I moved my code into a Terracotta Integration Module (TIM), which allows the bundling and reuse of the Terracotta configuration, but also provides for class replacement so that clustered versions of some classes can be written without necessarily h

Clojure + Terracotta: We Have REPL!

2009-03-05 Thread Paul Stadig
ached the first milestone. I think I deserve a cookie! Paul Stadig --~--~-~--~~~---~--~~ 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 To unsubs

Re: Proposal: remove auto-load of user.clj

2009-03-06 Thread Paul Stadig
How about removing it from the RT static init and into the REPL function? Paul On 3/6/09, MikeM wrote: > > Currently, user.clj is loaded automatically during Clojure boot (in RT > static init). I think this is done as a convenience for repl usage, > since other apps could easily include a 'l

Re: Clojure infinite loop

2009-03-06 Thread Paul Stadig
On Fri, Mar 6, 2009 at 12:24 AM, mike.farn...@gmail.com wrote: > > Hi, > > Having attend Stu Halloway's talk on Clojure, at NFJS, I decided to > download it and check it out. The language seems like a perfect fit > for some database set manipulation that I do, and may need to do in > the future.

Re: Workflow poll?

2009-03-06 Thread Paul Stadig
If it works with Java, then it should be possible to get it working with Clojure, no? It may take some work, but should be possible. I have to say, my experience with JSwat was adequate. Obviously a debugger that could step back would be better, but with JSwat I was able to step between Java code

Re: How do I setup Clojure REPL to automattically use some libraries?

2009-03-06 Thread Paul Stadig
You can create a user.clj file in your classpath, and it will get loaded when Clojure is run, with the REPL or not. Paul On 3/6/09, Christopher wrote: > > Does anyone know if there is a way to setup your Clojure REPL with an > initialization file like how SBCL works with a .sbclrc file? I'd

Re: swank-clojure + slime

2009-03-08 Thread Paul Stadig
On Sun, Mar 8, 2009 at 3:15 PM, Phil Hagelberg wrote: > It sounds more likely that your copy of Clojure is out of date. Are you > pulling from the sourceforge SVN by any chance? > > It would probably be a good idea to make it so the last commit in the SF > repo is simply a README saying "don't us

Re: On the importance of recognizing and using maps

2009-03-09 Thread Paul Stadig
On Sun, Mar 8, 2009 at 9:59 PM, Brian Carper wrote: > > On Mar 8, 10:53 am, Rich Hickey wrote:> >> In looking at some of the libraries, I am a bit concerned that maps >> are not being used when the logical entity is in fact a map. > > One time I find myself abusing vectors where maps would be be

Re: Accuracy of *file*

2009-03-12 Thread Paul Stadig
I wrote these a while ago, and I'm not sure if they're still useful or not, but I'll just send them along without any guarantee. I have used them like (__FILE__) and (__DIR__) when I wanted to get access to things relative to the current file. (defmacro __FILE__ [] `(if *file* (let [f# (C

Re: Accuracy of *file*

2009-03-12 Thread Paul Stadig
On Thu, Mar 12, 2009 at 12:50 PM, Phil Hagelberg wrote: > > Paul Stadig writes: > > > I wrote these a while ago, and I'm not sure if they're still useful or > not, but I'll just send them along without any guarantee. I > > have used them like (__FILE__) an

Re: "08" and "09" are invalid numbers, but "01" through "07" are fine?

2009-03-16 Thread Paul Stadig
I couldn't find anything on the http://clojure.org/reader page, but someone had just posted an example of notation for alternative bases. It looks like you just enter r user=> 2r1000 8 user=> 3r300 java.lang.NumberFormatException: For input string: "300" user=> 3r200 18 Paul On Sun, Mar 15, 20

Re: Which Java book(s) to order

2009-03-16 Thread Paul Stadig
The 3rd edition of Thinking in Java is available on the author's website for free. http://www.mindview.net/Books/TIJ/ Paul On Mon, Mar 16, 2009 at 8:47 AM, Mark Feeney wrote: > > I hate "+1" emails, but this is essentially just that. > > "Java Concurrency in Practice" gets my vote as the most

Re: Symbols evaluated at compile time?

2009-03-16 Thread Paul Stadig
I may be missing something, but how does having to (declare) vars fix typos? I don't think anyone is suggesting *creating* a var that is referenced before it is defined. What people are asking for is that the compiler looks-ahead to verify that the var will eventually be defined, and then go on its

Re: Symbols evaluated at compile time?

2009-03-16 Thread Paul Stadig
On Mon, Mar 16, 2009 at 4:18 PM, David Nolen wrote: > On Mon, Mar 16, 2009 at 4:08 PM, Paul Stadig wrote: > >> I may be missing something, but how does having to (declare) vars fix >> typos? I don't think anyone is suggesting *creating* a var that is >> referenc

Re: Defaults for multi-argument dispatch

2009-03-20 Thread Paul Stadig
You could use multiple multi-methods: user=> (defmulti plus-int (fn [x y] (type y))) #'user/plus-int user=> (defmethod plus-int :default [x y] (println "the first is an int")) # user=> (defmethod plus-int java.lang.Double [x y] (println "one of each")) # user=> (defmulti plus (fn [x y] (type x)))

Re: Defaults for multi-argument dispatch

2009-03-20 Thread Paul Stadig
It's also not as maintainable as using a single multi-method. Like I said, not pretty, but it works. Paul On Fri, Mar 20, 2009 at 11:38 AM, David Nolen wrote: > This works well as long as you don't mind the perf hit for the second > dispatch :) > > > On Fri, Mar 2

Re: User contributed packages (Cabel, CPAN, etc)

2009-03-22 Thread Paul Stadig
I had started on something like a package manager called Sauron ("one library to rule them all"). My idea was to be able to define dependencies with something like: (depends-on :name "clojure-json" :version "1.2.3") This would look into a ~/.sauron directory and either add a jar or a directory to

Re: Slime errors with clojure_20090320

2009-03-23 Thread Paul Stadig
There was some talk in the IRC channel on Friday about "releases" http://clojure-log.n01se.net/date/2009-03-20.html#10%3a17 One of the things mentioned was adding some way to detect (at runtime) the version of Clojure. I realize it is more complicated because we're on the bleeding edge here and w

Re: Are there ways to propagate bindings to child threads?

2009-03-27 Thread Paul Stadig
On Fri, Mar 27, 2009 at 10:06 AM, hjlee wrote: > > Hi, all. > > Story: > I couldn't understand my "binding" form behavior. > > (binding [*print-level* 2 *print-length* 2] (some-function)) > > but, some outputs didn't confirm the bound value. > > After some investigation on my code and output, I f

Clojure + Terracotta Update

2009-03-30 Thread Paul Stadig
I have gotten to the point in my Clojure + Terracotta experiment, where I believe all of the features of Clojure are functional (Refs, Atoms, transactions, etc.). I do not have a way to extensively test the Clojure functionality, but I have run the clojure.contrib.test-clojure test suites successfu

Re: Parameter ordering on map/reduce

2009-03-31 Thread Paul Stadig
Hi Nathan, There is actually a simple answer to your question. map can take a fuction of multiple parameters along with multiple collections. i.e. (defn f [x y] (+ x y)) (map f [1 2] [3 4]) => (4 6) (Warning I did this computation in the Clojure instance in my head, so some details may be sligh

Re: Advanced Practical Recursion in Lisp 1.0

2009-04-01 Thread Paul Stadig
On Wed, Apr 1, 2009 at 6:00 AM, David Sletten wrote: > [snip] > > Here's 'length' again: > (((fn [m] > ((fn [future] >(m (fn [arg] > ((future future) arg > (fn [future] >(m (fn [arg] > ((future future) arg )) > (fn [rec] > (fn [l] >

Re: speed question

2009-04-02 Thread Paul Stadig
I got it down to about 3 seconds. I did what William said, but the biggest improvement was from changing the way *width*, *height*, and *max-steps* were defined. I noticed that in the Java version they are constants, but in the Clojure version they are Vars which means that inside your tight inner

Re: Ironicly Maven2 is the lightest I could come up with

2009-04-02 Thread Paul Stadig
This works great for Java libraries, but only libraries that are in a maven repo. How hard is it to get code into a repo? What about java libraries not in a maven repo, or clojure code like clojure-json on GitHub? 1. You could set up your own repo. Ok. Cool, but not the easiest to setup and mainta

Re: speed question

2009-04-02 Thread Paul Stadig
I think you are right, Brad. However, I wonder though if there is a better way to define a constant. Neither the macro nor function seems clean. I like David's wrapping-the-whole-thing-in-a-let, but what if you wanted to access the value of "width" in a different file? Would one have to resort to

Re: speed question

2009-04-02 Thread Paul Stadig
Yeah that works the same as defining a function, just more explicit. I was looking for a way to define a constant and just use it as "my-const" without having to use the parens to call a function or a macro. I guess that would be something like a symbol macro in CL? Paul On Thu, Apr 2, 2009 at 1

Re: Clojure + Terracotta Update

2009-04-02 Thread Paul Stadig
ter On Mon, Mar 30, 2009 at 7:38 PM, Rich Hickey wrote: > > > > On Mar 30, 5:12 pm, Paul Stadig wrote: > > I have gotten to the point in my Clojure + Terracotta experiment, where I > > believe all of the features of Clojure are functional (Refs, Atoms, > > transacti

Re: Every function is a thread in Clojure?

2009-04-03 Thread Paul Stadig
The operations will happen synchronously. Clojure will not add threading to your code without you asking it to, but when you want to add threading there are lots of great tools built-in to make it Easy On You (TM). Paul On Fri, Apr 3, 2009 at 9:36 AM, BerlinBrown wrote: > > Someone correct me

Re: Keeping a ref and a DB in sync

2009-04-03 Thread Paul Stadig
I'll just throw this out there. It may not be exactly what you're looking for, but you could use a Terracotta cluster. Terracotta will persist the cluster to disk. If you have an existing database that you are working with, then this may not help, but if you are starting from scratch you may not ne

Re: How do you handle different string encodings?

2009-04-03 Thread Paul Stadig
Works For Me (TM). user=> (def s "québécois français") #'user/s user=> (print s) québécois françaisnil Are you running on Windows, Mac, or Linux? Using the Sun JVM? Which revision of Clojure? p...@pstadig-laptop:~$ lsb_release -a No LSB modules are available. Distributor ID:Ubuntu Descriptio

Re: Simple dosync/alter question

2009-04-06 Thread Paul Stadig
Alter expects a function that take the current value of the ref it will alter as the first arg. I think what you want to do is ref-set. user=> (doc alter) - clojure.core/alter ([ref fun & args]) Must be called in a transaction. Sets the in-transaction-value of ref to:

Re: ANN: Pretty printer is now part of contrib

2009-04-07 Thread Paul Stadig
Isn't it somewhat standard procedure in the Java world (or at least the Maven world...sorry to bring that up again :)) to distribute with a clojure-contrib.jar and clojure-contrib-sources.jar, one being only the compiled classes and the other only being the source files? Paul On Tue, Apr 7, 2009

Re: Clojure on Google AppEngine

2009-04-08 Thread Paul Stadig
Nice writeup John! Thanks very much. Not sure if I made it into the first 10k developers, but I can't wait to play with this. Paul On Wed, Apr 8, 2009 at 12:52 AM, David Nolen wrote: > Very exciting, thanks for the excellent and informative writeup. > > > On Wed, Apr 8, 2009 at 12:41 AM, John

Re: DISCUSS: clojure.contrib.java-utils/as-str

2009-04-09 Thread Paul Stadig
I think it makes sense for (str) to return "", but I'm not sure about (as-str) being "". It doesn't seem as obvious and expected to me. Paul On Thu, Apr 9, 2009 at 2:57 AM, Eric Tschetter wrote: > > Might I suggest > > (defn as-str > ([] "") > ([& args] >(apply str (map #(if (instance? c

Re: java.lang.String cannot be cast to [Ljava.lang.CharSequence;

2009-04-16 Thread Paul Stadig
Are you trying to give it a string, or an array of strings? sendKeys takes a variable number of arguments. The error you are getting is that it can't cast a java.lang.String into [Ljava.lang.CharSequence, where the '[' at the beginning of the type means an array. It is telling you that it cannot c

Re: The Path to 1.0

2009-04-17 Thread Paul Stadig
On Fri, Apr 17, 2009 at 9:21 AM, Rich Hickey wrote: > > > As for tests, there are tests in: > > > http://code.google.com/p/clojure-contrib/source/browse/#svn/trunk/src/clojure/contrib/test_clojure > > Anyone who wants more tests can contribute them. > I think what would be useful, though, is to

Re: The Path to 1.0

2009-04-21 Thread Paul Stadig
On Mon, Apr 20, 2009 at 8:52 PM, Rich Hickey wrote: > On Apr 20, 2009, at 7:02 PM, Antony Blakey wrote: > > On 21/04/2009, at 5:12 AM, Laurent PETIT wrote: > > > >> { :major 1 :minor 0 :release 0 :status :SNAPSHOT } > >> then > >> { :major 1 :minor 0 :release 0 :status :RC1 } (release candidate

Re: ICFP 2009

2009-04-23 Thread Paul Stadig
On Thu, Apr 23, 2009 at 11:04 AM, Rich Hickey wrote: > On Apr 23, 8:59 am, Andrew Wagner wrote: > > > Sounds like a fun thing to try. Could someone give a brief > > > description of what would be required in terms of time commitment to > > > participate on a team? (Sadly, spare time is hard to

Re: Got a Clojure user group?

2009-05-05 Thread Paul Stadig
I manage the Clojure Users Group on LinkedIn, which might also be worth mentioning. http://www.linkedin.com/groups?gid=1058217 Paul On Thu, Apr 23, 2009 at 9:43 PM, Rich Hickey wrote: > > Thanks all - the list is here: > > http://clojure.org/community > > More additions welcome! > > Rich > >

Re: Macros applied to entire programs

2009-05-12 Thread Paul Stadig
You could write a Clojure program that took in a Clojure program and spit out an optimized Clojure program. You could do something similar to the meta-circular evaluator, where you step through the program (which is just a data structure) recursively matching the head each time against different sy

Re: Google App Engine - best workflow

2009-05-15 Thread Paul Stadig
I'm not a java security manager expert, but I've been playing with this a bit. Could you not do it the other way round? Start a REPL and run the server in the REPL, instead of starting a server and trying to run a REPL in the server? I got as far as setting up the classpath and doing: (com.googl

Re: clojure-mode install on Windows XP does not work, for me

2009-05-18 Thread Paul Stadig
I just happened to be setting up emacs an a new Ubuntu install today. I think it might have something to do with 'add-classpath. The swank-clojure-init function is trying to add the swank-clojure directory to the classpath, but the 'require still fails when starting up the clojure REPL. I added th

Re: clojure-mode install on Windows XP does not work, for me

2009-05-19 Thread Paul Stadig
ure") > (directory-files "~/.clojure" t ".jar$" > > This does not work, with "origin/master", rolling back to "origin/1.0" > works though. (with or without setting swank-clojure-extra-classpaths) > > Paul, you must have done

You know you've been writing too much Clojure when...

2009-05-29 Thread Paul Stadig
You meant to type disclosure, but instead you typed disclojure. Paul --~--~-~--~~~---~--~~ 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

Re: Concerns About Pushing Clojure 1.0.0 to Maven Central Repo?

2009-06-02 Thread Paul Stadig
I signed up and voted. Only took about 30 seconds. Thanks for the work everyone. I would love to see Clojure get into the Maven repo. Paul On Tue, Jun 2, 2009 at 6:04 AM, Stefan Hübner wrote: > > The upload bundle, which is found at > http://jira.codehaus.org/browse/MAVENUPLOAD-2464, promotes

Re: You know you've been writing too much Clojure when...

2009-06-02 Thread Paul Stadig
On Tue, Jun 2, 2009 at 10:06 AM, Shawn Hoover wrote: > On Tue, Jun 2, 2009 at 9:52 AM, Michael Reid wrote: > >> On Fri, May 29, 2009 at 2:51 PM, Paul Stadig wrote: >> > You meant to type disclosure, but instead you typed disclojure. >> > >> > Paul >>

Re: Silly question from Programming Clojure

2009-06-05 Thread Paul Stadig
Concepts of Programming Languages by Sebesta is a book that we used that as the text for my comparative programming languages class. I haven't read CTMCP, so I cannot compare. However, after taking that class during my undergraduate, I couldn't believe that it was an elective! There should definite

Re: Contributing to Clojure CLR.

2009-06-11 Thread Paul Stadig
I believe David Miller is the one who wrote the CLR code, and he is still hacking on it when he has time. In addition to what is checked into contrib there is also this: http://github.com/dmiller/ClojureCLR/tree/master I'm not sure if they are in sync or which is the most current (github may be

Re: Clojure at LispNYC tonight 7pm

2009-06-16 Thread Paul Stadig
On Wed, Jun 10, 2009 at 11:37 AM, Stuart Sierra wrote: > > On Jun 9, 10:32 am, Stuart Sierra wrote: > > Join us Tuesday, June 9 from 7:00-9:00 for Stuart Sierra's > > presentation: > > > > Implementing AltLaw.org in Clojure > > Slides and video here: http://lispnyc.org/wiki.clp?page=past-mee

Re: Rebinding functions?

2009-06-16 Thread Paul Stadig
On Tue, Jun 16, 2009 at 1:38 PM, Michel Salim wrote: > > It's currently not possible to dynamically rebind functions: > > (binding [+ -] (+ 5 3)) ==> 8 ;; not 2 > > Thanks, > > -- > Michel S. > It is possible to rebind (even core) functions, but there are a couple of limitations. One of which is

Re: Clojure goes Git!

2009-06-17 Thread Paul Stadig
On Wed, Jun 17, 2009 at 7:03 AM, Mark Volkmann wrote: > On Tue, Jun 16, 2009 at 8:17 PM, Antony Blakey wrote: > > We must be talking about a different way of using git. In my case I created > a local repo from the remote github repo using the following command: > > git clone git://github.com/richh

Re: Clojure & Terracotta - TIM

2009-11-16 Thread Paul Stadig
Hey Sergey, I did the work on the Clojure TIM. I published a report of my findings at [1]. At least three of the roadblocks that I encountered were fixed in Terracotta 3.0.1 [2]. I believe the TIM works with Clojure 1.0, but it's been several months since I've looked at the code. There are still s

Re: Clojure & Terracotta - TIM

2009-11-16 Thread Paul Stadig
Sorry! I forgot to say this, but the short answer is: No, I would not consider it to be production ready. It may be close, but it is not production ready. Paul On Sun, Nov 15, 2009 at 2:47 PM, Sergey Didenko wrote: > Hi from a Clojure newbie! > > I have read the april thread "Clojure + Terracot

Re: Clojure & Terracotta - TIM

2009-11-18 Thread Paul Stadig
Thanks for your feedback. I was able to get it to work again and pushed some minor changes to the git repo. I downloaded Terracotta 3.1.1, and followed the instructions in the tim-clojure-1.0-SNAPSHOT/example/README. I ended up uncommenting all of the code in ClojureTerracottaConfigurator.java. I

1.0 Compatible Terracotta Integration Module

2009-12-10 Thread Paul Stadig
Hey everyone, I haven't been in #clojure that often lately, but when I have been there were people asking about Terracotta integration on two separate occasions. What are the chances of that?! :) There is a new repo at http://github.com/pjstadig/tim-clojure-1.0.0/ that has a 1.0 compatible version

Re: [?] alter-var-root and *out*

2021-09-01 Thread Paul Stadig
`*out*` may have a thread binding established. REPLs will often do this. If `*out*` is thread bound you should be able to use `thread-bound?` to check that and then `set!` to set it, but you have to be careful because https://clojure.atlassian.net/browse/CLJ-1077 On Wed, Sep 1, 2021 at 4:58 AM Ph

Re: variable name duplicate

2022-07-30 Thread Paul Stadig
I'm pretty sure what is happening is the Clojure compiler is munging "x-" into "x_" but since you already have an "x_" you get an exception. On Sat, Jul 30, 2022, 5:23 AM vinurs wrote: > hello, > i have the following code: > ``` > (let [x- 1 x_ 2] (fn [] [x- x_])) ; => Throws: Duplicate field na

Re: Sierra's Component

2024-04-06 Thread Paul Stadig
You can do either. If you pass the config as a dependency, then you have to access it in the `start` method after dependency injection has occurred. Sometimes it is useful to write a constructor function to initialize the component. If that constructor needs access to the config it must be passed

[ANN] pjstadig/reducible-stream 0.1.0

2016-08-19 Thread Paul Stadig
I have released a library for fusing a stream, decoder, and resource management into a reducible object with the intent to automatically manage resources. You can then apply a transducer to this object. This means you can apply a transducer pipeline that only partially consumes the stream, yet

Re: with-open pattern

2017-05-10 Thread Paul Stadig
this object like a sequence, it will fully consume the input > stream and fully realize the decoded data in memory." > > I'm specifically trying to avoid realizing the full collection in memory, > because it won't fit. > > On Thursday, May 4, 2017 at 11:22:36 AM UT

Re: Strange result for clojure.core/time

2020-04-11 Thread Paul Stadig
The output of `time` is in milliseconds and the output of `with-timer-print` is in seconds. So to make them comparable: `time` 0.01344 msec `time` with eval 0.922536 msec `with-timer-print` 0.048 msec `with-timer-print` with eval 1.041 msec The `with-timer-print` version is slower, and I suspect

Hiring Clojure developers for our distributed team at Outpace Systems

2014-02-19 Thread Paul Stadig
than ourselves. Whatever the case, I'm happy to talk for 5-10 minutes, and if that doesn't result in hiring, then at least I made a new friend, right? :) I can do Skype, Google Hangouts, e-mail, IRC, whatever works for you. Paul Stadig p...@stadig.name paul.sta...@outpace.com http://gith

Re: Hiring Clojure developers for our distributed team at Outpace Systems

2014-02-19 Thread Paul Stadig
On Wednesday, February 19, 2014 10:50:54 AM UTC-5, Michael Klishin wrote: > > > Paul, > > I believe last time candidates from non-US timezones were not considered. > Is it still the case? I'm pretty sure plenty of potential candidates on > this list care to know. > We like to be able to pair (thi

Re: JVM assertions in Clojure

2013-10-11 Thread Paul Stadig
The problem is that you would still have a performance hit. As I understand, the reason that Java assertions have no runtime penalty when disabled is because they depend on the value of a final field in a class which the JIT will eliminate as dead code when that final field is set to false. The

Re: JVM assertions in Clojure

2013-10-11 Thread Paul Stadig
As reflected in the linked discussion and Jira ticket, it seems possible to be able to use -ea/-da with Clojure. It would definitely require a compiler change, and I'm not aware of any further movement to make Clojure's asserts use a mechanism compatible with -ea/-da. An additional annoyance (a

[ANN] scopes: a little library for resource scopes

2013-10-11 Thread Paul Stadig
I have released version 0.1.0 of scopes, a little library for resource scopes. It can be used to establish a resource scope with the with-resource-scope macro. Within the dynamic extent of that macro one can register a resource with the scoped! function so that when the macrco block goes out of

Re: [ANN] scopes: a little library for resource scopes

2013-10-11 Thread Paul Stadig
(with-open ...) doesn't do? Generalize to other > cleanup methods than (.close x)? > > > On Fri, Oct 11, 2013 at 6:36 AM, Paul Stadig > > wrote: > >> I have released version 0.1.0 of scopes, a little library for resource >> scopes. It can be used to establish

Re: [ANN] scopes: a little library for resource scopes

2013-10-13 Thread Paul Stadig
scoping concept. It can evolve from there. Paul On Sat, Oct 12, 2013 at 10:11 AM, Jozef Wagner wrote: > Is it based on http://dev.clojure.org/display/design/Resource+Scopes ? > > On Friday, October 11, 2013 3:54:59 PM UTC+2, Paul Stadig wrote: >> >> It separates the resource

Re: JVM assertions in Clojure

2013-10-14 Thread Paul Stadig
On Mon, Oct 14, 2013 at 5:59 AM, Phillip Lord wrote: > writes: > > Same trick as > Java -- optimise the check away at compile time. > > Indeed, this is how Clojure's assert works. > This is the way Clojure's assert works (by compiling away the assertion). This is not the way Java assertions work

Re: JVM assertions in Clojure

2013-10-14 Thread Paul Stadig
/disable assertions at runtime in Clojure without any penalty. https://github.com/pjstadig/assertions Paul On Mon, Oct 14, 2013 at 2:37 PM, Paul Stadig wrote: > On Mon, Oct 14, 2013 at 5:59 AM, Phillip Lord < > phillip.l...@newcastle.ac.uk> wrote: > >> writes: >&g

ANN: byte vector backed, utf8 strings for Clojure

2013-11-07 Thread Paul Stadig
I have released a byte vector backed, utf8 string library for Clojure. It exists because when doing lots of ASCII string processing, Java strings can be pretty hefty. Using byte arrays to represent strings can be annoying for various reasons (mutability, bad equality semantics). However, byte vecto

Re: ANN: byte vector backed, utf8 strings for Clojure

2013-11-07 Thread Paul Stadig
On Thursday, November 7, 2013 2:57:03 PM UTC-5, Andy Fingerhut wrote: > > Very cool. > > I read through your README (thank you for that), and did not notice an > answer to the question of: does seq on a utf8 string return a sequence of > Unicode code points? Java UTF-16 code points (with pairs o

ANN: nio 0.0.4

2013-01-29 Thread Paul Stadig
Wanted to let everyone know that I've released nio 0.0.4 on Clojars. nio is a library that extends clojure.java.io support to the java.nio classes. The 0.0.4 release adds two convenience functions for reading and setting the byte order of ByteBuffers. You can find out details and example usage at h

Re: Performance issue with hashing records

2013-02-03 Thread Paul Stadig
On Sunday, February 3, 2013 1:07:41 AM UTC-5, puzzler wrote: > > I just went through the process of converting my map-based program over to > records, hoping it would improve speed. Much to my dismay, it actually > slowed my program down substantially. With some profiling, I discovered > that

Re: Performance issue with hashing records

2013-02-04 Thread Paul Stadig
On Sunday, February 3, 2013 9:56:49 PM UTC-5, puzzler wrote: > > In these examples, the map/record is freshly created each time through the > loop, so caching should not be a factor. > Good point. So maybe it's not the caching :). Another factor is that literal hashmaps are actually Persistent

Re: terracotta?

2010-07-13 Thread Paul Stadig
I have not pursued any further work with Terracotta, because I haven't had a real project that required it. I'd be glad to try to pick something back up, especially if there are others interested in helping out. Paul http://paul.stadig.name/ (blog) 703-634-9339 (mobile) pjstadig (twitter) p..

Re: ANN: Deview - Better test results

2010-07-14 Thread Paul Stadig
On Wed, Jul 14, 2010 at 2:11 AM, Heinz N. Gies wrote: > > On Jul 14, 2010, at 6:40 , Phil Hagelberg wrote: > > > This is really cool! > > > > Unfortunately since I spend all my time in the terminal, (for remote > > pairing) I can't really use a web-based interface like this for normal > > work. D

Re: terracotta?

2010-07-15 Thread Paul Stadig
If anyone is interested, the latest version of my terracotta TIM is at http://github.com/pjstadig/tim-clojure-1.0.0 and it tries to be a Clojure 1.0.0 compatible TIM, which shows how its a bit out-of-date. I am very open to collaboration, and I would love pull requests, or any patches that anyone

Re: persistent LRU cache (request for input)

2010-07-18 Thread Paul Stadig
I think what you are doing is analogous to the peek and pop operations in core. To get and remove and item you would peek to get the first item, and then alter your ref with a pop, which returns the structure minus with the first item removed. If you do all of this within a dosync, including the

Re: terracotta?

2010-07-21 Thread Paul Stadig
There are agents, atoms, vars, seqs, and lisp macros all of which may make Clojure a more appealing alternative to Java for use with Terracotta. My goal was to get Clojure working with Terracotta, period. Most of the work I did was actually focused on vars so that you could define a function and h

Re: Speeding up equals using the cached hash code?

2010-08-05 Thread Paul Stadig
I believe the code already does what you are asking about. Are you talking about something like this? http://github.com/clojure/clojure/blob/master/src/jvm/clojure/lang/APersistentMap.java#L57 this? http://github.com/clojure/clojure/blob/master/src/jvm/clojure/lang/APersistentSet.java#L58 and th

Re: What is the reason Lisp code is not written with closing parenthesis on new lines?

2010-08-18 Thread Paul Stadig
I've rarely found these coding style discussions to be productive, and have wondered why source control systems don't just store code in a whitespace normalized format and automatically format the code to your own taste when you check it out, because, let's face it, formatting is semantically irrel

Re: User.clj and set!

2011-06-22 Thread Paul Stadig
On Jun 19, 5:11 pm, Andreas Liljeqvist wrote: > Thanks for the answer. > Would there be any problems associated with changing the root bindings? > It means that every thread in the whole JVM would get that value, but that's probably what you want. It also means that if someone else changed the ro

Re: Clojure 1.3 treatment of integers and longs

2012-03-07 Thread Paul Stadig
On Sunday, October 23, 2011 5:21:52 PM UTC-4, Rich Hickey wrote: > > Hi all, > > This reply is to the thread, not Luc specifically. > > Thanks everyone for your feedback and input. > > I have pushed 3 commits: > > 1) Fixes the inconsistency between the hash function used by Clojure maps > (was .

Re: Scheme dotted pair equivalent in Clojure

2012-06-17 Thread Paul Stadig
On Jun 16, 11:37 am, David Nolen wrote: > Not possible in Clojure and a source of hassle in Scheme and Common Lisp. > If you have dotted pairs you can never know if you have a proper list. I'm probably missing some context, but I've heard this argument before and had a hard time understanding it.

Re: ClojureC - A Clojure to C compiler - Work in Progress

2012-07-09 Thread Paul Stadig
Mark, This looks interesting. Thanks for working on this. I checked out the code and followed the instructions to setup glib2 and the GC. When I run `lein test` "I get Exception in thread "main" java.io.FileNotFoundException: Could not locate clojurec/ core__init.class or clojurec/core.clj on cla

Re: ClojureC - A Clojure to C compiler - Work in Progress

2012-07-09 Thread Paul Stadig
On Mon, Jul 9, 2012 at 11:50 AM, Mark Probst wrote: > On Mon, Jul 9, 2012 at 5:47 PM, Paul Stadig wrote: >> I checked out the code and followed the instructions to setup glib2 >> and the GC. When I run `lein test` "I get Exception in thread "main" >> java

Re: ClojureC - A Clojure to C compiler - Work in Progress

2012-07-09 Thread Paul Stadig
On Mon, Jul 9, 2012 at 12:07 PM, Mark Probst wrote: > Yes. I'm sorry I forgot to mention that. Please let me know if it > works and I'll update the README. It works with lein2. The tests are running now, but there are some failures. I'll keep poking at it. Thanks! Paul -- You received this m

Re: ClojureC - A Clojure to C compiler - Work in Progress

2012-07-09 Thread Paul Stadig
On Mon, Jul 9, 2012 at 12:12 PM, Paul Stadig wrote: > On Mon, Jul 9, 2012 at 12:07 PM, Mark Probst wrote: >> Yes. I'm sorry I forgot to mention that. Please let me know if it >> works and I'll update the README. > > It works with lein2. The tests are running now

[ANN] nio: Clojure support for java.nio

2012-08-25 Thread Paul Stadig
I have done a little library to provide better support in Clojure for java.nio. It covers three main areas: 1) extending clojure.java.io to cover java.nio type where reasonable, 2) providing a set of coercion functions for java.nio types (similar to those for java.io provided by clojure.java.io), a

ANN: polyfn

2012-10-08 Thread Paul Stadig
I created a library for Clojure to do open, single dispatch polymorphism. What does this mean? * A polyfn dispatches on the type of its first argument. * You can add an implementation for a new type to an existing polyfn. * You can define a new polyfn on an existing type. Polyfns are exactly as f

Re: ANN: polyfn

2012-10-08 Thread Paul Stadig
On Mon, Oct 8, 2012 at 11:33 AM, Timothy Baldridge wrote: > >>> Define some implementations for specific types. >>> >>> (require '[name.stadig.polyfn :refer [defpolyfn]]) >>> (defpolyfn foo Long [exp] (inc exp)) >>> (defpolyfn foo String [exp] "Hello, World!") > > I like the idea, but it seems

  1   2   >