Hacker News new | past | comments | ask | show | jobs | submit | pmatos's comments login

I just happened to suffer an ACL tear 5 weeks ago. A week later I had ligamys implanted to great success. Four weeks post-op not only can I walk, I can also cycle. I am surprised this is not mentioned in the article. It is true ligamys only works if done soon after the tear but it would seem to my naive few that it would cover most cases.


I am curious - nice interface BTW. Is the code for this anywhere?


That's something I have thinking about lately. It would be interesting to know if there's any prior work of implementing delimited continuations on MLIR.


Ready Player One?


> We all leave behind a "small" but far-reaching legacy that ripples out from our short lifetime. Each of the thousands of interactions we have with with other people and our general environment have a tiny but real impact that doesn't necessarily diminish to zero after we die.

What you do in life, echoes in eternity.


We (https://linki.tools) use it for our main development tools product - 100% Racket in production. Check S10 (https://linki.tools/s10).

Racket is an absolutely gorgeous language. It's the kind of language that might look complicated but the important thing is to start with the basics. Yes, there are complex features in the language and big words that might be scary : continuations, impersonators, collapsible contracts, macros. However most of the time you don't really need these features.

Even the basic features of the language are enough to make your software shine. After you have a basic grasp, start to tackle other features of the language refactoring your code as you go.

Another great feature is the community. racket-users mailing list (hosted in googlegroups) is a great place to start asking questions.

You'll have a lot of fun. Enjoy your time in Racket lang. #not-a-typo


So, I am an experienced developer but new to Lisp based stuff, which seems to be what racket is based on. Can you suggest any books to learn racket.

edit: Spelling


Seems like the most common answer to this might be SICP (Structure and Interpretation of Computer Programs -- you'll find course videos pretty easily from Google; the ones from the authors are really great). Note that it's based on Scheme, which is a ancestor of Racket, but Racket has a language pack that papers over the differences and works with the code from the book. Official course website: https://mitpress.mit.edu/sites/default/files/sicp/index.html

You might, as a novice coming to Racket, find "Realm of Racket" to be more approachable as an intro: http://www.realmofracket.com/


> Seems like the most common answer to this might be SICP

Please don't. SICP is beautiful and all, but it's neither an intro nor practical/immediately useful. There's a lot of enlightenments to be had by reading it, but they have very little to do with Racket specifically. IMO, it's a bad book if your purpose is learning Racket.

> You might, as a novice coming to Racket, find "Realm of Racket" to be more approachable

Or, as an experienced programmer, be bored to tears by the slow pacing and didactical style. It's a great intro to programming and to Racket, but more focused on the former, which makes it ill suited for experienced devs who want to learn Racket.


Please don't what, have an opinion?

I read SICP as an experienced programmer and I didn't find it impractical at all; in fact, it kickstarted my interest in other lisps.

I read Realm of Racket as an experienced programmer (after knowing Common Lisp and Clojure well) and it was entertaining and, yes, a gradual introduction to Racket.

I'm sorry if you disagree, but was answering the question that was given with a couple thoughts that might be beneficial. I'm glad you feel confident enough in your interpretation of what was being asked and the OP's personal background and motivation to flame someone else without, I don't know, answering the question.

EDIT: I see you did answer him below, but my general response is still valid.

EDIT 2: Your response makes more sense given context. Sorry I got internet angry a little too quickly.


And on a more general note - let's leave the misunderstanding to the separate thread - I'm glad you liked the books! I'm not saying you can't enjoy them - far from it - but if your goal is to just learn Racket quickly (where I interpreted "experienced dev" as "short on time working adult") then they are not the best resource for that. SICP is not even about Racket at all and RoR includes a lot of introductory material you wouldn't need. Instead of learning by accident, ie. reading weakly related material and hoping that an understanding will somehow form (which seemed to be default mode in education), I prefer using materials which are strictly on topic and are dense enough to be efficiently absorbed, but not so dense that it takes a day to go from one page to another. And to that my answer is: Wiki, tutorial&cheatsheet and the docs.

What is obvious is that YMMV - I'm just saying what I'd do if I wanted to efficiently learn Racket today. That's it.


Yes, I totally agree it comes down to YMMV. Everyone's learning style is different -- some like dense documentation, some like book-style progressive walkthroughs. I certainly didn't learn CL by reading the HyperSpec, for instance... :-)


Yeah, that's why I included the "but not too dense" part ;) Personally, I actually did learn Common Lisp mostly from HyperSpec (plus reading code - I used StumpWM for a while and wanted to script it), but at that point it was my 4th Lisp (after PLT Scheme/Racket, Emacs Lisp and Clojure) and I was well prepared for it, I think, because of my focus in PL research (hobbyist). I certainly wouldn't say that HS is the way to go for new CL programmers without special preparation.

But, Racket reference docs are not a language definition like HS, RNRS or the Dylan book. The tutorials especially are quite friendly, but the reference is also full of examples, overviews, summaries and introductions, along with the links to the Guide - which can further help in comprehending the content (but only if needed, otherwise they stay out of the way). They're basically amazingly well done and I think more people should read them, if only to learn something about how to write docs and technical prose in general... :)


My "please don't" was directed at the potential learner as in "please don't use this particular book if all you want is learning Racket" - not at you, in any way.

Also, I said it's a bad book for learning Racket In My Opinion. Of course it's all based on opinions and I just presented my own. No flame intended, at all.

EDIT: sure, no problem :)


