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

This is a neat system, but I have to say Racket has been dead on easy and just works on Linux and Windows. I feel like I am starting to be the Racket Evangelist but it is such a great experience after javascript, Python, Haskell and old school Assembly and Pascal.


Racket is not Common Lisp which is what Roswell is built for, so why bring it up here?

I've used Racket ever since it was called PLT Scheme but I've moved on to Common Lisp for the past 5 years, once I realized that there is basically nothing that Racket does better than CL, and a lot that it does worse, interactive development being the most important.

SBCL being 2-4x faster without declarations or special optimization passes (in my own code I could get 10x the speed of Racket by doing declaration passes) is also immensely useful.

Not to mention, the thriving ecosystem around Common Lisp. Quicklisp has helped with the explosion of popularity and there are well-maintained good libraries for the vast majority of tasks one would like to do. Most of these libraries are also portable across CL implementations which is something one doesn't see in Scheme-land (besides the lack of libraries to begin with).


> once I realized that there is basically nothing that Racket does better than CL

Really? What about syntax-case? Typed-Racket? Guaranteed TCO? There's a bunch of stuff Racket does better than Common Lisp.


Well bringing it up here since it is in the Lisp Family. Also I would disagree about Nothing Racket does better but that is opinion.

Clearly my whole point is that Racket does inter-operability very well in Linux and Windows, which this link was about bring that to Common Lisp.


That's a category error. Racket is a single language/system/implementation. Common Lisp is a family of very different implementations.

> Racket does inter-operability very well in Linux and Windows

Various Common Lisp implementations do inter-operability very well, too. Some even quite a bit better than Racket.


But the reason I brought up Racket has to do with the Title: "A Lisp interpreter ..." The title wasn't a Common Lisp ... and I just said I found Racket to be flawless in that regard since TECHNICALLY Racket is a Lisp which I find to be better for my personal programming especially with FP, though CL has great OOP.


> TECHNICALLY Racket is a Lisp

Shouting alone won't convince anyone. Note that there are people who hesitate to call Racket a Scheme (http://stackoverflow.com/a/3358638/124319). I would consider Julia to be closer to Common Lisp than Scheme. By the way, are you sure you wouldn't have talked about Racket if the title was different?

In fact this really does not matter: nobody mind if you talk about Scheme, or Haskell, or any other language. In all other threads people can't refrain from talking about Rust or D whenever someone mentions C++ (for example). However here I fail to see the link between Roswell and your comment.

> I found Racket to be flawless in that regard

With regard to installing different implementations?

> I feel like I am starting to be the Racket Evangelist

Indeed.


> Shouting alone won't convince anyone.

There is no bold. So your saying Racket isn't a Lisp? I think you might be on a tangent right now that isn't true. I am guessing your reacting to something different. Racket 100% is a Lisp it isn't in the group called Common Lisp but it certainly is a Lisp.


> "A Lisp interpreter ..."

You a not paying attention.

The title is 'A Lisp installer...' - not an 'interpreter'. Pay attention what it is about. The page also says: 'Roswell - Common Lisp environment setup Utility'

> and I just said I found Racket to be flawless in that regard since TECHNICALLY Racket is a Lisp

Can Racket set up a Common Lisp project? No. That's what this tool is about.

Racket is a descendant of Lisp. Not Lisp. It is nowadays its own language.

> which I find to be better for my personal programming especially with FP, though CL has great OOP.

The topic was about a new installer for Lisp, not an 'interpreter' and not 'Racket'.

Racket is great - this site even uses it - but the relevance here is near zero.


I'm learning to code, and switched from "Learning Python the hard way", to "learn Python programming games" (much much better IMHO for raw beginners) to follow "How to design Programs" and passing to racket. The environment is so much easier to start with, installation, tools (DrRacket is awesome!), deployment of programs (easy to wrap in an exe), very good documentation..

I see the usefulness of Python and I like it, but for my needs, Racket is just perfect. I'm not learning to get a job as a programmer or create heavy production code, just develope some small side projects for fun. I find that Racket helps me with this out of the box easily.

Edit: some mistakes and punctuation.


As gammafactor notes, Racket is not Common Lisp. Nor does it have any other implementations, free or proprietary. That's one of the great advantages of Common Lisp: a single standard, implemented multiple times by multiple people, running on many platforms.

Racket is definitely neat. I don't know for certain, but I hope it learns from some of the same lessons that CL learned from. Still, why not use the standardised, industrial-strength Lisp?


But the title of the post wasn't a Common Lisp ... it was a Lisp interpreter which technically Racket is a Lisp.


> But the title of the post wasn't a Common Lisp ... it was a Lisp interpreter which technically Racket is a Lisp.

Common Lisp is Lisp: it's a standard which specifies the minimum required functionality of a Lisp implementation. Anything which doesn't meet that standard isn't Lisp.

Scheme, Racket, Hylang, Clojure may each be a Lisp, but none is Lisp (unless one of them has bothered to implement the Common Lisp standard).


I also like what I see every time I visit Racket but the fact that I'm not aware of any other project except Racket itself which uses the language and tools gives me the odd "why is this not more appealing - what's the hidden catch" tingling. Even OCaml has several fairly well known programs people use.


Its because of two misconceptions

1) People's perceptions that Racket is an educational program

2) It's hard to communicate the unique qualities of Racket. "Racket is a full-spectrum programming language. It goes beyond Lisp and Scheme with dialects that support objects, types, laziness, and more. Racket enables programmers to link components written in different dialects, and it empowers programmers to create new, project-specific dialects. Racket's libraries support applications from web servers and databases to GUIs and charts."

A programming language for programming languages isn't an "Oh I get it right away.".


1. This perception comes from the fact that it is heavily used as an educational program. That there of course nothing bad about this.

2. The text you quote precisely communicate what Racket is: a language marketed like a programming-language research toolbox and not like a day-to-day programming environment. I don't really think that Racket developers really try to sell the language in the same way Scala or Clojure ones do.

Also, a lot of people actually "get it", and choose not to use the language.


Doesn't Arc run on top of Racket... so that Hacker News itself could count as such a project?


Does Racket offer types or C interop? I love lisp but am missing those in Clojure.


http://docs.racket-lang.org/inside/

> This manual describes the C interface of Racket’s run-time system. The C interface is relevant primarily when interacting with foreign libraries as described in The Racket Foreign Interface; even though interactions with foreign code are constructed in pure Racket using the ffi/unsafe module, many details of representations, memory management, and concurrency are described here. This manual also describes embedding the Racket run-time system in larger programs and extending Racket directly with C-implemented libraries.



I'm curious how much Typed Racket is actually used in the wild. I wonder if it is as esoteric as, for example, Typed Clojure, which is falling a bit out of favor for lots of folks. Would I be likely to find a lot of people who use Racket in this way, or is it a niche part of the community?


Types for clojure are a thing and are helping to clojures adoption by industry.

http://typedclojure.org/


It is not really the thing you think it is. A lot of high-profile teams have given up on typedclojure in favor of run-time checks like the Prismatic tools.




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

Search: