Found this:
https://groups.google.com/forum/#!searchin/clojure/%22type$20metadata%22%7Csort:date/clojure/LBGsPs2__pQ/oLgx_kgmQxgJ
:tag is applied to source forms to communicate type hints to the
compiler. :type can be used, by convention, to add 'type names' to
runtime data structures that supp
user=> (cond-> query
#_=> true
#_=> (conj '[? :data/number ?number])
#_=> true
#_=> (conj `[(~'> ~'?number ~(foo 2))]))
[:find ?e :in $ :where [? :data/number ?number] [(> ?number 3)]]
On Friday, November 17, 2017 at 6:15:18 AM UTC-8, Njab Soul wrote:
>
> Hi guys I
Kern is a text-parsing library: https://github.com/blancas/kern
1.1.0 has two fixes (times, <+>); operator <*> minimum arity is now 1
(formerly 2).
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googleg
Release 1.0 updates dependencies and gets rid of a name collision with cat.
These functions will let you write code that resembles the grammar you're
parsing. I've found it useful for interpreters, translators and DSL's.
repo: https://github.com/blancas/kern
docs: https://github.com/blancas/kern
Jorge, I tried this on 1.6 and seemed to work:
(def primes
(cons 2 (for [n (iterate inc 3) :when (prime? primes n)] n)))
On Thursday, February 12, 2015 at 4:21:45 PM UTC-8, Jorge Marques Pelizzoni
wrote:
>
> Neither did delay help:
>
> (defn primes [] (let [primes' (atom nil)]
>
>
> Sure, that's the theory behind encapsulation, but I'm not convinced there
> are many cases in practice where the API can remain consistent while the
> data changes.
>
>
I'm not, either. Models that have little or no abstraction --basically
aggregates of related items-- end up having API
Alan, what if you do
(prn orders_query_result)
If the json string is being parsed correctly you should get string values
printed in double quotes, as Tobias's examples showed.
On Saturday, September 27, 2014 1:25:27 PM UTC-7, Alan Moore wrote:
> Yes, I printed the type of body and as expected
Your implementation of cons in your deftype is probably being associated to
the ISeq type, not IPersistentCollection.
user=> (deftype Foo [a b]
#_=> clojure.lang.IPersistentCollection
#_=> (cons [_ c] [a b c]))
user.Foo
user=> (conj (Foo. 1 2) 3)
[1 2 3]
I think Vector supports ISeq
Jakub,
I'll be interested to learn how you work this out. I also work with data
whose structure is known to functions in various modules, thus its very
shape is a contract. This is coming from the other end of encapsulating
everything in Java classes and interfaces. Also, I write test cases at
I've had this problem and I suspect is low memory. It happened often with
an old box with 1G running Fedora 20, but I've also seen it with my laptop
if I leave too many leftover jvm processes running (with 4G allocated for a
virtual box instance); on my 16G mac it never happens. So freeing up so
I haven't touched this project in a while, but it might be useful.
https://github.com/blancas/tinypost
This file has the relevant interop code:
src/main/clojure/blancas/tinypost/scan.clj
On Saturday, April 26, 2014 3:04:50 AM UTC-7, Kranthi Rajoli wrote:
> Hi Paul,
> Do you mind outlining the m
To add a little, into is generic and has no special treatment if the
collection is a map, but works with maps if the elements are vectors
because map associations of key-value pairs are a subclass of vector. The
other way around:
user=> (for [elem {:foo :bar}] elem)
([:foo :bar]) ; extracts :foo
This came up a while back and it appeared that the metadata just reflected
whether the var was created with the ^:dynamic annotation. But the meta
attribute is an output, so to speak; the info flows from the var
declaration to the meta but not the reverse. Maybe it'll remain like that
as there'
I had the same problem with an old box I had around the house. Put Fedora
20 on it with a recent open jdk, but had just 1GB of memory total. I
attributed the error to the lower memory since I never have that issue at
work or other machines with at least 4GB. If you have more than 2GB,
experimen
For efficient appends at the end you need a vector. Using the sequence
library can be tricky while you're putting together your data structures
because it's likely that you'll not done yet with type-specific functions.
You'll need to re-create your vector after using map/filter/etc to be able
t
The implementation of seq-zip uses seq? as its branching predicate. As a
result the zipper goes down on () thinking it can have children:
user=> (seq? ())
true
user=> (seq? {})
false
user=> (seq? #{})
false
user=> (seq? [])
false
On Sunday, December 29, 2013 10:14:23 AM UTC-8, Lee wrote:
>
>
> I
Didn't think of that. I can just rewrite those simple select calls with
parameterized raw SQL, which is our preferred way of using the API.
On Friday, November 22, 2013 2:09:19 PM UTC-8, Sean Corfield wrote:
>
> On Fri, Nov 22, 2013 at 1:04 PM, Armando Blancas
> >
> wrote
We use select several times in one module; it wouldn't be hard to just copy
and paste the function somewhere. Now, you could drop DSL and call it
optional utility functions not to be used when deemed unhelpful, or
whatever. Given your goals stated goals that code isn't bad at all.
On Thursday,
Good work. Thanks for putting this out.
On Monday, October 28, 2013 6:03:54 AM UTC-7, Michael Drogalis wrote:
>
> Hi everyone,
>
> I'm happy to announce the Rush Hour platform - highly realistic traffic
> simulations
> done with a careful, exemplar architecture all in Clojure.
>
> GitHub platform
With memoize there are additional calls (the new function and apply) per
recursion, so I guess that will produce the stack overflow to happen
sooner. You can use memoization once you remove the stack issue with
iteration:
(defn gauss-iter [n]
(letfn [(f [n acc]
(if (< n 1)
>
> I also suspected the closure over the matrix argument as being the
> root cause but was puzzled when using doseq instead made the problem
> go away...
>
>
Right, it doesn't seem to be a hold in the closure, unless the compiler
could tell when to release it, which is the case when the code
>
> Can anyone explain to me what's happening here? Something about creating a
> anonymous function?
>
The problem is not creating the anonymous function but that it closes over
the matrix argument. The closure passed on to blah will keep a reference to
matrix until blah returns. This won't ha
>
> I just think the default behaviour should be super-friendly and not spit
> out warnings.
>
If other libs also redefine any of those operators or names, now or in
later versions, I'd be glad to know. With last-one-in-wins some will lose.
Maybe this will help:
mvn clojure:repl 2> /dev/null
>
> I assume that making a makro out of *define-all-properties* is not the way
> to go, because it depends on the reading of a file, which should not yet
> be
> done at compile time (this may be a false assumption;...).
>
> Seems to me this is the key to how you'd construct your program. The cs
With UTF-8 characters are encoded in a variable number of bytes according
to various ranges, as you can see here in section "Description":
http://en.wikipedia.org/wiki/UTF-8
Since you're sending your bytes as chars but read back as bytes, your last
two bytes create chars that later produce two
>
> That's what I was referring to. Was there something specific about it
> that you wanted to call out? :)
>
Nope; just wanted to bring it up.
--
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@google
>
> I'll point out as well that though I thought Yegge's criticisms of
> Clojure were a bit polemical (I guess that's his style), the single
> pass compiler issue was one of his biggest gripes, and I do think it
> still rings true. I feel like I have to babysit clojure in this
> regard, when I
[Mac OS X 10.8.4]
I followed this same procedure as Sean and it worked for me last night.
On Thursday, August 8, 2013 9:16:06 PM UTC-7, Sean Corfield wrote:
>
> It failed for me on Mac OS X 10.8.4 - this has also been a problem on
> Windows for me (which doesn't have curl / wget anyway). Can we p
The keys docstring says it returns a sequence, and that's all you get:
it'll do first and next, nothing special about it. The contains? docstring
says it won't do a linear search, so that rules out the result of keys.
(KeySeq just wraps a seq of entries to return the key field.)
What's confusin
Adding to that... have a look at the implemented methods in core_print.clj.
The print-method will get called on print and println with your instance as
the first argument. In this example prints a pair type; since elements can
be anything it just calls print on each.
(deftype Pair [fst snd])
(d
The constructor should be available, like in this contrived sample:
Clojure 1.5.1
user=> (deftype Foo [a] Object (toString [this] (Foo. 1)))
user.Foo
What error are you getting?
On Wednesday, July 31, 2013 5:51:36 PM UTC-7, JvJ wrote:
>
> I tried to define this record, but the Vec2. constructor
morph's incomplete because it extends Functor only for collections and
function composition; I'll add String and boxed types, but for now Long's
extension must be supplied:
(use 'blancas.morph.core)
(extend-type java.lang.Long Functor (fun [this f] (f this)))
With this, it's like alto.generic bu
>
> There is no one who understands `(if (seq thing)` who wouldn't understand
> `(if (not (empty? thing))` or, better, `(if (not-empty? thing)`. The
> converse is not true. That suggests that the latter should be the idiom
No, it doesn't. That simply illustrates that idioms must be learned, as
Zack, you've probably come across this profile on Jeff Hammerbacher, but
just in case.
"The best minds of my generation are thinking about how to make people
click ads," he says. "That sucks."
http://www.businessweek.com/printer/articles/55578-this-tech-bubble-is-different
On Monday, May 13, 2
On Friday, May 3, 2013 1:15:24 PM UTC-7, Robert Pitts wrote:
>
> Armando was a good citizen and sent along a plain-text version as well –
> https://groups.google.com/group/clojure/msg/6aae8287bc55d436?dmode=source&output=gplain&noredirect
That must have been Google Groups doing the right thing..
Having failed many attempts, I asked Feng Shen and he kindly told me how:
copy some formatted text off a browser and simply paste it on this editor
box. So I made a gist and instead of putting this link
https://gist.github.com/blancas/5507033 I just pasted the text.
On Friday, May 3, 2013 11:32
This isn't idiomatic but can be useful for modeling mutable computations in
pure functions:
(use '[blancas.morph core monads])
(def cards [{:balance 30} {:balance 25}])
(def due 100)
(run-state (mapm #(monad [due get-state
app (state (min due (:balance %)))
re
> performant showcase for Kern over time. I haven't found any bugs in Kern so
> congratulations on that one.
>
> On Tuesday, April 30, 2013 1:42:06 AM UTC+8, Armando Blancas wrote:
>>
>> Nice work, Gavin. Grojure is a good example why Clojure is an excellent
>&
Nice work, Gavin. Grojure is a good example why Clojure is an excellent
UNCOL for the JVM, so some of us will depend less on the ASM lib. Your
parser illustrates how to use grammar actions for writing a very compact
one-pass translator; pretty cool.
On Sunday, April 28, 2013 9:41:00 PM UTC-7, G
In this release the lib gets rid of reflective calls by adding type hints.
https://github.com/blancas/morph
I don't have any benchmarks, but in Ben's tree-numbering Morph's timing
goes from ~13,700 msecs down to ~350.
https://github.com/bwo/monads/wiki/Tree-numbering-benchmark
Morph tries hard
On Tuesday, April 16, 2013 4:06:51 AM UTC-7, Luca Antiga wrote:
>
> Great, I just updated clj-toml to 0.7.0 and all tests pass.
> Thanks Armando
>
Very cool, Luca. I'll be looking for other ways to boost performance while
keeping the purely functional design.
--
--
You received this message be
You're very welcome. Glad to know the lib is useful.
On Monday, April 15, 2013 10:15:30 AM UTC-7, Omer Iqbal wrote:
>
> Thanks Armando! I've been using kern for a number of projects and I'm
> really grateful for the awesome documentation :)
>
>
>
> On Tu
This is a much needed clean up and perf boost release.
https://github.com/blancas/kern
Function (parse-file) won't choke with big files, while new parsers
(parse-data) and (parse-data-file) work much faster by relaxing their
house-keeping for input that's expected to be alright (e.g., serializ
Last week I released a project with a monadic translator that needed to:
- work on sequences of expressions, arbitrarily nested
- generate Clojure code or stop and report the first error
- maintain a symbol table with easy access but not global state
The relevant code is here:
https://github.com/b
The goal of this project is to help you write programs that users can
change and extend. Besides its practical advantages, there's something
really powerful about modifying a deployed program, especially when it's
done interactively.
As to what language users should write in, I've come to beli
Define rethrow as a function; Alf's probably right. Also, change to:
~message.
user=> (defn rethrow [ex-class] `(catch ~ex-class x# (throw x#)))
#'user/rethrow
user=>
user=> (defmacro handle-ex [message & body]
`(try ~@body ~(rethrow IllegalArgumentException)
(catch Exception x# (throw
is with the google ajax api, if that's
> helpful. No API key needed.
> https://github.com/flatland/lazybot/blob/develop/src/lazybot/plugins/google.clj
>
> On Friday, March 22, 2013 10:54:37 AM UTC-7, Armando Blancas wrote:
>>
>> Rich, you may want to check out clojure
Rich, you may want to check out clojure-http-client.
https://github.com/technomancy/clojure-http-client
(require '[clj-http.client :as client])
(spit "result.html" (client/get "http://www.google.com/search?q=clojure";))
On Friday, March 22, 2013 12:09:07 AM UTC-7, Rich Morin wrote:
>
> I've been
Release 0.2.0 of the Morph library comes with a couple of fixes and some
enhancements:
https://github.com/blancas/morph
Safe error-handling with non-global, shared data is now even easier:
https://github.com/blancas/morph/wiki/Simpler-State-with-Error-Handling
Documentation and samples: https:/
I've pushed to Clojars the release 0.6.1 of Kern, a text-parsing library,
with some fixes and enhancements.
https://github.com/blancas/kern
There's updated Codox API docs and a change log.
Documentation and samples: https://github.com/blancas/kern/wiki
For feedback, bug reports,
etc.: https://
ps://github.com/lantiga/clj-toml> is a
> TOML<https://github.com/mojombo/toml>parser for Clojure. It was written on
> top of the
> Kern <https://github.com/blancas/kern> library by Armando Blancas (kudos).
>
> TOML is a minimalistic, human-readable format that m
Here's an example of using a state monad for updating a position. The state
goes into a simple map and there's a function to add coordinates.
(def init {:position [100 100] :st :st0 :keys-held #{:left}})
(defn v+ [v1 v2] (vec (map + v1 v2)))
The state monad can compute a value and maintain some
There's nothing wrong with pr-str. Debug output should go to stderr.
user=> (def k (pr-str (for [x (range 5)]
(do (.println *err* x)
(.println *err* "nothing")
x
0
nothing
1
nothing
> Parser:
> https://github.com/ragnard/hamelito/blob/master/src/hamelito/parsing.clj
>
> Best regards,
>
> Ragnar
>
>
> On Monday, 21 January 2013 18:27:07 UTC, Armando Blancas wrote:
>>
>> Kern is a text-parsing library based on Parsec, the Haskell monad
sday, February 7, 2013 1:06:39 AM UTC+1, Armando Blancas wrote:
>>
>> Morph is a new implementation of monads based on protocols. It's intended
>> to provide the common patterns of error-handling, short-circuit sequencing,
>> and modeling of stateful computations in pure
hing like foldM, because I
> couldn't figure out how to call return on the seed value when the list
> is empty. ISTR (when you announced your parsing library) that there
> isn't a way to do that kind of thing at all?
> - I'm curious about the Monoid protocol---I
Morph is a new implementation of monads based on protocols. It's intended
to provide the common patterns of error-handling, short-circuit sequencing,
and modeling of stateful computations in pure functions. I've tried to make
this library idiomatic while keeping it close to its Haskell roots.
T
>
> What do you think?
I think, go right ahead and give it to them. Worst that could happen is you
gain insights into language design. I'd be interested in your users'
comments; what worked, what didn't. If you really believe in that idea,
don't give it up before you learn something from it
>
> I see---also fair enough. How do you implement things like return (for
> monads) or mempty (for monoids) with protocols? I assume it's the
> perceived desirability of not having to pass in a parameter
> corresponding to some concrete monad/monoid/whatever to be able to get
> the right func
>
> Any plans to decouple the parsing combinators (more importantly the
> error messages/position tracking) from parsing text? "A seqable
> object" as in the second argument to parse is not necessarily
> something for which lines and columns make sense.
>
>
Not yet. I've decided that first t
ve you looked also at Parsatron (another parsec-derived library)?
>
> https://github.com/youngnh/parsatron
>
> I wrote some combinators for parsatron for dealing with clojure
> datastructures:
>
> https://github.com/bwo/macroparser
>
> On Mon, Jan 21, 2013 at 10:27 AM, Ar
Kern is a text-parsing library based on Parsec, the Haskell monadic
combinators library. It is useful for parsing all kinds of text: data,
program input, configuration files, DSLs, or a full-blown programming
language.
My main goal is, like the Self folks, the power of simplicity. In the ideal
(defprotocol symbolicExpr
(evalx [this args]))
(deftype x [a])
(let [y #(+ 1 2)]
(extend-type x
symbolicExpr (evalx [this args] (y
(evalx (x. 0) 0)
On Wednesday, December 26, 2012 6:16:13 PM UTC-8, Sunil Nandihalli wrote:
>
> Hi Everybody,
> It looks like the following way of definit
>
> I'm not going out of my way to be pseudonymous, it just seems to be a
> feature of the group.
>
I thought, Mark asking how to run a script? An usurper!
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to c
Why are you using puzzler's account and what did you did to him?!
On Saturday, December 15, 2012 7:28:56 PM UTC-8, puzzler wrote:
>
> Thanks. I think that used to be on the Getting Started page, but now the
> page is just links to info about how to get up and running with IDEs, so I
> had troub
>
> (comp (partial apply str) (partial filter #{\a}))
>
Or, (comp join (partial filter #{\a}))
--
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 moder
You can do:
user=> `[~'foo 1]
[foo 1]
On Sunday, December 2, 2012 10:24:29 AM UTC-8, Conrad wrote:
>
> I remember seeing it somewhere recently but I can't find it now...
>
> As you probably know, if you quasiquote in clojure it automatically adds
> namespaces:
>
> > `[foo ~1]
> [mylibrary.core/f
I found these articles very valuable in understanding the original
motivation for monads and their use for practical development.
Imperative Functional Programming
Simon Peyton Jones, Philip Wadler
http://research.microsoft.com/pubs/67066/imperative.ps.z
Monadic Parser Combinators
Graham Hutton
>
> Does anyone use Midje currently?
>
I do; and expect to use more of its features.
--
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 - plea
Finally came around to install a recent Ruby build and ran a little test
script just to get a feel for the startup time. Looks good, though the
faster the merrier.
~ $ ruby --version
ruby 1.9.3p286 (2012-10-12 revision 37165) [x86_64-darwin10.8.0]
~/dev/tools/rouge $ cat test.clj
(defn square
ble with 1.8, but it started
> to turn into something of a dog's breakfast.
>
> Sorry for the hassle.
>
> — Arlen
>
> On Saturday, October 13, 2012 8:52:05 AM UTC+11, Armando Blancas wrote:
>>
>> Nice work.
>>
>> I'm getting this error:
>>
Nice work.
I'm getting this error:
~/dev/tools/rouge $ bin/rouge
./bin/../lib/rouge.rb:6: undefined method `define_singleton_method' for
Rouge:Module (NoMethodError)
~/dev/tools/rouge $ ruby --version
In case any of this is relevant:
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin10.0]
You must be referring to the detection of contract violations. It shouldn't
be an issue; on the contrary, that seems useful info. And those who depend
on legacy or third-party code can always stick to the old behavior.
Area: API: Utilities
Synopsis: Updated sort behavior for Arrays and Collectio
I'd say on the basis of convenience, since we get to serialize and
deserialize for free (o with customizations), and for most cases the author
on both ends is likely to be the same person or team. For other languages,
producers don't work any harder either way, and consumers are free to
interpr
>
> This is a story from the trenches of your every day developer:
It's a story with a ridiculous sense of entitlement. Be sure to complete
your Scala lessons.
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to c
That statement of mine was confusing because if you type each you'll get
different things.
The equivalence of (define (foo) bar) === (define foo (lambda() bar)) won't
hold there: you'd be defining procedure A in the second case.
If the first argument is in parens, (define) will be a function def
Let's take it case by case.
(define A 1) is like (def A 1) in Clojure.
(define (A) 1) is like (defn A [] 1)
(define (A x y) (* x y)) as you'll expect, (defn A [x y] (* x y))
(define (A) 1) is the same as (define A (lambda () 1)) ;; defines
procedure "A"
(define ((A)) 1) is the same as (def
That's the definition of a procedure named "(A)". Scheme48, for one, won't
take that name, but Chicken will, even with parameters:
#;1> (define ((A) n) n)
#;2> ((A) 5)
5
And neither will, btw, bind a value to such a symbol in a (let). Clojure
symbols can't start with an open paren, so that's just
Nelson, that explained the case quite nicely. I appreciate it.
On Tuesday, August 28, 2012 1:01:32 PM UTC-7, Nelson Morris wrote:
>
> On Tue, Aug 28, 2012 at 1:08 PM, Armando Blancas
> >
> wrote:
> > I'm playing around with a parser combinator library from the pa
I'm playing around with a parser combinator library from the paper Monadic
Parser Combinators by Hutton and Meijer [1] and came up with this:
https://gist.github.com/3501273
That's just enough to show the error I'm getting when (expr) calls (factor):
Clojure 1.4.0
user=> (load-file "expr.clj")
pL first tries anbn: many parses zero \a's; then times has to parse zero
\b's; and the parser returns the concatenation of two empty lists. An empty
list isn't a failure as far as the parser either is concerned, so it won't
try xdny in that case.
On Wednesday, August 22, 2012 5:38:56 PM UTC-7,
technically 64-bit, is mostly running 32-bit software,
> including Java.
>
> On Tue, Jun 26, 2012 at 5:56 PM, Armando Blancas
> wrote:
> > Tried it on my old XP laptop and got the same result with 32 bits.
> >
> >
> > On Tuesday, June 26, 2012 2:46:07 P
Tried it on my old XP laptop and got the same result with 32 bits.
On Tuesday, June 26, 2012 2:46:07 PM UTC-7, tbc++ wrote:
>
> > On Tue, Jun 26, 2012 at 11:25 AM, Armando Blancas
> wrote:
> >> I don't get the exception on 1.4.0:
>
>
> Is this a 64bit vs 32
I don't get the exception on 1.4.0:
~ $ clj
Clojure 1.4.0
user=> 1e309
Infinity
user=>
On Monday, June 25, 2012 11:09:14 PM UTC-7, Sean Corfield wrote:
>
> On Mon, Jun 25, 2012 at 10:30 PM, dennis zhuang
> wrote:
> > Added a postfix "M" to make the number as BigDecimal or "N" as a
> BigInte
That's the only way I've seen it done.
Cool source box; how did you get it?
On Friday, June 1, 2012 11:42:19 AM UTC-7, Jon Rose wrote:
>
> sorry, typo. My bluetooth keyboard is geeking out. I meant, is it possible
> to do this with out using the Jave Reflection classes through interop.
>
> On
>
> I saw that you wrote it in the style of a repl interaction, which
> could have been pasted or could have been synthesized by hand.
>
>
Aw! Dude, I'd never bullshit you like that. Honest. But I was sloppy and
rude; sorry.
--
You received this message because you are subscribed to the Goo
$
On Wednesday, May 23, 2012 10:53:15 PM UTC-7, Cedric Greevey wrote:
>
> On Wed, May 23, 2012 at 10:21 PM, Armando Blancas
> wrote:
> > Is this any better?
> >
> > user=> (defn f [^java.awt.image.BufferedImage bi x]
> > (.setData (.getRaster bi) 0 0 0
Is this any better?
user=> (defn f [^java.awt.image.BufferedImage bi x]
(.setData (.getRaster bi) 0 0 0 ^double x))
#'user/f
On Wednesday, May 23, 2012 4:58:27 PM UTC-7, Cedric Greevey wrote:
>
> (defn f [^java.awt.image.BufferedImage bi x]
> (.setSample (.getRaster bi) 0 0 0 (double x)))
>
> Why is there this difference in behavior between interactive and
> compiled code?
>
In case you'd wonder why it works at the repl since what we type there are
strings, too. The repl gets them through a call to (read) which parses
strings into data structures that are Clojure code.
This st
>
> -- it's also just plain wrong. Those are not local functions: def always
> operates at top-level.
>
>
Big deal. You see what I mean? Pedantry is contagious.
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to cl
>
> "There's nothing wrong" is a pretty strong statement.
LOL. Perhaps as strong as "it is definitely the wrong way to do things"?
Jeez.
Pedantry is the wrong way to welcome newbies to this board.
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
The redefinition of functions somehow is spooking the compiler. But if
you're at the REPL you should be seeing these warnings (are you doing AOT
compile?)
WARNING: double already refers to: #'clojure.core/double in namespace:
user, being replaced by: #'user/double
WARNING: * already refers to: #
>
>
> I think the problem might also be that the failing tests are Java tests
> calling Java code, which is trying to call Clojure.
>
Usually I'd have Clojure code consuming Java code; then Java and/or Clojure
tests consuming compiled code, including classes from gen-class. But given
the order
>
>
> test-clojure
> test
>
> test-with-junit
>
>
>
>
>
> On Wednesday, May 16, 2012 10:39:49 AM UTC-4, Armand
This repo and plugin tags should do it.
clojure-releases
http://build.clojure.org/releases
...
com.theoryinpractise
clojure-maven-plugin
1.3.4
compile-clojure
compile
c
>
> Much of the more recent code in Clojure is very cross platform. Stuff
> like reducers can simply be copied over, fixed up a bit, and it runs.
>
> I wonder how is the fork/join part carrier over for reducers.
--
You received this message because you are subscribed to the Google
Groups "Cl
You may want to check out the info for contributors and JIRA:
http://www.clojure.org/contributing
http://dev.clojure.org/jira/browse/CLJ
On Tuesday, May 8, 2012 2:01:57 AM UTC-7, jaju wrote:
>
> Sent the following to clojure-dev - but then it turned out to be a closed
> group for posting.
> Posti
>
> Can someone please verify that it works on windows as well???
>
>
It works on XP.
--
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 - pl
themselves be operations, it calls itself recursively on the first and
third elements of the list, which are the operands.
On Tuesday, May 1, 2012 8:19:04 PM UTC-7, Asranz wrote:
>
> oh please if u can teach me!
>
>
> On 1 mayo, 21:29, Armando Blancas wrote:
> > > i just need to
>
> i just need to evaluate in infix a string "(1 +2 (4 * 5)"
>
>
Check out The Little Schemer. It'll teach you the techniques for doing this.
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups
1 - 100 of 276 matches
Mail list logo