Here's some resources to get you started learning about dataflow as a
paradigm. From this you should be able to figure out how Pedestal's
dataflow system fits in.
A list of existing dataflow languages and systems:
*Given an infinite number of cores, the time to process a set of dataflow
functions is equivalent to the the time that the longest function took to
do its processing.*
It sounds like you've just discovered Amdahls Law :-D
https://en.wikipedia.org/wiki/Amdahl%27s_law
As for the articles, the
I'd love to know the correct answer to this too, but in the meantime,
here's how I've been doing it:
I define the release version in some namespace. To use it, I require this
namespace. Eg release-namespace/func
Then I create a separate file for the debug build and I require the release
For me the killer thing about Clojure isn't a specific library or
feature, its the philosophy that the community fosters and the collection
of features and libraries that this nurtures:
- Simplicity
- Decomplection (extreme separation of concerns)
- Data-centric code
I've personally always used keywords. I don't see any value in aliasing
:foo to foo. For navigating nested maps, get-in, update-in and assoc-in
with keywords seem natural and practical to me.
On 22 April 2014 10:43, Colin Yates colin.ya...@gmail.com wrote:
(This has been discussed before but
Thanks for sharing!
Entity component systems are something I'm very interested in and
something I have tinkered with in the past. I hope to (eventually)
find some time to play around with them in Clojure too. I would be
very interested in hearing more about your solution and would be
delighted if
Hi Michael,
Looks great! I love the video too. Very nice.
I have put a link to your blog post on the clojure games wiki. I'll update
the wiki properly when I get a chance. If you want to put details on your
game on the wiki (or want to edit my post about your component entity
system), please feel
at
http://groups.google.com/group/clojure?hl=en
--
Daniel Kersten.
--
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 patient
to
clojure+unsubscr...@googlegroups.comclojure%2bunsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--
Daniel Kersten.
Leveraging dynamic paradigms since the synergies of 1985.
--
You received this message because you
Thanks for the replies, that certainly clarified things!
On 3 August 2010 13:39, Rich Hickey richhic...@gmail.com wrote:
On Aug 3, 2:19 am, Daniel Kersten dkers...@gmail.com wrote:
Can one not detect that a recursive call is a tail call and then
transform
the AST so that its iterative
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.comclojure%2bunsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--
Daniel Kersten.
Leveraging dynamic paradigms since the synergies of 1985
Hi,
I've been playing with the idea of creating a game development site
for Clojure for a while now and finally got around to setting up a
wiki for that purpose: http://clojure-games.org/
So far, there isn't much content there yet. I've linked any popular
game-related libraries, blog posts and
Duke rao...@gmail.com wrote:
On Thu, Nov 18, 2010 at 6:14 AM, Daniel Kersten dkers...@gmail.com wrote:
Happy game devving,
a great idea, thank you for pushing this sort of thing along!
sincerely.
--
You received this message because you are subscribed to the Google
Groups Clojure group
On 21 November 2010 19:01, Ken Wesson kwess...@gmail.com wrote:
On Sun, Nov 21, 2010 at 1:39 PM, Tim Visher tim.vis...@gmail.com wrote:
On Sat, Nov 20, 2010 at 4:16 PM, Glen Stampoultzis gst...@gmail.com wrote:
Also, I think the Clojure logo is copyrighted so permission might need to
be
On 21 November 2010 20:55, Ken Wesson kwess...@gmail.com wrote:
On Sun, Nov 21, 2010 at 3:43 PM, Daniel Kersten dkers...@gmail.com wrote:
On 21 November 2010 19:01, Ken Wesson kwess...@gmail.com wrote:
On Sun, Nov 21, 2010 at 1:39 PM, Tim Visher tim.vis...@gmail.com wrote:
On Sat, Nov 20, 2010
Indeed.
I have emailed him again asking for further clarification (and asked
for what license it is released under, if any - though I think its
extremely important that it is released under some specific and
publicly disclosed terms).
The only other discussion on this issue that I could find was
are lawyers, I still think it would be best to have an
official decision on the matter.
On 21 November 2010 22:45, Daniel Kersten dkers...@gmail.com wrote:
Indeed.
I have emailed him again asking for further clarification (and asked
for what license it is released under, if any - though I think its
style, but it will take me some time to get them into a
publishable form.
On 21 November 2010 22:48, Daniel Kersten dkers...@gmail.com wrote:
By the way, I imagine using the logo in such a way (displaying it,
unmodified, on a website) would simply fall under fair use (according
to wikipedia
Tim, if you want to take another shot at a logo, feel free!
Ken, yeah, I forgot to remove the favicon and the twitter avatar. I
guess I should do that.
On 22 November 2010 14:30, Tim Visher tim.vis...@gmail.com wrote:
Hah. There does seem to be some confusion about the logo. :)
Oh well, it
Looks really good. Thanks for another great library!
On 23 November 2010 21:12, Moritz Ulrich ulrich.mor...@googlemail.comwrote:
I would go for the vector. It's easier than writing (ordered-map ...) all
the time. If you want to generate structs dynamically, you would even simply
create a
I'm a massive fan of Qt and have done a lot of Qt/QML in C++ in the past,
but lately when I've needed to do a GUI (and could use Clojure), I've been
making it Web based and using ClojureScript with Om. Since jetty/http-kit
run nicely as embedded servers, you could have your application run locally
To write the data to a file, you could do something like this:
(spit filename (pr data))
And to read it back in, you could do something like:
(clojure.edn/read-string (slurp filename))
On 15 May 2014 07:20, Steven Jones ple...@gmail.com wrote:
Hi
I am developing an Overtone MIDI
There are also Clojure tools to generate documentation like this:
https://github.com/gdeer81/marginalia
On 25 May 2014 20:55, Angel Java Lopez ajlopez2...@gmail.com wrote:
Yes, it is based on docco
http://jashkenas.github.io/docco/
Check
clj-orient hasn't been updated in 2 years, while OrientDB is in very active
development. Therefore, I would say that it is now quite dated.
A good alternative would be to use the Tinkepop API and looking into
https://github.com/clojurewerkz/archimedes - OrientDB has transitioned to
using
I started playing with Instaparse recently too and its by far the nicest
parsing library I've used (after having used a few in C++, Java and Python
over the years). It makes parsing a pleasant and fun experience :)
So: Thank You Mark!
On 12 June 2014 03:43, Devin Walters dev...@gmail.com wrote:
It does work.
As far as I can tell, the namespace with defmethod must require the
namespace with defmulti and also the namespace with defmethod must be
required from some other namespace that is being executed.
Eg:
*foo.clj:*
(ns foo)
(defmulti mmtest identity)
(defmethod mmtest :default [_]
You could simplify your fix code a small bit by using go-loop and when,
like this:
(go-loop []
(let [[v ch] (alts! [dump-chan (om/get-state owner :exit-chan)])]
(when (= ch dump-chan)
(.log js/console dumping state:)
(.log js/console (pr-str (om/get-state owner)))
.
From: Daniel Kersten dkers...@gmail.com dkers...@gmail.com
Reply: clojure@googlegroups.com clojure@googlegroups.com
clojure@googlegroups.com
Date: July 25, 2014 at 5:26:56 AM
To: clojure@googlegroups.com clojure@googlegroups.com
clojure@googlegroups.com
Subject: Re: subtle om + core.async
My server looks like this and its been working for me for the past few
months without issue:
(defroutes ws-routes
(GET /cmd/chsk req (ring-ajax-get-or-ws-handshake req))
(POST /cmd/chsk req (ring-ajax-postreq)))
(defn run
[ [routes]]
(let [site
The intuitive behaviour (to me) would be that :pre is applied to every
recur as stated and post is applied only to the eventually returned value
and this *_should_ *be considered a bug. My logic is as follows:
1. A (pure, for simplicity of this argument) function, in the absence of
Speaking of CSRF, I have a slightly different setup from the Sente examples
where I use sente for all my communication after the initial load, whereas
the Sente examples use normal HTTP to perform logins and only use Sente
after login. This way the login request can set the client-id and CSRF
Hi Timothy, I just wanted to note that you can control the port Austin uses
through environment variables. I do this so I can port forward, for example.
This probably won't help you though, as httpkit and the browser repl can't
run on the same port.
On 30 Jul 2014 16:24, Timothy Washington
That's awesome, thank you for the amazing work, David!
Are there any plans to merge the ind-components branch into master any time
soonish?
On 1 August 2014 21:29, David Nolen dnolen.li...@gmail.com wrote:
Thanks for the correction, fixed!
On Fri, Aug 1, 2014 at 4:26 PM, Rostislav Svoboda
Hi,
I'm trying programmatically close a connected sente connection (either on
the server or the client).
Is this possible?
Thanks,
Dan.
--
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
:06, Daniel Kersten dkers...@gmail.com wrote:
Hi,
I'm trying programmatically close a connected sente connection (either on
the server or the client).
Is this possible?
Thanks,
Dan.
--
You received this message because you are subscribed to the Google
Groups Clojure group.
To post
...@gmail.com wrote:
I think you can send :chsk/close:
https://github.com/ptaoussanis/sente/blob/master/src/taoensso/sente.cljx#L335
This doesn't look documented either, but according to the code it'll do
the trick.
Daniel Kersten dkers...@gmail.com
August 24, 2014 at 11:30 AM
After some more
Hi Peter,
Thanks for chiming in. Actually I missread the code since chsk/close is
handled on the client, but if course it is sent from the server, which is
what I want. Thanks for clarifying. I don't mind it reconnecting (in fact,
it's desirable for what I want).
Basically what I want to achieve
I've also been explaining them the same way as Mark.
On 10 September 2014 17:28, Plínio Balduino pbaldu...@gmail.com wrote:
That's also my explanation about the use of exclamation mark.
IMHO, +1 for volatile, without !.
Plínio
On Wed, Sep 10, 2014 at 1:05 PM, Mark Engelberg
I personally think Thomas' is best if load may vary as it is more
predictable and straightforward to understand. If we're talking about line
code, here's a shortened version that I don't feel sacrifices readability
(typed on a phone so please excuse typos...):
(let [exec (Executors
In Om, a good place to put things that need render to have been called is
in IDidMount. You can get the DOM node for your component with (om/get-node
owner) or (om/get-node owner ref) if you want a sprcific node with a :ref
attribute set.
On 17 Sep 2014 22:06, Rostislav Svoboda
Forgot to add: IDidMount/did-mount only gets called after mounting. If you
want to run code after later renders you can use IDidUpdate.
On 18 Sep 2014 09:16, Daniel Kersten dkers...@gmail.com wrote:
In Om, a good place to put things that need render to have been called is
in IDidMount. You can
Fantastic work, David! Thank you for all your hard work on Om!
This is definitely an exciting release and I look forward to playing with
it over the coming days. I'll be sure to report back on my experience with
it.
On 18 October 2014 16:53, David Nolen dnolen.li...@gmail.com wrote:
I'm happy
You could do both:
Make the channel optional. If it's provided, use that and return it. If
it's not provided, create a new one and use and return that.
This way the caller gets to decide which they wish to use based on who the
owner of the channel should be or if the channel should be reused
Pedestal App (the clojurescript frontend library) is dead. Server side
pedestal seems to be very much alive.
On Tue, 18 Nov 2014 19:19 Sean Corfield s...@corfield.org wrote:
On Nov 18, 2014, at 10:57 AM, Ashton Kemerling ashtonkemerl...@gmail.com
wrote:
I thought the pedestal frontend is not
Is it possible to retrieve all entities with a set of attributes,
regardless of the attribute values?
On Wed, 3 Dec 2014 06:19 Atamert Ölçgen mu...@muhuk.com wrote:
I don't feed trolls.
On Wed, Dec 3, 2014 at 10:10 AM, Atamert Ölçgen mu...@muhuk.com wrote:
Why are you using BigDecimal's for
Thanks David for your continued hard work - another fantastic release. This
looks really good and solves real problems.
On Sat, 24 Jan 2015 16:09 David Nolen dnolen.li...@gmail.com wrote:
On Sat, Jan 24, 2015 at 11:01 AM, Khalid Jebbari khalid.jebb...@gmail.com
wrote:
A question (maybe
I personally like data. om-tools also calls it data.
On 2 February 2015 at 12:55, Khalid Jebbari khalid.jebb...@gmail.com
wrote:
Indeed, data is better than app.
Khalid aka DjebbZ
@Dj3bbZ
On Mon, Feb 2, 2015 at 10:49 AM, Sebastian Bensusan sbe...@gmail.com
wrote:
Thanks Khalid,
The
A figwheel-based tutorial would be fantastic.
I don't have an awful lot of time to convert it right now, but if nobody
does before I do get time, I'll happily take a stab at it. Will likely be a
month or two though.
On 27 January 2015 at 16:24, David Nolen dnolen.li...@gmail.com wrote:
I think
Hi James,
This looks nice. I do have one question: is it possible to load parts of a
configuration from environment variables?
Eg, in your location-aware configuration example, lets say I wanted to
specify the database user and pass configuration options as you do for the
dev configurations, but
Hi,
Take a look at https://github.com/juxt/bidi#resources-and-resourcesmaybe
Regards,
Dan
On 11 January 2015 at 19:27, cliff clifford.goldb...@gmail.com wrote:
Hi
I am trying to mimic the following Compojure behaviour, in juxt/bidi
(defroutes routes
(*resources* /)
(GET /* req
I'm building a fairly simple online store site using http-kit, ring, bidi,
enlive, clj-rethinkdb, stripe-clj, clauth, mailer and DomKM's server-side
Om rendering technique on the server and cljs-http, om, bootstrap-cljs,
markdown-clj and core.async on the client.
It's not my day job so it's
Make sure you require the sql migrations in your jub.datasources source
file. This is probably it since jub.datasources cannot find the correct
defmethod for migrate-db. Also make sure the migrations are on the
classpath.
On Sat, 21 Mar 2015 at 09:38 Hildeberto Mendonça m...@hildeberto.com wrote:
I should have been clearer. I was thinking by using callbacks like Colin
suggests. I've had code that looks like this before:
(om/build component data {:opts {:cb #(om/set-state! owner %)}}
On Fri, 6 Mar 2015 14:43 James Reeves ja...@booleanknot.com wrote:
On 6 March 2015 at 09:13, Colin Yates
Regarding hiring, it seems to me that most of the smaller companies aren't
hiring clojure developers but rather training other developers.
I know one local former java shop that now mostly uses clojure for new
development and non of their team of ~10 had any prior clojure experience.
In my own
You can provide refs to dom calls and use om/get-node to retrieve them:
(dom/div #js {:ref foo} ...)
(om/get-node owner foo)
It is tied to the owner though and I'm not entirely sure what that means
for grabbing refs from other components - as far as I'm aware, it will work
just fine for
Just bought a copy too. So far looks great! Can't wait to read the rest of
it :)
On Fri, 27 Mar 2015 at 12:52 Luc Prefontaine lprefonta...@softaddicts.ca
wrote:
Bought it myself too...
If this is some kind of marketing stunt, it
caught me off guard... (sic)
Luc P.
The list is so cool
I've successfully used component local state for similar tasks while
working with DimpleJS charts.
On Fri, 6 Mar 2015 05:46 Tom Lynch tfly...@gmail.com wrote:
One workable possibility:
* init a core.async channel in the container
* pass the channel from the container into each child
Hi,
I've got a clojure(script) project where I use figwheel to live-reload cljs
and this works great, but I'm now trying to set up live reloading of the
server-side clojure too.
Since I don't want to run multiple jvm/lein instances, I'm using figwheels
:ring-handler feature to add my server ring
I haven't used Luminus since before 2.0, so I guess it may have changed a
lot since. At the time, I was disheartened by the amount of code generated.
I will take another look when I get time.
On Tue, 5 May 2015 at 14:06 Dmitri dmitri.sotni...@gmail.com wrote:
Luminus uses a minimal amount of
I'm going to take a wild guess and say: missing wrap-content-type middleware
perhaps?
On Mon, 4 May 2015 at 20:37 Fluid Dynamics a2093...@trbvm.com wrote:
On Monday, May 4, 2015 at 3:21:19 PM UTC-4, clifford wrote:
Thanks @fluiddynamics your right on the money.
On Monday, 4 May 2015
On Monday, May 4, 2015 at 4:41:02 AM UTC-4, Sven Richter wrote:
One potential problem with this web framework as app template approach
is upgrade-ability. When 2.0 of your framework comes out, what happens
to an app generated from 1.0 that wants to benefit from the new
capabilities?
This is
Ouch! But that actually makes a lot of sense.
On Mon, 13 Apr 2015 14:58 Alex Miller a...@puredanger.com wrote:
There is a ticket to consider a portable solution to this issue:
http://dev.clojure.org/jira/browse/CLJ-1293
On Monday, April 13, 2015 at 5:45:35 AM UTC-5, David Nolen wrote:
To chime in on why would I do this:
Lots of companies already are successfully built on open source, so I don't
buy the *but then I can't make money* argument - at least, not as a
blanket statement . There are two models I've commonly seen used: The
direct Red Hat model (open source software,
Hi everyone,
I am working on a collection of web development libraries to accomplish
various tasks that I've found myself wanting or needing in recent months.
Collectively, I've dubbed them Erinite.
The first of these libraries is erinite/template, a Clojure(script) hiccup
transformation library
One thing worth pointing out is that OSS needn't be free as in beer.
I've paid for OSS SaaS products because I don't want to host and admin them
myself, for example.
If your service provides something above and beyond what the source
provides (and the OSS freedom), then you *may* still have a
x and y are destructured into the key and value of each map entry. Z is
nil.
The second example uses seq to convert the map into a sequence of map
entries and then it destructures the seq (not the map entries themselves).
The third example does destructure the map entries.
(let [[a b c] [1 2]]
Mine too, this is fantastic work and the charts are very pretty :)
On Wed, 17 Jun 2015 at 20:05 Ivan L ivan.laza...@gmail.com wrote:
this is quickly becoming my clojurescript goto viz api. keep up the great
work!
--
You received this message because you are subscribed to the Google
Groups
As far as I can tell, in that table isomorphic means that you can go both
from URL to route and from route to URL, whereas cljs means you can
use it from clojurescript in the browser.
I personally use bidi and its great. Because its just data, it means that
you can easily combine and compose
Regarding the Whats next in the README:
*looking into swagger integration. I could swear I found some bidi-swagger
bindings somewhere a while back, but am not finding them at the moment*
Could you perhaps be thinking of the Yada swagger integration?
http://yada.juxt.pro/user-guide.html#Swagger
This sounds like a lot of fun! Good luck with it. Sadly I don't have enough
time to try it myself, but I will also be watching how you get on.
On Mon, 17 Aug 2015 at 14:06 pepijn de vos pepijnde...@gmail.com wrote:
Thanks!
I found out you can only have two members on a team, so I’m already
https://github.com/venantius/ultra is also worth a look (its basically a
wrapper plugin that uses aviso/pretty and others under the hood)
On Thu, 1 Oct 2015 at 21:52 Howard Lewis Ship wrote:
> Without the plugin, I typically added the call to
>
aving said that, if I had mixed refs and atoms then I might consider
> splitting those, but in general I find it obvious and intuitive when
> looking through past code which are atoms and which are fns/vars.
>
> Might just be me though :-).
>
> On 7 Dec 2015, at 08:26, Daniel Ker
I personally don't like this.
An atom won't suddenly change value without your knowledge because to get
its value, you must use @ or deref (which should be a big warning that,
yes, this value might change between calls to deref).
Adding sigils, in my opinion, adds to the noise and makes it
I write such code like this:
(defn sdescriptive-name [] )
(def my-atom (atom (descriptive-name)))
Where descriptive-name would describe the data shape or purpose.
This way the atom is not obscured behind many lines of code and the
data-generation is factored into a testable function with a
Clojurescript does have eval, in the cljs.js namespace:
https://crossclj.info/ns/org.clojure/clojurescript/1.7.228/cljs.js.cljs.html#_eval
Take a look at http://yogthos.net/posts/2015-11-12-ClojureScript-Eval.html for
an example and https://swannodette.github.io/2015/07/29/clojurescript-17/ for
Congratulations! Fantastic news. I think thats my cue to finally go ahead
and learn to use Onyx :)
On Thu, 25 Feb 2016 at 00:07 Colin Fleming
wrote:
> Hi Michael,
>
> Congratulations! That's fantastic - I'm really happy to see more people
> being able to work full
I've actually been looking at Replikativ (and CRDT's in general) over the
past ~3 weeks, so I'm very happy to hear that Replikativ is moving
forwards. It looks incredibly interesting.
On Wed, 20 Jan 2016 at 16:30 Thomas wrote:
> Looks very interesting and I suspect
In my experience running the local clojure user group, a lot of clojure
beginners (NOT programming beginners) struggle with two things: the
paradigm switch (immutable data etc) and clojure's error messages.
I think if a beginner to programming started with clojure, they may be able
to sidestep
Yes, only the first map passed into baz (only one passed in anyway in the
example) is kept, anything else is thrown away. Seems like a strange
example when something like this would have sufficed to get the point of
merge across:
(defn baz [options]
(let [options (merge {:opt1 "default-1"
This is brilliant! I was looking for something like this to create images
to use in talk slides. Thank you!
On Thu 30 Jun 2016 at 20:11, wrote:
> Tried this out to visualize a DFA used for dictionary matching. Very cool.
>
>
> On Monday, June 27, 2016 at 1:57:56 PM
I would be very interested in learning about how to use replikativ: what
can and can't it store, when is and isn't it a good fit, demo/sample code
of common and not so common use cases etc
I've looked at replikativ and even went down the "learn lots about CRDTs"
rabbit hole and think I have an OK
81 matches
Mail list logo