Re: Map Keys are functions, why not vector elements?

2017-11-18 Thread Alex Baranosky
Practically speaking, Java numbers cannot be extended with the IFn interface to make this possible. On Mon, Nov 13, 2017 at 9:15 AM, Alex Miller wrote: > Regarding the title, this is incorrect. Map keys are not functions; > keywords are functions that take an associative

Re: calling a clojure function within a quote/(')

2017-11-18 Thread Alex Baranosky
Also: (cond-> query true (conj ['? :data/number '?number]) true (conj [(list '> '?number (foo 2))])) ;; => [:find ?e :in $ :where w [? :data/number ?number] [(> ?number 3)]] On Fri, Nov 17, 2017 at 8:44 PM, Matching Socks wrote: > In the docs: "syntax

Re: Grateful Appreciation

2017-11-03 Thread Alex Baranosky
Clojure is amazing, and at this point I couldn't imagine life without Clojure. (I guess I'd have to become a Common Lisp guy if Clojure fell off the face of the Earth, hehe) Clojure and Rich's talks have over the years totally changed my thinking on creating software. Thanks for all the work

Re: Predicates for atom/ref/agent

2017-08-05 Thread Alex Baranosky
Do we want a predicate for every interface? I, for one, DEFINITELY do not. Just make some utils if you need to check for (instance? IAtom x) a lot in your application. All such fns do is bloat clojure.core. On Sun, Jul 16, 2017 at 5:24 PM, Alex Miller wrote: > The decisions

Re: How is this code to create a stateful lazy sequence?

2017-08-05 Thread Alex Baranosky
My version of distinct-by just took clojure.core/distinct and added a keyfn (and optional max-n). It's hard to claim this code is readable. I took this approach mostly because I knew it would be unlikely to be buggy, since it was a simple change or two from clojure.core/distinct (defn distinct-by

ThreatGRID/Cisco Looking for Clojure Developers (again)