> SICP

Thank you for this. Time and again I have come across this book, but always assumed that it was something like The art of Programming series, so never even opened it.

Going through the online version now.


First thing is to get rid of the syntax feeling unfamiliar. As a beginner, you need 3-4 chapters of a book for this. As an experienced dev, what you need is an overview, a cheatsheet, and reference docs.

I think you can get an overview from the Wikipedia on S-expressions[1], then there's Dylan cheatsheet[2] which translates Scheme syntax into equivalent forms in a language with more "normal" (infix) syntax, which also happens to be object oriented, so it should feel quite familiar(EDIT: thinking about it some more, maybe Dylan is still a bit too far from Algol-like syntax, but I can't find such right now). Then, there's Racket cheatsheet[3], and the Racket Tutorial[4]. After writing some Hello Worlds and getting familiar with the syntax, start branching into interesting libraries (like plot, pict; see the list on [5] or search on [6]). See `raco pkg` docs[7] for installing additional libs.

Advice about editor: find an S-exp support plugin for your editor and just go with that until you want some graphics support, in which case try DrRacket. Advice about weird things: try not to focus on weird things which are historical incidents - you can learn why CAR and CDR are called that way later, just remember that they are first/rest operations on lists.

After this I think Beautiful Racket along with the rest of the Racket docs should be enough to learn most of it. You can also skim How to Design Programs (linked at the end of tutorial) for intro to contracts.

[1] https://en.wikipedia.org/wiki/S-expression

[2] https://opendylan.org/documentation/cheatsheets/scheme.html#...

[3] https://docs.racket-lang.org/racket-cheat/index.html

[4] https://docs.racket-lang.org/quick/index.html

[5] https://docs.racket-lang.org/

[6] http://pkgs.racket-lang.org/

[7] https://docs.racket-lang.org/raco/index.html


Regarding s-expressions, there are some perfectly reasonable alternatives ( http://chriswarbo.net/blog/2017-08-29-s_expressions.html )

For example:

https://docs.racket-lang.org/sweet/index.html

https://www.draketo.de/proj/wisp/

Although I prefer to embrace the s-expressions :)


Yeah, but that's not Racket (technically, the first one is, but it overrides the reader; the second is a Python-based transpiler of some syntax into S-exps) - it won't help someone new to the language, if only because it adds yet another dependency and mental conversion to keep in mind when reading examples and such. They're there if you want them, though.


Wisp seems to override the reader too (so no transpiler needed) https://www.draketo.de/proj/wisp/src/94bae1032ef07e441a942c5...

I agree about the extra dependency and indirection; although the syntaxes (syntaxen?) are equivalent, so examples can be translated automatically if copy/pasted.

> They're there if you want them, though.

Yep, although as I wrote on my blog:

"Whilst the parenthesis-heavy format of s-expressions is not necessary, it usually crops up in anything discussing Lisp and its derivatives, simply because it's much more popular than these alternatives. To me, that mostly indicates that concerns about "too many parentheses" are really a non-issue, despite being made by many who are new to the format."


Very well said, and a good post, BTW. I have something similar, from when I started working with Clojure: https://klibert.pl/posts/tools_for_lisp_syntax.html


Check out "How to design programs" (the second edition is said to contain significant improvements). Book is available for free online.

It's discussed once every while on HN: https://hn.algolia.com/?q=htdp


Link to the book directly is: https://htdp.org


I just want to point out that you can use other editors: emacs, vim, vs code. If you really want to stay with DrRacket, feel free to open a feature request about this on the github racket/DrRacket repo.


Actually, not using paredit (or equivalent) for editing Lisps is something I'm unable to do anymore. I sometimes use DrRacket for debugging, but racket-mode and paredit make Emacs hundreds times more efficient for me.


Am I the only one who can't read this because it's behind a paywall?


If you go to https://www.drudgereport.com/ then right click one of the hyperlinks and select Inspect you can change the URL in the HTML to the URL for this article. When you click the link you will be able to read the full article as WSJ whitelists drudge report.


you can paste the link after outline.com, which will allow you to read the text of the article, so outline.com/your-link-here (or just visit outline.com and paste the link into the box on the home page).


We, at Linki Tools [0], use Racket for our main product: S10 [1]. Not hiring at the moment but most likely will in the near future. I always hire remote (contracting up to now) and by the time I have to hire remote for racket I don't think I will have any problems finding a fine dev.

If you're in the Frankfurt area, I will be presenting at the first After Work Racket [2] on Thursday, the 8th. Come join us.

[0] https://linki.tools [1] https://linki.tools/s10 [2] https://www.meetup.com/After-Work-Racket/events/253939676/


Hi,

I found your meetup and would really like to join - too bad that the company I work for is holding a conference at this day (www.talentthinking.de). So I may join for Episode 2.


But Wikipedia has no problems writing Sarajevo. Why is that?


Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: