Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Is the ‘lozenge’ a Racket-ism or is it unique to this project? I understand the logic around using a character that’s hardly used in regular writing – to avoid escaping – but it seems as though it would be hard to use in practice.


It's unique to Pollen. In my experience I just remapped a key to insert it and forgot about it.


I might be remembering wrong since it's been a while since I went through the tutorial, but I think you can use any character you want for the delimiter because lisp. He just likes the lozenge.


Yeah, even just <> would be better.


It’s a racket-ism to use unicode characters wherever possible, yes.

Racket by default also doesn’t use the keyword "lambda", but instead uses "λ".

You can obviously use something different, if you want to, but the default, and recommended solution, is using unicode characters.

As Racket is frequently written in the DrRacket IDE, this also makes sense.


> Racket by default also doesn’t use the keyword "lambda", but instead uses "λ".

I'm not sure that's true:

    Welcome to Racket v6.10.1.
    > (define foo (lambda (x) (+ x 1)))
    > (foo 1)
    2


As I mentioned, both are possible, but (λ ...) is strictly preferred.


This is certainly not the case. Some, but by no means all, of the core maintainers prefer the unicode glyph, but the vast majority of the code uses a spelled-out lambda.

In my current checkout of the codebase, I see the following:

    ~/src/racket/racket/share/pkgs$ ag lambda **/*.rkt | wc -l
    1041

    ~/src/racket/racket/share/pkgs$ ag λ **/*.rkt | wc -l
    163
Note also consistent usage of spelled-out lambda in the Racket style guide, https://docs.racket-lang.org/style/.


I made a mistake, believing that `ag` could handle extended glob syntax. The real numbers are:

    ~/src/racket/racket/share/pkgs$ find . -iname '*.rkt' | xargs ag lambda | wc -l
    33589

    ~/src/racket/racket/share/pkgs$ find . -iname '*.rkt' | xargs ag λ | wc -l
    16722
Glyph λ is more common than I thought, but still heavily outnumbered by spelled-out lambda.


I am using lambda as I hate small symbols. I have to stop and process what λ is.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: