[ANN] stratege 0.1.0 - a strategic term rewriting library for clojure

2015-08-24 Thread Maik Schünemann
I am happy to announce the first release of stratege . stratege is a strategic term rewriting library inspired by StrategoXT that provides composeable strategy combinators, is based on zippers and internally uses continuation passing style, so that it doesn

Re: Too many words written on referential transparency in Clojure and Haskell

2015-04-22 Thread Maik Schünemann
ndy >>>>>>> >>>>>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Clojure" group. >>>> To post to this group, send email to clo...@googlegroups.com >>>> Note

Re: complex numbers in clojure

2014-08-16 Thread Maik Schünemann
the right way like in the snippet from the clojure compiler. This would make it simple to add new numeric types, but the code would have to be recompiled. > > > On Friday, 15 August 2014 23:24:24 UTC+8, Maik Schünemann wrote: >> >> Hi, >> is there a recommended way to do

Re: complex numbers in clojure

2014-08-15 Thread Maik Schünemann
algo.generic). The tricky part would then be figuring out how to nicely interop with the other clojure types without incuring too much overhead to be used in serious scientific computing (I think algo.generic uses multimethods for dispatch, which is definitly too slow in highly stressed inner

complex numbers in clojure

2014-08-15 Thread Maik Schünemann
Hi, is there a recommended way to do complex arithmetic in clojure ? I am interested to see clojure going forward for scientific computing purposes. There is already considerable effort going on with core.matrix, incanter, expresso etc. But something thad is oddly lacking is support for comple

Re: Mathematica like eval

2014-06-14 Thread Maik Schünemann
Hi, You can use expresso for this: (use 'numeric.expresso.core) (def e (ex (+ 8 a (* 9 (+ 2 b)) 2))) ;=> (+ 8 a (* 9 (+ 2 b)) 2) This expression can now be manipulated by expresso to simplify it, solve it, etc. you can substitute a and b for its values

Re: To make sure - brief

2014-05-13 Thread Maik Schünemann
I think clojure will be a great language for this. You have access to all mature java libraries you can think of and clojure as great high level language to glue the components together and write clever algorithms. Would be great if you could do a blog post/experience report afterwards ;) On Tue,

Re: Do not understand the -> macro here

2014-05-01 Thread Maik Schünemann
The task is to replace __ with the function that makes this true in this case makes [1 2 3 4 5] to 5 On Thu, May 1, 2014 at 4:23 PM, Maik Schünemann wrote: > > > > On Thu, May 1, 2014 at 3:51 PM, Roelof Wobben wrote: > >> >> >> Op donderdag 1 mei 2014 1

Re: Do not understand the -> macro here

2014-05-01 Thread Maik Schünemann
On Thu, May 1, 2014 at 3:51 PM, Roelof Wobben wrote: > > > Op donderdag 1 mei 2014 15:20:38 UTC+2 schreef Erlis Vidal: > >> I think the confusion is because they used multiple values when comparing >> the equality >> >> (= (__ (sort (rest (reverse [2 5 4 1 3 6] >>(-> [2 5 4 1 3 6] (revers

Re: REPL: viewing data structures containing infinite lists

2014-04-01 Thread Maik Schünemann
There is real no sensible default value rather than the current. But for me the current behaviour is no problem, just C-c C-c to interrupt evaluation (at least in cider) On Tue, Apr 1, 2014 at 7:02 PM, Gary Trakhman wrote: > It's possible for an infinite print to be just fine, it's a streaming AP

Re: Calling from a macro to a private macro

2014-03-17 Thread Maik Schünemann
Hi, I guess that maybe the same trick works for calling private functions from another namespace via getting the var and calling it. That being said, macros calling macros gets very complex after a short time, it is better to have helper functions instead of macros. The functions just accept s-expr

Re: Interested in GSOC

2014-02-25 Thread Maik Schünemann
Hi, On Tue, Feb 25, 2014 at 8:59 PM, Rohan Prinja wrote: > Hi everyone. I'm Rohan Prinja, a third year Computer Science undergrad at > IIT Bombay. I love programming in Lisp-family languages and although I have > only recently begun to use Clojure, I'm already quite familiar with Racket > and Com

Re: Namespace Problems org-mode/org-babel

2014-02-21 Thread Maik Schünemann
That is really strange. The location of the org file doesn't matter as long as it is in the right project so that cider can find the project.clj could it be that you have conflicting versions of org mode? Make sure that you have the new version of ob-clojure loaded. It should look like this http://

Re: Namespace Problems org-mode/org-babel

2014-02-20 Thread Maik Schünemann
Sorry for the short answer I am writing this on my phone. I am also using org mode and the following works fine for me: 1 evaluate the first block. Now cider should already be in the right namespace. 2. The next source block can be evaluated in the current ns. You basically have to make sure that t

Re: Cut down uberjar size

2013-10-08 Thread Maik Schünemann
You can use a regex to exclude files from uberjars, see the leiningen sample file and the :uberjar-exclusions key ;; Files with names matching any of these patterns will be excluded from jars. :jar-exclusions [#"(?:^|/).svn/"] ;; Same thing, but for uberjars. :uberjar-exclusions [#"META-INF/

GSoC Report: Expresso, symbolic manipulation of Algebraic Expressions in clojure

2013-09-23 Thread Maik Schünemann
GSoC ends today and I can announce the 0.2.0 version of the expresso [1] library. It is build on top of core.logic and core.matrix and provides symbolic manipulation of algebraic expressions. What's there? 1. An api/dsl for manipulation of algebraic expressions which doesn't get in your way. E

Re: [GSoC] Some subtle details of type-hinted macro expansion in Clojure

2013-09-20 Thread Maik Schünemann
great summary of your experience. I think others will find this helpful. I was also surprised at first that the metadata is added to the next form *read* if you use ^ reader macro. This explains the following behaviour: (meta ^:matrix 'x) ;=> nil (meta ' ^:matrix x) ;=> {:matrix true} in the first

Re: [ANN] expresso 0.1.0 released

2013-08-30 Thread Maik Schünemann
tions and games. > > > On Fri, Aug 30, 2013 at 3:45 AM, Maik Schünemann > wrote: >> >> Hi David, >> The core of expresso wouldn't be much work to port to clojurescript. >> The rule based translator is built on top of core.logic, so porting >> that shou

Re: [ANN] expresso 0.1.0 released

2013-08-30 Thread Maik Schünemann
Hi, > Not sure if it suits your needs, but I've been working on a simple > S-expression evaluation library that works in Clojure and ClojureScript: > https://github.com/kumarshantanu/quiddity > quiddity looks interesting. From what I read at the github page, creating functions (which is the requir

Re: [ANN] expresso 0.1.0 released

2013-08-30 Thread Maik Schünemann
lojurescript to bring symbolic manipulation cababilities including solving equations etc to the browser. On Thu, Aug 29, 2013 at 10:19 PM, David Nolen wrote: > Very cool stuff :) How much work would it take for this to work with > ClojureScript? > > David > > > On Mon, Aug

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

2013-08-29 Thread Maik Schünemann
On Thu, Aug 29, 2013 at 5:01 PM, Ambrose Bonnaire-Sergeant wrote: > Well I'm sure people wouldn't be happy if their call to (+ a b c) was > suddenly turned into (clojure.lang.Numbers/add (clojure.lang.Numbers/add a > b) c) > > :) the expresso [1] optimizer can be used for those optimizations ;)

[ANN] expresso 0.1.0 released

2013-08-26 Thread Maik Schünemann
Hi, I released a first version of my gsoc project expresso [1]. This is an important Milestone in my gsoc project. What is there: an expressive and powerful rule based translator, on top of which many transformations can be based. functions to simplify (currently without ratio test), differentiat

Re: Revisiting forward-chaining rules in Clojure

2013-08-19 Thread Maik Schünemann
Hi, the library looks very interesting! I am also working on a rule based translator as part of expresso [1], my gsoc project Algebraic Expressions, which uses the rule based translator to succinctly specify transformations of algebraic expressions. You can see some examples of this in my recent bl

Re: Invalid token exception on a / operator

2013-07-30 Thread Maik Schünemann
Thanks Nicola! On Tue, Jul 30, 2013 at 2:32 PM, Nicola Mometto wrote: > > It's going to be possible in clojure-1.6 see: > https://github.com/clojure/clojure/commit/88cad2510243289d2bbe28cf8bd14007d9df5fc3 > > Maik Schünemann writes: > >> Is / a valid clojure

Invalid token exception on a / operator

2013-07-30 Thread Maik Schünemann
ion Invalid token: clojure.core.matrix.operators// clojure.lang.Util.runtimeException (Util.java:219) clearly this is an edge case, because / also separates namespaces but I think if clojure.core// is valid clojure.core.matrix.operators// should also be a valid token?! regards Maik Schünem

symbolic expression manipulation with expresso

2013-07-27 Thread Maik Schünemann
Hi, I wrote a blog postabout the status of my expresso gsoc project now half way through the gsoc coding period. If you are interested in doing symbolic manipulation in clojure pleas comment/give feedback whether it

[GSOC] expressions, rules and a cool transformation

2013-06-23 Thread Maik Schünemann
Hi, In the first week I concentrated on the core datastructures of expresso. How to construct an expression, a rule and specify a transformation ? I wrote about it here http://kimavcrp.blogspot.de/2013/06/gsoc-expressions-rules-and-first.html please comment whether the user interface goes in th

[GSOC] Constructing Algebraic Expressions - User api

2013-06-14 Thread Maik Schünemann
Hi, I discussed general design issues for expresso before, but the (for you) most important part - the user api - was left out. I have written a blog post about what is the most seamless way to use expresso and discuss

Re: GSOC Algebraic Expressions

2013-05-30 Thread Maik Schünemann
> a few weeks ago which you might find interesting since it's using > core.logic as well. > > [1] http://jonase.github.io/kibit-demo/<http://jonase.github.io/kibit-demo/#1> > [2] https://github.com/jonase/kibit > > Jonas > > On Wednesday, May 29, 2013 6:10:52 PM

Re: Use of io!

2013-05-29 Thread Maik Schünemann
I think It stops other code to wrap around the code with the explicit io! call. Its declarative way of saying: I am doing io! DONT USE me inside a dosync. On Thu, May 30, 2013 at 7:47 AM, Josh Kamau wrote: > Hi ; > > Whats the point of using io! inside dosync if all it does is make an > excepti

Re: GSOC Algebraic Expressions

2013-05-29 Thread Maik Schünemann
Thank you! Pure looks very interesting I will check how the rules are represented there Am 30.05.2013 07:10 schrieb "Konrad Hinsen" < googlegro...@khinsen.fastmail.net>: > --On 29 mai 2013 19:02:18 +0200 Maik Schünemann > wrote: > > Yes I looked at Mathematica

Re: GSOC Algebraic Expressions

2013-05-29 Thread Maik Schünemann
is preferable to (+ x x > x) and the like. I have had good luck using an entropy based calculation > for scoring such options in the past. Is there any way to incorporate such > a score in the rule system? > > Alan > > > On Wed, May 29, 2013 at 10:02 AM, Maik Schünemann

Re: GSOC Algebraic Expressions

2013-05-29 Thread Maik Schünemann
n your rules example? > Good luck! > Alan Thompson > > > On Wed, May 29, 2013 at 8:29 AM, David Nolen wrote: > >> A very cool of use of core.logic, look forward to seeing where it goes :) >> >> >> On Wed, May 29, 2013 at 11:10 AM, Maik Schünemann < &g

GSOC Algebraic Expressions

2013-05-29 Thread Maik Schünemann
Hello, I am glad to announce that my proposal got accepted for google summer of code. I am doing the algebraic expression project idea which could lay the foundation for a clojure CAS System by providing a library to manipulate expressions syntactically and also solving equations and optimizing

Re: Clojure is in GSoC 2013!

2013-04-22 Thread Maik Schünemann
Hello, On Mon, Apr 8, 2013 at 9:33 PM, Daniel Solano Gómez wrote: > Hello, all, > > I am happy to report that Clojure has been accepted as a mentoring > organization for Google Summer of Code 2013. Now is the time for > sudents to start researching their projects and reaching out to members. > A

Re: http-kit on heroku?

2013-04-14 Thread Maik Schünemann
I don't have an example of deploying http-kit on Heroku, but I think it should be straightforward - basically your local setup should work on heroku. Just like you can deploy your application, which starts up jetty to heroku I think you can deploy your http-kit application on heroku. The only think

Re: -> operator and monads

2013-04-04 Thread Maik Schünemann
if you come from the haskell world, it is like . piplining - but in reverse order I needed some time to get used to it but I really like -> ->> as-> ... to structure my code. It helps to see the sequence of functions that operate on your data On Wed, Apr 3, 2013 at 11:05 PM, Alan Malloy wrote:

Re: Raw strings

2013-03-18 Thread Maik Schünemann
http://dev.clojure.org/display/design/Alternate+string+quote+syntaxes On Mon, Mar 18, 2013 at 11:50 AM, Dave Sann wrote: > I'd welcome the ability to change delimiter. I've found it very useful in > the past to avoid illegible or hard to read strings. > > > On Monday, 18 March 2013 19:57:06 UTC

Re: contains? for vectors

2013-03-01 Thread Maik Schünemann
the old contails? debate :) contains? is only intented for associative collections. This explains (somewhat) the behavior on vectors. They are seen as assocuative collections from indexes to values. I'm not exactly sure about this, but I expect (contains? c x) to be true if you can call (get c x).

Re: Google Summer of Code 2013

2013-02-21 Thread Maik Schünemann
uld you flesh out what > you're trying to achieve in particular? > > Would you build on top of core.logic and core.typed? > > Thanks, > Ambrose > > On Thu, Feb 21, 2013 at 12:13 AM, Maik Schünemann < > maikschuenem...@gmail.com> wrote: > >> given the

Re: Google Summer of Code 2013

2013-02-20 Thread Maik Schünemann
given the current position of core.logic and core.typed I wonder if it would be in range of a gsoc project to implement something similar to Qis type system for clojure (here is a link to an example of using Qis type system http://programmingkungfuqi.blogspot.de/2006/04/qi-and-magic-prime-type.html

Re: Java-to-Clojure source translation?

2012-11-04 Thread Maik Schünemann
A direct translation is often not a good idea because java uses so much mutable stateand this is really not idiomatic in clojure.but it will be a helpful experience to make the java code to functional clojure code. IMO calling java code from clojure is better as a direct translation with all that m

Re: Java-to-Clojure source translation?

2012-11-04 Thread Maik Schünemann
Why do you want this? If you have java code you can just call it from clojure.no need for translation Am 04.11.2012 19:39 schrieb "Vladimir Tsichevski" : > Hi gurus, > > I wonder if there are any means that'd help me translate Java sources to > Clojure? I do not expect getting working Closure cod

Re: Question about sets

2012-09-04 Thread Maik Schünemann
+1 consistency, whether it throws an exception or not, removes complexity from the language. (because the programmer don't have to know the complex rules which literal notation behaves which way On Tue, Sep 4, 2012 at 10:02 PM, Andy Fingerhut wrote: > But what if they all consistently throw excep

Re: Advice/recommendations for generating templated (non-Clojure) s-expressions?

2012-09-02 Thread Maik Schünemann
Hi If the sexp will not be evaluated from clojure code, why aren't you using a function to generate the code instead of a macro. That avoids the namespace resolution. If you want to go with macros, there is a trick to turn namespace resolution of. just unquote like this @': Am 03.09.2012 01:07 sc

Re: generate two defns in macro

2012-08-21 Thread Maik Schünemann
What speaks against two defns in a do. It works as if you write two defns in normal code. Actually I find this very useful to do because you don't have additionally complexity for returning multiple sexps Am 21.08.2012 16:42 schrieb "Maris" : > I want a macro that generates two defn's. > > (defn v

Re: Better ideas how to collect analytics data

2012-08-11 Thread Maik Schünemann
Using maps in clojure is very idiomatic if the structure fits to your data. Do you experience performance problems? Dependent on the data you are modeling you could split the master maps in several smaller ones. If performance gets really important you can use records instead of maps. It would be

Re: clojurescript and regular expr.

2012-08-11 Thread Maik Schünemann
Could you please post the relevant code? Note that clojurescript uses Javascript regular expression syntax and not javas Am 11.08.2012 17:02 schrieb "Vincent" : > dear all , > i am trying a search a string in a clojure map data and then want to > return the result to be viewed in webpage > so usin

Re: Attractive examples of function-generating functions

2012-08-10 Thread Maik Schünemann
I think enlives transformersare a very good example of functions returning functions. Maybe you should have a look at the getting started guide and the tutorials Send from Android Am 09.08.2012 23:13 schrieb "Jonah Benton" : > You've probably seen these, but if not, Doug Crockford's video series >

Re: Experiences developing a crowdfunding site for open source projects in Clojure (from a Python background)

2012-08-01 Thread Maik Schünemann
I very recently set up emacs on windows for work with clojure. (finally using clojure at work :)) Nowadays it is not difficult to install ist just get emacs and set the home variable of your system where you want to put your .emacs and .emacs.d. then downloading clojure mode and installing slime li

Re: reactive programming for UIs and other use cases

2012-07-26 Thread Maik Schünemann
I don't know how much this goes in frp, but couldn't be the bind functionality in seesaw a good starting point. It seems as a good abstraction for dataflow programming (in the ui world) On Thu, Jul 26, 2012 at 3:38 PM, David Nolen wrote: > On Wed, Jul 25, 2012 at 5:23 AM, eric wrote: > > Now, r

Re: community interest in machine learning (?)

2012-07-18 Thread Maik Schünemann
I'm interested too and I am glad to here that the community shares the interest! Clojure seems like an ideal AI and ML language for me because of its lisp heritage and because it is running on the jvm and can use all java and jvm language libraries and vice versa On Wed, Jul 18, 2012 at 3:58 AM, m

Re: Standard alias for partial?

2012-06-21 Thread Maik Schünemann
something like %() becomes possible with reader literals in clojure 1.4 Not sure if it is a good idea though also, top level literals are reserved On Tue, Jun 19, 2012 at 8:56 PM, Jay Fields wrote: I'd actually like to see %(...) become (partial ...), as I think > people associate % with

Re: memoization of an no-arg fn that returns a map?makes sense?

2012-06-20 Thread Maik Schünemann
Memoization of a no arg function sounds silly but maybe a deref is what you are looking for. The first time you access it it is computed the next times it is just there Am 19.06.2012 13:47 schrieb "Jim - FooBar();" : > Ok we've established that accessing records fields is much faster than > using