Clojure meets Arduino

2009-12-20 Thread Nurullah Akkaya
Hey guys, I have a small weekend hack, I thought it might be interesting. It is a pong clone including the ability to control it using knobs like the original. Part one goes over building the game, http://nakkaya.com/2009/12/19/cloning-pong-part-1/ Part two goes over building the controller har

Re: Parenthesis Inference

2009-12-20 Thread Martin Coxall
On 20 Dec 2009, at 19:30, Luc Préfontaine wrote: > That's a concise and clear way to summarize the issue. > > If you compare the IDE support required for different languages, the support > required to write syntactically correct Clojure code is pretty small compared > to others. I like Clojur

Clojure and c++ and a bit more

2009-12-20 Thread nathaniel
Hi: I've recently discovered Clojure and have loosely followed some of the discussions here. First of all, I think Clojure is a great language, since I also love Lisp, and I feel that the Java platform is the most robust for web development. But I perhaps come from a background a little differen

Re: Parenthesis Inference

2009-12-20 Thread Luc Préfontaine
I do have one but it still has some grey in it :) On Sun, 2009-12-20 at 19:41 -0500, Wilson MacGyver wrote: > John McCarthy the creator of lisp does have beard. :) > > http://www-formal.stanford.edu/jmc/personal.html > > On Sun, Dec 20, 2009 at 7:37 PM, David Nolen wrote: > > On Sun, Dec 20,

Re: Second Lisp to Learn

2009-12-20 Thread Jonathan Smith
Lisp Flavored Erlang is an extremely interesting lisp. in my opinion. You get Erlang, and you also get s-expressions and macros. Common Lisp and Scheme are the obvious choices, I suppose. Learning common lisp I would probably go towards clozure common lisp, or clisp. (SBCL is fine (great, even)

Re: How to explore clojure.contrib?

2009-12-20 Thread Timothy Pratley
http://clojure.org/api http://richhickey.github.com/clojure-contrib/ On Dec 21, 12:23 pm, Mike K wrote: > Is there an API document likehttp://richhickey.github.com/clojure/index.html > for clojure.contrib? > > If not, what's the best way to discover what's in a library, > especially if you have n

Re: How to explore clojure.contrib?

2009-12-20 Thread Richard Newman
> Is there an API document like http://richhickey.github.com/clojure/index.html > for clojure.contrib? Indeed: http://richhickey.github.com/clojure-contrib/index.html -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email

How to explore clojure.contrib?

2009-12-20 Thread Mike K
Is there an API document like http://richhickey.github.com/clojure/index.html for clojure.contrib? If not, what's the best way to discover what's in a library, especially if you have no preconceived notion of what you're looking for? Thanks, Mike -- You received this message because you a

Re: Parenthesis Inference

2009-12-20 Thread Alex Osborne
Martin Coxall writes: > For each line that is not within a vector, and does not have an > opening parenthesis, infer an opening parenthesis at the start of the > line. Remember the level of indentation, and infer a closing > parenthesis at the end of the line *before* the next line whose > indent

Re: Parenthesis Inference

2009-12-20 Thread Wilson MacGyver
John McCarthy the creator of lisp does have beard. :) http://www-formal.stanford.edu/jmc/personal.html On Sun, Dec 20, 2009 at 7:37 PM, David Nolen wrote: > On Sun, Dec 20, 2009 at 5:48 PM, Luc Préfontaine > wrote: >> >> :)) > > The Lisp Beard? > >> >> Luc >> >> On Sun, 2009-12-

Re: Parenthesis Inference

2009-12-20 Thread David Nolen
On Sun, Dec 20, 2009 at 5:48 PM, Luc Préfontaine < lprefonta...@softaddicts.ca> wrote: > :)) > The Lisp Beard? > > Luc > > > On Sun, 2009-12-20 at 15:00 -0800, David Brown wrote: > > On Sun, Dec 20, 2009 at 02:30:58PM -0500, Luc Préfontaine wrote: > > >People bought HP calculat

Re: Parenthesis Inference

2009-12-20 Thread Luc Préfontaine
:)) Luc On Sun, 2009-12-20 at 15:00 -0800, David Brown wrote: > On Sun, Dec 20, 2009 at 02:30:58PM -0500, Luc Préfontaine wrote: > > >People bought HP calculators not for the Postfix notation but for all > >the others things it offered at the time... > > Some of us _still_ only

Re: Second Lisp to Learn

2009-12-20 Thread Timothy Pratley
On Dec 21, 7:31 am, Sean Devlin wrote: > What is a good Lisp to study?  Are there particular dialects & > distributions that are interesting? The free downloadable SICP lectures (and book) were for me really illuminating after initial contact with Clojure. Engaging and broad. A little off topic s

Re: Second Lisp to Learn

2009-12-20 Thread Phil Hagelberg
Sean Devlin writes: > After hacking Clojure for a while, I've come to the conclusion that > studying a second Lisp would help. So, what do the people here > think? What is a good Lisp to study? Are there particular dialects & > distributions that are interesting? Emacs Lisp is definitely the

Re: Parenthesis Inference

2009-12-20 Thread David Brown
On Sun, Dec 20, 2009 at 02:30:58PM -0500, Luc Préfontaine wrote: >People bought HP calculators not for the Postfix notation but for all >the others things it offered at the time... Some of us _still_ only buy HP calculators because of the postfix notation. Oh, the other things are nice, too. Da

Re: Can a function determine it's own name at runtime?

2009-12-20 Thread Timothy Pratley
Regarding current function, Stephen posted this code a whie ago so I don't think he'll mind me regurgitating it for you: (use 'clojure.contrib.str-utils) ; Stephen C. Gilardi (defn unmangle "Given the name of a class that implements a Clojure function, returns the function's name in Clojur

Re: Can a function determine it's own name at runtime?

2009-12-20 Thread .Bill Smith
On Dec 20, 3:55 pm, David Cabana wrote: > Suppose we define a function called sq: > > (defn sq [x] > (do (println "sq") > (* x x))) > > I wanted sq to print it's own name when run; to make it do so I > inserted the name as a string. > Is there some way to dynamically determine the name

Re: Can a function determine it's own name at runtime?

2009-12-20 Thread Sean Devlin
This question is tricky to answer, do to the way things are bound in Clojure. It is possible to get the name of a the symbol the fn is bound to, but the fn object itself has no name. Also, fn objects can't take metadata (but this is supposed to be fixed eventually), so what you are looking for is

Re: Parenthesis Inference

2009-12-20 Thread Timothy Pratley
Seeing this is becoming such a popular thread I cannot help but chime in with a little thought of my own: When you read code you are a human compiler. Your brain needs to do the same job as a compiler to figure out how the program works. The human compiler must identify structure to be able to unde

Re: A tale of cond, clauses, and the docs

2009-12-20 Thread Michael Wood
2009/12/20 Mike K : > On Dec 19, 8:27 pm, Sean Devlin wrote: >>  :else was chose because it is simply not nil, and therefor always true. > > I suspected something along these lines soon after I posted.  I did > some more experimenting and discovered that :foo will work just as > well as :else.  So

Can a function determine it's own name at runtime?

2009-12-20 Thread David Cabana
Suppose we define a function called sq: (defn sq [x] (do (println "sq") (* x x))) I wanted sq to print it's own name when run; to make it do so I inserted the name as a string. Is there some way to dynamically determine the name and so avoid using the string? Similarly, is it possible

Re: Second Lisp to Learn

2009-12-20 Thread Harold Ancell
At 02:31 PM 12/20/2009, Sean Devlin wrote: >Hi everyone, >After hacking Clojure for a while, I've come to the conclusion that >studying a second Lisp would help. So, what do the people here >think? What is a good Lisp to study? While my preference here prior to learning about Clojure has been Sc

Re: Second Lisp to Learn

2009-12-20 Thread Jeff Heon
If you're going to try the straight Scheme avenue, you might try the Gambit implementation, which is touted as very fast. http://dynamo.iro.umontreal.ca/~gambit/wiki/index.php/Main_Page A good way to good if you already use Emacs as your IDE. For something different but still Scheme based, there

Re: Second Lisp to Learn

2009-12-20 Thread Martin DeMello
plt scheme seconded. great language, great libraries, great community, great documentation, and under active development. martin On Mon, Dec 21, 2009 at 2:13 AM, Mark Engelberg wrote: > http://plt-scheme.org/ > Use the textbook htdp.org and you will develop a very deep > understanding of how to

Re: Second Lisp to Learn

2009-12-20 Thread Andy Fingerhut
I don't have broad experience with various Lisps, but I have also done some programming in Scheme and Common Lisp. You can program in a functional style in both, or in an imperative style in both. In Scheme, functional style is a bit more idiomatic, so you will find more examples of functional st

Re: Second Lisp to Learn

2009-12-20 Thread Mark Engelberg
http://plt-scheme.org/ Use the textbook htdp.org and you will develop a very deep understanding of how to structure programs in Lisp (and this understanding will transfer to other languages as well). You mentioned that you want to see if there are other ideas worth stealing. Not only does PLT Sch

Re: Parenthesis Inference

2009-12-20 Thread Laurent PETIT
2009/12/20 Alex Osborne > Phil Hagelberg writes: > > "Alex Osborne" writes: > > >> But this is the same "great idea" that everyone who's ever used a lisp > >> since the dawn of programming has come up with and despite numerous > >> attempts, to my knowledge not a single one of them has ever tak

Second Lisp to Learn

2009-12-20 Thread Sean Devlin
Hi everyone, After hacking Clojure for a while, I've come to the conclusion that studying a second Lisp would help. So, what do the people here think? What is a good Lisp to study? Are there particular dialects & distributions that are interesting? The things that are important to me are: A com

Re: Parenthesis Inference

2009-12-20 Thread Laurent PETIT
Peace, brother. And btw, who are you to tell others what they ought to do or not to do ? Regards, -- Laurent 2009/12/20 Charras > can't believe, you guys, WAIST! your time discussing about > parentheses. There are far more interesting things to discuss. Please > don't waist time (time is li

Re: Parenthesis Inference

2009-12-20 Thread Luc Préfontaine
That's a concise and clear way to summarize the issue. If you compare the IDE support required for different languages, the support required to write syntactically correct Clojure code is pretty small compared to others. I do not get it, it's longer and much more painful to write Java code with a

Re: Mapping OOPS concepts to Clojure? Doable or Wrong thinking?

2009-12-20 Thread Amit Rathore
Just for kicks, I wrote a terribly simple implementation of an OO system (with sub-type polymorphism). Here's an example of it in use - http://s-expressions.com/2009/12/10/frumios-a-silly-object-system-for-clojure/ Obviously one wouldn't use it in a real production system (one would use multi-met

Re: Leiningen in Python

2009-12-20 Thread Rob Wolfe
John writes: > Hi Rob, > > I made the changes src/leiningen/jar.clj that you suggested. > Then issued the commands: > > E:\etc\clojure\Leiningen\lein.py clean > E:\etc\clojure\Leiningen\lein.py deps > E:\etc\clojure\Leiningen\lein.py compile > E:\etc\clojure\Leiningen\lein.py jar > E:\etc\clojure

Re: Parenthesis Inference

2009-12-20 Thread Harold Ancell
At 12:09 PM 12/20/2009, Richard Newman wrote: >[...] >I think most of the active Clojure community ranges from not caring to >genuinely liking s-expression notation, And all the way to disliking the replacement of many parens with square brackets in the syntax. That's why I, a pendant who prio

Re: Parenthesis Inference

2009-12-20 Thread .Bill Smith
> can't you understand the reactions?  The Lisp-people have been through > this discussion for what? 20 years, 30 years, 40 years?  And it comes > up in intervalls which feel like once a month (don't nail me down on > the numbers).  Go to comp.lang.lisp and do a search for it.  Really. > There is n

Re: Parenthesis Inference

2009-12-20 Thread Stefan Kamphausen
Hi, On 20 Dez., 18:41, Martin Coxall wrote: > On 20/12/2009 5:39 PM, Richard Newman wrote: > > >> It's better if we can support both. It's never one size fits all. > > > Who is "we"? > > > If you're talking about something *you* want, you can go build it > > I see Clojure is well on the way to bu

Re: Parenthesis Inference

2009-12-20 Thread Richard Newman
Martin, > I see Clojure is well on the way to building a community at least as > repellingly exclusionary as all the other Lisps nobody uses. Thanks for the thinly veiled jab. I've worked on a bunch of libraries, answered a bunch of questions on the mailing list, and attended a few meetups. I

Re: Parenthesis Inference

2009-12-20 Thread Martin Coxall
On 20/12/2009 5:39 PM, Richard Newman wrote: >> It's better if we can support both. It's never one size fits all. > > Who is "we"? > > If you're talking about something *you* want, you can go build it… > I see Clojure is well on the way to building a community at least as repellingly exclusionary

Re: Parenthesis Inference

2009-12-20 Thread Richard Newman
> It's better if we can support both. It's never one size fits all. Who is "we"? If you're talking about something *you* want, you can go build it… -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegr

Re: Parenthesis Inference

2009-12-20 Thread ajay gopalakrishnan
It's better if we can support both. It's never one size fits all. On Sun, Dec 20, 2009 at 11:49 AM, Sean Devlin wrote: > Alex, > > I just thought of something. I think we're all forgetting the amount > of hacking done at the REPL. > > ;This is easy to type > user=>(from (too (many (parens >

Re: Transient Bug

2009-12-20 Thread Sean Devlin
Could we also include some words explicitly stating that the sorted versions are not supported in 1.1.0? Sean On Dec 20, 11:56 am, "Stephen C. Gilardi" wrote: > On Dec 19, 2009, at 7:50 PM, Chouser wrote: > > > I've updatedhttp://clojure.org/transientsto reflect vectors and > > hash-map support

Re: Transient Bug

2009-12-20 Thread Stephen C. Gilardi
On Dec 19, 2009, at 7:50 PM, Chouser wrote: > I've updated http://clojure.org/transients to reflect vectors and > hash-map support of 'transient' in 1.1.0 Hash-sets appear to work in 1.1.0 as well. --Steve -- You received this message because you are subscribed to the Google Groups "Clojure"

Re: Leiningen in Python

2009-12-20 Thread John
Hi Rob, I made the changes src/leiningen/jar.clj that you suggested. Then issued the commands: E:\etc\clojure\Leiningen\lein.py clean E:\etc\clojure\Leiningen\lein.py deps E:\etc\clojure\Leiningen\lein.py compile E:\etc\clojure\Leiningen\lein.py jar E:\etc\clojure\Leiningen\lein.py uberjar and t

Re: Parenthesis Inference

2009-12-20 Thread Sean Devlin
Alex, I just thought of something. I think we're all forgetting the amount of hacking done at the REPL. ;This is easy to type user=>(from (too (many (parens ;Uh-oh user=>to too many nesting levels? This might be an area where the parens are a win. Sean On Dec 20, 10:0

Re: Parenthesis Inference

2009-12-20 Thread ngocdaothanh
I have been studying Clojure for 3 months. My experience: * After knowing about Lisp coding style and indents: parens disappeared * After knowing about reading from inside to outside: Clojure code is more understandable (http://groups.google.com/group/clojure/ browse_thread/thread/144142dcb5586292/

Re: Parenthesis Inference

2009-12-20 Thread Alex Osborne
Martin Coxall writes: > I might try to knock up "optional parens inference for Clojure" and > add in some manner of curly infix as an exercise. It doesn't look like > it will be too hard. Since {} is taken for literal maps, I'd need > something else for curly infix. [|...|], %...%, $...$? Let's

Re: Add whitespace cleanup support

2009-12-20 Thread Stephen C. Gilardi
On Nov 8, 2009, at 6:03 PM, Phil Hagelberg wrote: > (add-hook 'clojure-mode-hook (lambda () (set (make-local-variable > 'before-save-hook) 'delete-trailing-whitespace)) One wrinkle here is that in Clojure "," is whitespace. It would be nice not to strip out trailing commas within doc strings.

Re: Parenthesis Inference

2009-12-20 Thread Martin Coxall
On 20 Dec 2009, at 06:51, ajay gopalakrishnan wrote: > Yes, Martin, please give it a try. Only then can we know if the parenthesis > is real issue or not. There is no point arguing about it. The only > disadvantage is that, over time, people will forget that it is actually a > list. But, hey,

Re: Parenthesis Inference

2009-12-20 Thread Martin Coxall
On 20 Dec 2009, at 07:27, ajay gopalakrishnan wrote: > Precedence is an overrated thing. You dont run into that issue every day. Yeah, only every time you write a simple mathematical expression. And how often does that happen when you're programming?! Martin -- You received this message bec

Re: Parenthesis Inference

2009-12-20 Thread Martin Coxall
> > > > As for Ten parentheses, i do not see a single one. Noone notices > starting parens because they are markers saying "this is a function". > And of course noone notices ending parens because they are for your > IDE, not for the human. This is I like, I'd never thought about S-exprs this

Re: Parentheses

2009-12-20 Thread Avital Oliver
+ Paredit -- http://wave.theWE.net http://twitter.com/theWE_ On Sat, Dec 19, 2009 at 10:17 PM, ddyer wrote: > Parens are really a non-issue once you are using an editor > that counts them and highlights matching appropriately. > > -- > You received this message because you are subscribed to t

Re: Parenthesis Inference

2009-12-20 Thread Piyush Ranjan
I may be way off here and if I am feel free to flame! isn't it true that lisp being an AST transfers the overhead of parsing to humans ? Let me restate that: lisp manages to skip a step that other languages do, i.e. parsing the language to AST ? I understand that it gives you great power but at th

Re: Advice for someone coming from an OO world?

2009-12-20 Thread ajay gopalakrishnan
I don't know if anybody mentioned this before, (it was not suggested to me when I asked a similar question earlier), but Stuart's explanation on OOP in Clojure is the best I've ever found. It's simple, clear and takes on each of the 4 pieces nicely. http://blog.thinkrelevance.com/2009/8/12/rifle-o

Re: A tale of cond, clauses, and the docs

2009-12-20 Thread Laurent PETIT
2009/12/20 ataggart > > > On Dec 19, 8:02 pm, Mike K wrote: > > [:foo] evaluates to true by virtue of being a keyword. > > To be precise, it evaluates to true by virtue of it not being nil nor > boolean false; being a keyword doesn't really have anything to do with > it. > To be even more preci

Re: mapmap

2009-12-20 Thread Konrad Hinsen
On 18 Dec 2009, at 15:03, Sean Devlin wrote: > The last entry is the most relevant to a map-utils library. Check out > the visitor stuff: > > http://groups.google.com/group/clojure-dev/msg/6c1bbce17cafdf52 > > The idea is to take your generic functor application idea and put it > on steroids. I'

Re: A tale of cond, clauses, and the docs

2009-12-20 Thread ataggart
On Dec 19, 8:02 pm, Mike K wrote: > [:foo] evaluates to true by virtue of being a keyword. To be precise, it evaluates to true by virtue of it not being nil nor boolean false; being a keyword doesn't really have anything to do with it. user=> (cond nil :n false :f (Object.) :t) :t -- You rec