2017-02-27 Thread Alex Baranosky
[ Full disclosure: I am the technical lead on this product and the hiring manager in this case. Feel free to contact me with questions, and to pass this gist around: https://gist.github.com/AlexBaranosky/7cb700d032d26946e9587a599f5aa80c ] Clojure Developer for Malware Analysis Product The

ThreatGRID/Cisco Looking for Clojure Developers

2016-09-27 Thread Alex Baranosky
[ Full disclosure: I am the technical lead on this product and the hiring manager in this case. Feel free to contact me with questions, and to pass this around. ] Clojure Developer for Malware Analysis Product The ThreatGRID team at Cisco is looking for experienced clojure developers to work

Re: Help with idiomatic clojure.

2015-11-12 Thread Alex Baranosky
The main thing to note is to not use atoms for things like this. Colin's cond-> approach is a good idea. On Thu, Nov 12, 2015 at 4:08 PM, Colin Yates wrote: > One other minor point (if (seq some-sequence) true false) is preferred by > some (I won’t say more idiomatic)

ThreatGRID/Cisco Looking for Clojure Developers

2015-10-22 Thread Alex Baranosky
I'm a senior Clojure developer on the Advanced Threat Integration Team in Cisco's Security Business Group. We have a fully remote team, with people spread all across the US. The Advanced Threat Integration Team in Cisco's Security Business Group is building a global scale, multi-product security

Re: [ANN] Dunaj project, an alternative core API for Clojure

2015-03-05 Thread Alex Baranosky
Yeah, I'm excited to see some of the 10 write-ups. What's the ETA on the first one? On Thu, Mar 5, 2015 at 6:02 PM, Alex Miller a...@puredanger.com wrote: I'm happy to see experiments if we can learn something useful. Can't really judge more till the posts are out. Seems perfectly possible

Re: [ANN] Dunaj project, an alternative core API for Clojure

2015-03-05 Thread Alex Baranosky
Where is this example project? On Thu, Mar 5, 2015 at 7:40 PM, Ivan L ivan.laza...@gmail.com wrote: Just a quick glance at the example project shows integrated type definitions. I'm curious for sure. -- You received this message because you are subscribed to the Google Groups Clojure

[ANN] print.foo 1.0.0 - library of print debugging macros

2014-11-20 Thread Alex Baranosky
Hi guys, I've further refined my print.foo project, and thought I'd share the latest version here with you all. I get a ton of mileage out of the library personally and professionally using it everyday to enhance my repl-driven development. Here some highlights from the README (you can read a

Re: style question on tightly coupled functions

2014-11-20 Thread Alex Baranosky
I'd structure my app like this. Say there's one pages ns with code for different webpages pages/index is a pretty short function pages/dashboard is a more elaborate function and has two subcomponents: -analytics, and -user-info pages.analytics/-analytics pages.user-info/-user-info On Thu, Nov

Re: style question on tightly coupled functions

2014-11-20 Thread Alex Baranosky
wrote: I never heard of letfn before. that looks like a clear way to do what i need. just found this stackoverflow thread which is relevant: http://stackoverflow.com/questions/23255798/clojure-style-defn-vs-letfn On Thu, Nov 20, 2014 at 3:34 PM, Alex Baranosky alexander.barano...@gmail.com

Re: style question on tightly coupled functions

2014-11-20 Thread Alex Baranosky
to reference each other arbitrarily. In your example, f2 can call f1 but not vice versa. On Thu, Nov 20, 2014 at 11:08 AM, Alex Baranosky alexander.barano...@gmail.com wrote: letfn has no value imo. It is an unwritten stylistic rule I have to never use it. Why introduce a new macro syntax

Re: style question on tightly coupled functions

2014-11-20 Thread Alex Baranosky
need it, then no need for adding extra mental weight for code-readers to have to go through to understand your code. On Thu, Nov 20, 2014 at 2:41 PM, James Reeves ja...@booleanknot.com wrote: On 20 November 2014 19:33, Alex Baranosky alexander.barano...@gmail.com wrote: Imo, that makes the let

Re: Modelling in Clojure

2014-10-19 Thread Alex Baranosky
I've maintained 5+ year-old Clojure applications and the Uniform Access Principle was not a concern for me. Bigger concerns for me were the Single-Responsibility Principle, and conversely, the Big Ball of Mud Anti-pattern. But I think these are both concerns on any large, old program in any

Re: Using an atom for a caching map

2014-09-01 Thread Alex Baranosky
I believe you can replace: (when-not (contains? @cache k) (swap! cache assoc k (calc-value* k with: (swap! cache (fn [cache'] (if (contains? cache' k) cache' (assoc cache' k (calc-value* k) Note: I haven't run this code On Mon, Sep 1,

Re: Why is this an Exception ?

2014-08-31 Thread Alex Baranosky
There is no pot of gold at the end of the no-namespacing rainbow. Only sadness. :'( On Sat, Aug 30, 2014 at 9:29 AM, Andy Fingerhut andy.finger...@gmail.com wrote: How would another Lisp avoid giving you an error when referring to a symbol that has no value? If you just want your entire

Re: How can I add meta to an object that doesn't implement IObj?

2014-08-30 Thread Alex Baranosky
The only way to do this is to wrap the object in something that implements IObj. But at that point you might as well wrap it in a regular hashmap and just wrap it in real data. On Sat, Aug 30, 2014 at 1:54 AM, Atamert Ölçgen mu...@muhuk.com wrote: Hi François, Thanks for the links. I can't

Re: positional + keyword args

2014-07-20 Thread Alex Baranosky
You can get keyword args like this: (defn f [ {:keys [a b c d] :or {a 1 b 2 c 3 d 4}}] [a b c d]) But you cannot also get the ability to call: (f 5 6 7 8) On Sun, Jul 20, 2014 at 4:13 PM, Sam Raker sam.ra...@gmail.com wrote: I'm trying to write a function that takes (up to) 4

Re: unexpected behavior of clojure.core/empty

2014-07-19 Thread Alex Baranosky
What does `empty` do for non-collection types?: (empty 1) = nil (empty 123) = nil (empty :abc) = nil (empty (clojure.lang.MapEntry. a 1)) So it is actually very consistent. On Fri, Jul 18, 2014 at 6:06 PM, Brian Craft craft.br...@gmail.com wrote: hm, looks even more broken in the context of

Re: unexpected behavior of clojure.core/empty

2014-07-19 Thread Alex Baranosky
You cannot have an empty MapEntry though, because map entries always have just one size, a key and a value. I can definitely see how it can be confusing though. On Sat, Jul 19, 2014 at 4:42 PM, Brandon Bloom brandon.d.bl...@gmail.com wrote: I've been bitten by all three of these things in the

Re: Best tools for profiling Clojure programs?

2014-07-03 Thread Alex Baranosky
YourKit works well. I've heard good things about JVisualVM, but don't have experience using it. On Thu, Jul 3, 2014 at 12:31 AM, Jakub Holy jakub.h...@iterate.no wrote: No, it is not. At least it is available on Mac too. On Thursday, July 3, 2014 9:25:44 AM UTC+2, ru wrote: Thank you

Re: Best tools for profiling Clojure programs?

2014-07-03 Thread Alex Baranosky
Woops, posting too late... I typed JVisualVM, but meant to say Java Mission Control. On Thu, Jul 3, 2014 at 1:10 AM, Alex Baranosky alexander.barano...@gmail.com wrote: YourKit works well. I've heard good things about JVisualVM, but don't have experience using it. On Thu, Jul 3, 2014

Re: Kwargs vs explicit parameter map for APIs?

2014-04-30 Thread Alex Baranosky
last example with the optional map arg than have my-function and my-function-from-map everywhere. On 30 April 2014 17:55, James Reeves ja...@booleanknot.com wrote: On 30 April 2014 06:07, Alex Baranosky alexander.barano...@gmail.comwrote: I especially dislike that my non-kwarg fns no-longer

Re: Kwargs vs explicit parameter map for APIs?

2014-04-29 Thread Alex Baranosky
I'm extremely internally torn regarding kwargs. I use them a lot; I know they hinder composability; but every time I go back to straight maps for these kinds of things I really don't like all the extra noise characters and go back to kwargs. I feel like I really should be using regular maps for

Re: How did you learn Clojure?

2014-03-21 Thread Alex Baranosky
Just take it one step at a time. Learning Clojure likely involves more paradigm changes than learning languages in the past, which is why learning those languages seemed easier. I don't think Clojure is inherently harder than regular OO... in fact I think it is a simpler approach, but one that

Re: Clojure 1.6.0-RC1 - LAST CHANCE, PLEASE TEST

2014-03-18 Thread Alex Baranosky
Tests look good in some of Staples Innovation Labs' projects. Only failures are ones that assume ordering, which is just an easily correct failure in the test cases. On Tue, Mar 18, 2014 at 2:06 PM, David Nolen dnolen.li...@gmail.com wrote: Yep, we'll get rid of it once 1.6.0 actually ships.

Re: Adatx - Test driven development... literally.

2014-03-12 Thread Alex Baranosky
There goes my job... On Wed, Mar 12, 2014 at 8:00 PM, Timothy Washington twash...@gmail.comwrote: This looks interesting. I was hammocking a solution that could use that. But on Infoq, I recently watchedhttp://www.infoq.com/interviews/byrd-relational-programming-minikanrenWilliam Byrd,

Re: [ANN] Clojure 1.6.0-beta1

2014-02-15 Thread Alex Baranosky
Great job on the new release guys :) My one bit of feedback is that if-some and when-some behave like a let, but don't include let in the name. My guess is that this was chosen because if-some-let and when-some-let are starting to get awkwardly long. On Sat, Feb 15, 2014 at 2:32 PM, Andy

Re: cond- variant?

2014-02-12 Thread Alex Baranosky
I wrote pred-cond for Midje way back, which does what you want. https://github.com/marick/Midje/blob/master/src/midje/clojure/core.clj#L176 Example use: https://github.com/marick/Midje/blob/master/src/midje/parsing/1_to_explicit_form/facts.clj#L100 Like normal cond pred-cond will short-circuit

Re: [ANN] clj-refactor.el 0.10.0

2014-02-01 Thread Alex Baranosky
adrians, Personally, for my part in clj-refactor.el, I don't have any interest in porting it to Light Table. The project depends pretty heavily on other Emacs packages such as paredit, multiple-cursors, and yas-snippets, so it's not trivial to port. On Sat, Feb 1, 2014 at 11:22 AM, adrians

Re: idiomatic extension to - / -- ?

2014-01-18 Thread Alex Baranosky
What I think is the interesting part of the question is the inclusion of the word idiomatic. I'm not sure swiss-arrows is idiomatic... that said I don't know what would be considered idiomatic here.a One solution I know of for examples like this is: (- 2 (+ 2) (#(* 1 % 3))) I'm not

Re: idiomatic extension to - / -- ?

2014-01-18 Thread Alex Baranosky
, personally On Sat, Jan 18, 2014 at 12:07 AM, Alex Baranosky alexander.barano...@gmail.com wrote: What I think is the interesting part of the question is the inclusion of the word idiomatic. I'm not sure swiss-arrows is idiomatic... that said I don't know what would be considered idiomatic here.a

Re: How can I improve this?

2014-01-11 Thread Alex Baranosky
I've been finding uses for Brandon Bloom's transduce mini-library left and right lately. There is a class of problems where you want to track some state as you process a seq, and transduce.lazy/map-state enables you to do that (https://github.com/brandonbloom/transduce). Here's my solution using

Re: [ANN] clj-refactor.el - A few Clojure refactorings for Emacs.

2013-12-30 Thread Alex Baranosky
Hi Magnar, I've been using this library for maybe a month. The refactorings I use by far the most are renaming files, and threading/unthreading. Thanks for your work on this. On Mon, Dec 30, 2013 at 7:52 AM, Magnar Sveen magn...@gmail.com wrote: clj-refactor.el

Re: Akka-like framework in Clojure ?

2013-12-27 Thread Alex Baranosky
You can just use Akka directly w/ Clojure's excellent Java interop. On Fri, Dec 27, 2013 at 3:48 PM, Paulo Suzart paulosuz...@gmail.com wrote: Hi, Am I wrong or Galaxy project (behind pulsar) is quite inactive? Does anybody know how promising are they? Cheers On 27 December 2013 17:32,

Re: In your opinion, what's the best, and what's the worst aspects of using Clojure?

2013-12-27 Thread Alex Baranosky
I always hear people say that the errors are bad, but I just don't see it. The stacktraces say exactly what went wrong and at what line of the source. To me that's all I can hope for. I think there may have been some more obtuse errors that came up in older versions of Clojure that have since

Re: In your opinion, what's the best, and what's the worst aspects of using Clojure?

2013-12-27 Thread Alex Baranosky
Lee, Sure, it'd be nice to have a functioning debugger, I'll give you that. On Fri, Dec 27, 2013 at 8:03 PM, Lee Spector lspec...@hampshire.edu wrote: On Dec 27, 2013, at 10:53 PM, Alex Baranosky wrote: I always hear people say that the errors are bad, but I just don't see

Re: Is Clojure right for me?

2013-12-26 Thread Alex Baranosky
I'm still partial to Ring. On Thu, Dec 26, 2013 at 2:16 AM, James Reeves ja...@booleanknot.com wrote: What sort of web development were you planning to do? - James On 25 December 2013 21:06, Massimiliano Tomassoli kiuhn...@gmail.comwrote: Hi, I'm not sure if Clojure is the right

Re: Is Clojure right for me?

2013-12-26 Thread Alex Baranosky
http://preview.getprismatic.com/news/home On Thu, Dec 26, 2013 at 2:42 PM, john walker john.lou.wal...@gmail.comwrote: clojurekoans.com uses Joodo. https://github.com/slagyr/joodo What are some other cool sites powered by Clojure? On Wednesday, December 25, 2013 4:06:20 PM UTC-5,

Re: Looking to migrate thousands of Clojure applications from 1.2 to 1.5.

2013-12-24 Thread Alex Baranosky
Hi Solo, I did a big migration from 1.2 to 1.5 at work this past February. Here are a few of the things that I gleaned from that experience, i addition to the great advice mentioned already in this thread: * with 1000's of these applications, I'd take the approach of only migrating to 1.5 when

Re: Who is doing something worthwhile in Clojure?

2013-12-19 Thread Alex Baranosky
Yep, positive impact is pretty much entirely opinion-based. On Thu, Dec 19, 2013 at 6:15 PM, Sean Corfield seancorfi...@gmail.comwrote: On Thu, Dec 19, 2013 at 5:19 PM, Rich Morin r...@cfcl.com wrote: I have no argument with The Climate Corporation's business model; my problems are with

Re: Who is doing something worthwhile in Clojure?

2013-12-19 Thread Alex Baranosky
Fair enough :) On Thu, Dec 19, 2013 at 10:09 PM, John Wiseman jjwise...@gmail.com wrote: Suggestions of endeavors using clojure for something worthwhile itself seems like an entirely worthwhile discussion if people can resist the temptation to debate what worthwhile means and to disagree

Re: atom and vector .. remove prolbem

2013-12-09 Thread Alex Baranosky
There are ways to achieve what you ask, but normally you wouldn't use nested vectors for data structures you want to operate on associatively. It will be inefficient, and the code will be ugly. Better to use more maps and key them by:key and :id. On Mon, Dec 9, 2013 at 12:46 AM, 박재혁

Re: Am I missing something?

2013-12-03 Thread Alex Baranosky
I dislike all the migration libraries, because they all make migrations super complex for what I usually want to do. Wrote my own based of some code Phil Hagelberg pointed me to months ago: https://github.com/runa-dev/kits/blob/master/src/kits/db_migrator.clj On Tue, Dec 3, 2013 at 9:21 PM,

Re: [ANN] Slamhound 1.5.0 + screencast + Vim plugin

2013-11-30 Thread Alex Baranosky
Hi Guns, Nice to see you carrying the Slamhound torch forward. Good work. On Sat, Nov 30, 2013 at 2:03 AM, r0man roman.sche...@burningswell.comwrote: This is very cool. Thanks! On Saturday, November 30, 2013 5:14:36 AM UTC+1, guns wrote: Hello, I am happy to announce version 1.5.0 of

Re: tails function?

2013-11-30 Thread Alex Baranosky
user (rest (reductions conj [] [1 2 3 4])) ([1] [1 2] [1 2 3] [1 2 3 4]) On Sat, Nov 30, 2013 at 2:54 PM, Sean Corfield seancorfi...@gmail.comwrote: reductions requires a 2-arg function (reductions was my first thought too, but I couldn't come up with anything elegant with it). On Sat, Nov

Re: quick macro review

2013-11-28 Thread Alex Baranosky
This also works, I believe: (defmacro migrate [ migration-syms] (let [migration-vars (for [sym migration-syms] `(var ~sym))] `(migrate* ~@migration-vars))) On Thu, Nov 28, 2013 at 5:22 PM, juan.facorro juan.faco...@gmail.comwrote: Hi Curtis, The *apply*

Re: [Job spam] Write Clojure in your pajamas, for decent money in a pleasant company, remote pairing all the time

2013-11-20 Thread Alex Baranosky
Why all that pesky Ruby? =D On Tue, Nov 19, 2013 at 4:44 PM, Alexey Verkhovsky alexey.verkhov...@gmail.com wrote: On Monday, 18 November 2013 16:45:40 UTC-7, Tony Tam wrote: If I sent you a like to a github profile that looked like yours ( https://github.com/alexeyv?tab=repositories),

Re: 2013 State of Clojure ClojureScript survey results

2013-11-20 Thread Alex Baranosky
The increased # of questions probably also reduces survey conversion ... I ran out of time because it was so long, and had a lot of other things to do, so I didn't submit my entry this year. On Tue, Nov 19, 2013 at 7:09 PM, Sean Corfield seancorfi...@gmail.comwrote: Yes, the path separator is

Re: ANN: Clojure High Performance Programming

2013-11-20 Thread Alex Baranosky
Congratulation on the book Shantanu! On Wed, Nov 20, 2013 at 5:16 PM, Shantanu Kumar kumar.shant...@gmail.comwrote: Now also available on Amazon US: http://www.amazon.com/dp/1782165606/?tag=packtpubli-20 Amazon UK: http://www.amazon.co.uk/dp/1782165606/?tag=packtpubli-21 Shantanu On

Re: What font is used for Clojure on clojure.org?

2013-11-10 Thread Alex Baranosky
Where I'm from the notion of cider in a champagne glass is a little ludicrous. =) But I guess maybe they're thinking of an alcoholic cider, and I'm thinking more of the winter holiday season spiced warm cider in a mug?? On Thu, Nov 7, 2013 at 6:17 AM, Tim Visher tim.vis...@gmail.com wrote:

Re: [ANN] collection-check: validation for data structure variants

2013-10-30 Thread Alex Baranosky
Thanks Zach for this cool testing library, and thanks Reid for simple-check! -- -- 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

Re: get fn and not-found

2013-10-28 Thread Alex Baranosky
Or a shorter variant of the sentinel approach: (let [r (get a-map :b ::unfound)] (if (= r ::unfound) (my-foo) r)) On Sun, Oct 27, 2013 at 2:57 PM, Cedric Greevey cgree...@gmail.com wrote: (get a-map :b my-foo) will result in the function object itself being returned if :b is not

Re: ANN: print-foo - a library of print debugging macros

2013-10-27 Thread Alex Baranosky
/AlexBaranosky/print-foo https://clojars.org/print-foo Best Alex On Thu, Mar 28, 2013 at 12:13 PM, Alex Baranosky alexander.barano...@gmail.com wrote: Jim, No reason I left out loop/recur. I just didn't get around to it. Pull requests accepted. On Thu, Mar 28, 2013 at 12:07 PM, Alex Baranosky

Re: Compulsive over-optimization

2013-10-22 Thread Alex Baranosky
Well said Niels. As far as performance optimization. Imo that's premature until you profile. On Tue, Oct 22, 2013 at 2:42 AM, Niels van Klaveren niels.vanklave...@gmail.com wrote: I can imagine this behavior. Unlike premature performance optimization, readability / terseness are well worth

Re: Compulsive over-optimization

2013-10-20 Thread Alex Baranosky
Kendall, Refactoring is valuable especially when starting out, so that you can learn how to represent patterns well in Clojure, imo. On Sun, Oct 20, 2013 at 10:59 AM, Kendall Shaw ks...@kendallshaw.comwrote: I might have come off as obnoxious. So, sorry about that. Now that I think about it

Re: getting a stack trace

2013-10-18 Thread Alex Baranosky
jstack process-id On Fri, Oct 18, 2013 at 9:44 AM, Brian Craft craft.br...@gmail.com wrote: In trying to understand how threads work I'd like to dump a stack trace at various places. All the stack trace calls take an exception. Is there some simpler way, or should I throw catch an except

Re: is PG's imperative outside-in advice any good?

2013-10-15 Thread Alex Baranosky
I and some of my coworkers do tend to avoid `let` unless in this particular case you especially want to emphasize the name of something unobvious. OFten I'd prefer to pull out a new function over using let, or inline the binding for readability *improvement*. On Tue, Oct 15, 2013 at 8:18 AM,

Re: Reflecting on Arity

2013-10-13 Thread Alex Baranosky
c is the best bet, but still I wouldn't rely on it for anything. On Sun, Oct 13, 2013 at 9:23 PM, Mikera mike.r.anderson...@gmail.comwrote: Currently IFn itself doesn't provide a way for you to do this. Options: a) example the source / docs b) Call the IFn and see which arities throw an

Re: Improving a nested if, or How to use multimethods the right way.

2013-09-05 Thread Alex Baranosky
I'd just use a cond to flatten a nested if. That's usually all you need, imo. On Thu, Sep 5, 2013 at 1:07 PM, Bruno Kim Medeiros Cesar brunokim...@gmail.com wrote: Thanks for your suggestion, didn't know about that! One of the things that made someone say that Clojure looks like a language

Re: Improving a nested if, or How to use multimethods the right way.

2013-09-05 Thread Alex Baranosky
;; Better yet... (if (or (and (multi? graph) (not= 2 (count edge))) (and (looped? graph) (not (distinct? edge graph (let [e (if (directed? edge) (vec edge) (set edge))] (update-in graph [:edges] conj e On Thu, Sep 5, 2013 at 2:22 PM, Alex Baranosky

Re: A macro for writing defn-like macros?

2013-09-03 Thread Alex Baranosky
https://github.com/clojure/tools.macro/blob/master/src/main/clojure/clojure/tools/macro.clj#L275?? On Tue, Sep 3, 2013 at 9:01 AM, Mark markaddle...@gmail.com wrote: I find the vast majority of the time I'm tempted to write a macro (yeah, yeah, I know the first rule of macro club), is to

Re: [ANN] core.typed 0.2.0 - Production Ready

2013-08-29 Thread Alex Baranosky
Imo, there's nothing easy about writing something like Slamhound. Even after many iterations it can't handle macros, because ultimately they're impossible, without some kind of hints specifically added for Slamhound (or for Typed Clojure) :) -- -- You received this message because you are

Re: strange map

2013-08-28 Thread Alex Baranosky
map is lazy. You shouldn't call side effect functions from it. I recommend you use doseq instead. On Wed, Aug 28, 2013 at 1:57 AM, Christian Sperandio christian.speran...@gmail.com wrote: Hi, Try just one thing: (def r (map #(do (print -) %) '(1 2 3 4 5))) And after, do (println r)

Re: function creation, partial or #()

2013-08-16 Thread Alex Baranosky
My two cents: The way I see it, the use of #( ... % ...) is analogous to the usage of the word it in English: only use it when it is obvious beyond a shadow of a doubt what it means. Think about how clunky English would be without the word it. On Fri, Aug 16, 2013 at 4:32 PM, Timothy Baldridge

Re: Do you like the Clojure syntax?

2013-08-13 Thread Alex Baranosky
To me you cannot separate Clojure's syntax from its capabilities, because a number of its capabilities are enabled by the syntax. On Mon, Aug 12, 2013 at 10:55 PM, Christian Sperandio christian.speran...@gmail.com wrote: I think the choice of a language has always a subjective part.

Re: Do you like the Clojure syntax?

2013-08-13 Thread Alex Baranosky
if I think the current syntax is one of the best, could you say what Clojure's capability couldn't be done with another syntax? Other languages implement FP without lisp syntax and the macros could be done in another way, perhaps with AST (like in groovy). Le 13 août 2013 08:53, Alex Baranosky

Re: Data Profiling

2013-08-10 Thread Alex Baranosky
You could possibly batch import it all into MySQL, and let people SQL query over it. On Sat, Aug 10, 2013 at 9:21 AM, Adrian Mowat adrian.mo...@gmail.comwrote: Hi, I have about 2.5 Gb of web transaction data (values submitted to forms etc) held as CSV files that my fairly non-technical users

Re: Status of Generic Functions (a la lisp)

2013-08-04 Thread Alex Baranosky
Razvan, are you asking about dispatch on multiple types... protocols only give fast dispatch on their first arg's type. Currently you can either get fast dispatch on the type of the first arg, or you get slower dispatch on anything w/ multimethods. On Sat, Aug 3, 2013 at 11:48 PM, Robert Levy

Re: Interest in a commercial IDE for Clojure?

2013-07-27 Thread Alex Baranosky
Hello Colin F, A few of my observations: - I think heavy-duty Intellij Java users are the best market for such a plugin. The business question then becomes: are there enough such teams to warrant the work necessary? - The plugin is at odds with a lot of Clojure's OSS community...

Re: help actually changing :use to :require :refer :all?

2013-07-27 Thread Alex Baranosky
Lee, On our work projects at Runa, we have an unwritten code standard of always writing out the full namespace, and not using shortcuts as you suggest. The reason being that it can be very hard to search for usages of a namespace if you don't fully qualify them, which makes refactoring a

Re: Can we please deprecate the :use directive ?

2013-07-24 Thread Alex Baranosky
+1 for scary compiler deprecation warning for 1.6.0, then removing :use in the 1.7.0 release. On Wed, Jul 24, 2013 at 8:49 AM, Softaddicts lprefonta...@softaddicts.cawrote: I disagree, when I use tracing fns and other useful REPL tools, I like to have them included without having to prefix

Re: Can we please deprecate the :use directive ?

2013-07-24 Thread Alex Baranosky
If anyone needs help removing all their uses, Slamhound ( https://github.com/technomancy/slamhound) does a decent, though not perfect, job of automating this. On Wed, Jul 24, 2013 at 9:16 AM, Alex Baranosky alexander.barano...@gmail.com wrote: +1 for scary compiler deprecation warning

Re: Can we please deprecate the :use directive ?

2013-07-24 Thread Alex Baranosky
Imo, as soon as you have to maintain other peoples' code that heavily uses naked use, require starts to look a whole lot nicer. On Wed, Jul 24, 2013 at 10:14 AM, Lee Spector lspec...@hampshire.eduwrote: On Jul 24, 2013, at 12:45 PM, dennis zhuang wrote: I am using ':use' for my own

Re: anaphoric macro?

2013-07-23 Thread Alex Baranosky
Hi Anders, (defmacro def-name [name-vec body] `(let ~(vec (interleave (map symbol name-vec) name-vec)) ~@body)) user= (macroexpand '(def-name [a b c] 1 2 3)) (let* [a a b b c c] 1 2 3) user= (def-name [a b c] a) a user= (def-name [a b c] b) b user= (def-name

Re: anaphoric macro?

2013-07-23 Thread Alex Baranosky
Good point BG, I think it is almost certainly not a good idea :) But educational, definitely. On Tue, Jul 23, 2013 at 12:48 AM, Baishampayan Ghose b.gh...@gmail.comwrote: Since the bindings are a function of the data that's passed in, IMO you don't need a anaphoric macro for this. For

Re: Design Question: Agents vs. Refs

2013-07-19 Thread Alex Baranosky
I'll second that you are usually doing something unidiomatic if you're using refs of refs. On Fri, Jul 19, 2013 at 2:44 PM, vis thevisualist...@gmail.com wrote: Good point, I didn't think about that for some reason. Yes I will give it a read, thanks for the link! On Friday, July 19, 2013

Re: easier way to write not not?

2013-07-17 Thread Alex Baranosky
`boolean`. Agreed. On Tue, Jul 16, 2013 at 11:13 PM, Shantanu Kumar kumar.shant...@gmail.comwrote: On Wednesday, 17 July 2013 11:42:10 UTC+5:30, JvJ wrote: Not that it's a big deal, but is there a standard library function for #(not (not %))? Just say `boolean` maybe? Shantanu --

Re: [ANN] simple-sheck - A QuickCheck inspired testing tool

2013-07-16 Thread Alex Baranosky
Hi Reid, I dig how nicely it integrates with clojure.test. Does simple-check implement some form of shrinking? On Tue, Jul 16, 2013 at 12:20 PM, Reid Draper reiddra...@gmail.com wrote: Derp, I fat-fingered my own library name in the subject :) On Tuesday, July 16, 2013 2:18:54 PM UTC-5,

ANN: testselector

2013-07-09 Thread Alex Baranosky
At work I noticed that every once in a while we'd forget to add test selectors to our tests, which means that they may not get executed by CI. To prevent this I wrote testselector as a way to periodically check that all deftests have one of the expected metadatas present. It is really simple to

Re: Can't figure out how to merge this dern map.

2013-07-08 Thread Alex Baranosky
Agreed that it is weird and I never use `into` in that manner, either. On Mon, Jul 8, 2013 at 9:50 AM, Gary Trakhman gary.trakh...@gmail.comwrote: Into is reduce-conj, and this relies on a special-case of conj for maps and map entries. I find it hard to read, so I would vote for apply/reduce

Re: Domain modelling question

2013-07-06 Thread Alex Baranosky
Hi Marc, But the domain model I'm thinking of has lots of mutable things that change over time when I execute the business actions. In your case, you don't need any STM to model any of your domain. I'd go so far as to say that to use refs for this is almost certainly a mistake. Of course the

Re: core.async

2013-06-28 Thread Alex Baranosky
Very cool stuff. One point of feedback though: I thought Clojure Core had done a great job of avoiding a Haskell-like symbol-heavy. I might've been mis-informed, but I thought this tendency to avoid symbol-heavy naming was intentional. For example, instead of `-?` in 1.5 we got `some-`. I

Re: Database migrations

2013-06-14 Thread Alex Baranosky
Inspired by Technomancy's suggestion to try a simpler approach to migrations on IRC, I came up with this tiny library based heavily on code from the clojars repo, that Phil pointed me to. Personally, I thought Ragtime and Lobos, were overkill.

Re: [job opening] DRW (http://drw.com) is looking for a Sr. Software Engineer - Clojure/JRuby

2013-06-07 Thread Alex Baranosky
Hi Jay, I'm interested in DRW, but am pretty sure the offices are in New York / Chicago right? I'm not sure I could convince my significant other to move away from the Bay Area. I've been working with Runa for a year, have a lot of experience with testing and JVM languages. Github:

Re: clojure diffs

2013-06-07 Thread Alex Baranosky
Thanks for remembering gui-diff Denis :) I actually left it out of my post, having forgotten about it, even though I use it multiple times a day, and couldn't get by without it in my workflow anymore. Best, Alex On Fri, Jun 7, 2013 at 12:47 AM, Dennis Haupt d.haup...@gmail.com wrote: intellij

Re: clojure diffs

2013-06-06 Thread Alex Baranosky
Intellij diffs, FileMerge, or Meld - they all highlight the words that changed not just the lines. On Thu, Jun 6, 2013 at 7:57 PM, John D. Hume duelin.mark...@gmail.comwrote: One neat hidden Github feature is that if you add the query string parameter w=1 to any diff view, it will ignore

Re: Best IDE

2013-06-04 Thread Alex Baranosky
There are things I love and hate about both Emacs and Intellij, so after a year of working professionally with a bunch of Clojure-Emacs users, I still end up using Intellij about half the time, and get my fair share of harassment over it. I'd like to merge the two actually if possible. On Tue,

Re: alter a map in a vector (reference)

2013-06-03 Thread Alex Baranosky
You *can* update this inside the vector, but if you want to key by :id, I would personally recommend, you put the email data into a map and look it up by :id, like this: {1 {:id 1 :email {a...@mail.com 1}} 2 {:id 2 :email {d...@mail.com 1}} 3 {:id 3 :email {g...@mail.com 2}}} Best, Alex On

Re: Use of io!

2013-05-30 Thread Alex Baranosky
Do any of you ever use io! ? I've never used it, but could see using it if I had a transaction-heavy application. On Wed, May 29, 2013 at 11:43 PM, Michael Klishin michael.s.klis...@gmail.com wrote: 2013/5/30 Josh Kamau joshnet2...@gmail.com Whats the point of using io! inside dosync if all

Re: Structing Clojure tests/setup and tear down

2013-05-21 Thread Alex Baranosky
I tend to have macros for different types of setup/teardowns. Mostly because clojure.test fixtures always want to wrap *every* test in a file. On Tue, May 21, 2013 at 9:41 AM, Colin Yates colin.ya...@gmail.com wrote: No worries ;) On 21 May 2013 17:18, Ulises ulises.cerv...@gmail.com wrote:

Re: [ANN] getclojure.org

2013-05-16 Thread Alex Baranosky
Really cool. Thanks! On Thu, May 16, 2013 at 8:04 PM, Devin Walters dev...@gmail.com wrote: Thanks for trying it out! One hint to people trying it out would be to not put too much stock into the first page of results. The plan is to add user ratings to augment search results in a

Re: Utility libraries and dependency hygiene

2013-05-13 Thread Alex Baranosky
Yes, by all means please just copy-n-paste out of https://github.com/runa-dev/kits if it simplifies your dependency tree. On Sun, May 12, 2013 at 8:53 PM, Dave Kincaid kincaid.d...@gmail.comwrote: Thanks for this, Stuart. I hope it's not too late. As one who has spent the last couple weeks

Re: Why is using (not (empty? coll)) not idiomatic?

2013-05-11 Thread Alex Baranosky
Most of the code I see and write at work at Runa uses (not (empty? foo)). I'll continue to defend the position that it is more obvious code, and therefore better (imo :) ) Alex On Sat, May 11, 2013 at 12:22 PM, Karsten Schmidt i...@toxi.co.uk wrote: What's the idiom in (seq coll)? Maybe

Re: Why is using (not (empty? coll)) not idiomatic?

2013-05-11 Thread Alex Baranosky
Sean, I'd tend to write things like that, yeah. On Sat, May 11, 2013 at 2:49 PM, AtKaaZ atk...@gmail.com wrote: I agree On Sat, May 11, 2013 at 10:25 PM, Alex Baranosky alexander.barano...@gmail.com wrote: Most of the code I see and write at work at Runa uses (not (empty? foo)). I'll

ANN: kits 1.5.1 - some of Runa's core utilities

2013-05-09 Thread Alex Baranosky
Runa has decided to open source a project of our utility namespaces that we call Runa Kits https://github.com/runa-dev/kits. At this point in time this includes: - benchmark.clj ;; simple timing functions - csv.clj ;; wrapper around clojure-csv library that turn csv in to column-name,

Re: [OT] Re: More idiomatic way to use map like this?

2013-05-03 Thread Alex Baranosky
I concur with Timothy's assessment. Really well stated and illustrated use of reduce with a named reduce function. On Fri, May 3, 2013 at 10:52 PM, Timothy Baldridge tbaldri...@gmail.comwrote: In general, loop/recur shouldn't be considered idiomatic, IMO. Instead, try for a more functional

  1   2   3   >