Huh.  Isn't a unicode composition symbol harder to type than comp?  If it's
for readability, I'd rather go with the emacs hacks.

On Tue, Nov 16, 2010 at 11:54 AM, Alan <a...@malloys.org> wrote:

> Found it. See
> https://github.com/hiredman/odds-and-ends/blob/8a84e6ddbad9d71f714ba16c3e1239633228a7eb/functional.clj#L94
>
> On Nov 16, 10:06 am, Alan <a...@malloys.org> wrote:
> > Ask on #clojure about this. Someone (hiredman, I think?) has a macro
> > that rewrites code using some funky unicode characters. I can't find
> > it at the moment, but it might be what you're looking for.
> >
> > On Nov 16, 9:51 am, "Eric Schulte" <schulte.e...@gmail.com> wrote:
> >
> > > Just to follow up, I'm now using the following to pretty up Clojure
> code
> > > in Emacs
> >
> > > #+begin_src emacs-lisp
> > >   ;; symbols for some overlong function names
> > >   (eval-after-load 'clojure-mode
> > >     '(font-lock-add-keywords
> > >       'clojure-mode
> > >       (mapcar
> > >        (lambda (pair)
> > >          `(,(car pair)
> > >            (0 (progn (compose-region
> > >                       (match-beginning 0) (match-end 0)
> > >                       ,(cadr pair))
> > >                      nil))))
> > >        `(("\\<fn\\>" ,(make-char 'greek-iso8859-7 107))
> > >          ("\\<comp\\>" ?∘)
> > >          ("\\<partial\\>" ?þ)
> > >          ("\\<complement\\>" ?¬)))))
> > > #+end_src
> >
> > > I think the results look quite nice, a small example is attached
> >
> > >  abbrev-function-names.png
> > > 5KViewDownload
> >
> > > Best -- Eric
> >
> > > "Eric Schulte" <schulte.e...@gmail.com> writes:
> > > > Hi Paul,
> >
> > > > Thanks for sharing this.  It seems like the best compromise between
> the
> > > > desire to keep my code brief (at least to my eyes) without wanting to
> > > > introduce my own custom function names for global functions.
> >
> > > > If you don't mind I'd like to add this to my fork of the Emacs
> Starter
> > > > Kit (will credit you as author).
> >
> > > > Best -- Eric
> >
> > > > Paul Hobbs <paul.mcdill.ho...@gmail.com> writes:
> >
> > > >> Well, for those who use emacs, you could always make it *look* like
> it was
> > > >> pretty... For example:
> >
> > > >> (eval-after-load 'clojure-mode
> > > >>   '(font-lock-add-keywords
> > > >>     'clojure-mode `(("\\<fn\\>"
> > > >>      (0 (progn (compose-region
> > > >> (match-beginning 0) (match-end 0)
> > > >> ,(make-char 'greek-iso8859-7 107)) ;; a lambda
> > > >>        nil)))
> > > >>     ("\\<comp\\>"
> > > >>      (0
> > > >>       (progn (compose-region
> > > >>       (match-beginning 0) (match-end 0)
> > > >>       "∘ ")
> > > >>      nil)))
> > > >>     ("\\<partial\\>"
> > > >>      (0
> > > >>       (progn (compose-region
> > > >>       (match-beginning 0) (match-end 0)
> > > >>       "𝒫 ")))))))
> >
> > > >> On Mon, Nov 15, 2010 at 5:19 PM, Cyrus Harmon <
> cyrushar...@gmail.com> wrote:
> >
> > > >>> I think the minimal character count for composition and partial
> functions
> > > >>> in haskell are some of the reasons that haskell code is so
> impenetrable to
> > > >>> non-haskell hackers. Feel free to rig up crazy unicode characters
> to any
> > > >>> identifier you want in your own code, just don't ask me to read or
> debug any
> > > >>> of it.
> >
> > > >>> On Nov 15, 2010, at 2:12 PM, Paul Hobbs wrote:
> >
> > > >>> Coming from Haskell, where composition and partial functions are
> cheap and
> > > >>> free in terms of character count, it is actually pretty
> discouraging to have
> > > >>> to spell it out in Clojure for the same effect.  Some of the cases
> where you
> > > >>> "should" be using multiple expressions in Clojure would be
> perfectly clear
> > > >>> in Haskell as one expression...
> >
> > > >>> On Mon, Nov 15, 2010 at 11:37 AM, Sean Corfield <
> seancorfi...@gmail.com>wrote:
> >
> > > >>>> On Mon, Nov 15, 2010 at 10:26 AM, Alan <a...@malloys.org> wrote:
> > > >>>> > The one that bugs me is complement - such a long name for a
> commonly-
> > > >>>> > useful function. I often wind up defining ! as an alias for
> > > >>>> > complement, but maybe others will think that is poor style.
> >
> > > >>>> Possibly because bang functions indicate "Here be dragons" in
> terms of
> > > >>>> mutating state? e.g., set!
> >
> > > >>>> Are you really using complement a lot? I guess I would define an
> alias
> > > >>>> for the complement-ed function or use not in expressions...
> > > >>>> --
> > > >>>> Sean A Corfield -- (904) 302-SEAN
> > > >>>> Railo Technologies, Inc. --http://getrailo.com/
> > > >>>> An Architect's View --http://corfield.org/
> >
> > > >>>> "If you're not annoying somebody, you're not really alive."
> > > >>>> -- Margaret Atwood
> >
> > > >>>> --
> > > >>>> 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
> with
> > > >>>> your first post.
> > > >>>> To unsubscribe from this group, send email to
> > > >>>> clojure+unsubscr...@googlegroups.com<clojure%2bunsubscr...@googlegroups.com>
> <clojure%2bunsubscr...@googlegroups.com<clojure%252bunsubscr...@googlegroups.com>
> >
> > > >>>> For more options, visit this group at
> > > >>>>http://groups.google.com/group/clojure?hl=en
> >
> > > >>> --
> > > >>> 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
> with
> > > >>> your first post.
> > > >>> To unsubscribe from this group, send email to
> > > >>> clojure+unsubscr...@googlegroups.com<clojure%2bunsubscr...@googlegroups.com>
> > > >>> For more options, visit this group at
> > > >>>http://groups.google.com/group/clojure?hl=en
> >
> > > >>>  --
> > > >>> 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
> with
> > > >>> your first post.
> > > >>> To unsubscribe from this group, send email to
> > > >>> clojure+unsubscr...@googlegroups.com<clojure%2bunsubscr...@googlegroups.com>
> <clojure%2bunsubscr...@googlegroups.com<clojure%252bunsubscr...@googlegroups.com>
> >
> > > >>> For more options, visit this group at
> > > >>>http://groups.google.com/group/clojure?hl=en
> >
> >
>
> --
> 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 with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com<clojure%2bunsubscr...@googlegroups.com>
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
>

-- 
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 with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to