6 ms·
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
by baldfat 11y ago
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.
- hellofunk 11y agoDoes Racket offer types or C interop? I love lisp but am missing those in Clojure.
- baldfat 11y agohttp://docs.racket-lang.org/inside/ 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.
- mbrock 11y agoYep. https://docs.racket-lang.org/ts-guide/ https://docs.racket-lang.org/ts-guide/ http://docs.racket-lang.org/foreign/ http://docs.racket-lang.org/foreign/
- hellofunk 11y agoI'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?
- deleted 11y ago[deleted]
- Quasimoto3000 11y agoTypes for clojure are a thing and are helping to clojures adoption by industry. http://typedclojure.org/ http://typedclojure.org/
- hellofunk 11y agoIt 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.
- gammafactor 11y agoRacket 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).
- baldfat 11y agoWell 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.
- lispm 11y agoThat'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.
- baldfat 11y agoBut 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.
- omegant 11y agoI'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.
- fsloth 11y agoI 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.
- mbrock 11y agoDoesn't Arc run on top of Racket... so that Hacker News itself could count as such a project?
- baldfat 11y agoIts 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.".
- junke 11y ago1. 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.
- zeveb 11y agoAs 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?
- baldfat 11y agoBut the title of the post wasn't a Common Lisp ... it was a Lisp interpreter which technically Racket is a Lisp.
- wtbob 11y ago> 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).