HNHacker News
TopNewBestAskShowJobs

samth

1,710 karma · joined June 8, 2010

I'm an Associate Professor in Computer Science at Indiana University.
submissionscomments
samth··on A Tour of the Lisps
It is indeed the case that the student languages in Racket use cons only for lists. Improper lists are an extra complexity that people just learning to program don't need.
samth··on What Happened to David Graeber?
I recommend this seminar on the book, which contains both strong critiques and a lot of interesting and positive discussion. https://crookedtimber.org/category/david-graeber-debt-semina...
samth··on FunSearch: Making new discoveries in mathematical sciences using LLMs
This is not correct about the current state of the art in program synthesis, which is a field that's made a lot of progress recently. Unfortunately people coming from the AI world tend to ignore that work entirely and imagine they're the only people with new ideas since the 80s.
samth··on I accidentally a scheme
I believe that is indeed why.
samth··on Racket branch of Chez Scheme merging with mainline Chez Scheme
Here's the relevant part of the recording: https://youtu.be/va_uBcX9bNM?si=24C1L_bs878PS6pv&t=1400

What I said was (in part) "I am sure there are ways we can improve to attract people inside of academia, outside of academia, in open source, in commercial development, and we want to improve in all of those ways".

samth··on Racket branch of Chez Scheme merging with mainline Chez Scheme
I didn't read it as complaining but I think your impression was not what I was aiming to say.
samth··on Racket branch of Chez Scheme merging with mainline Chez Scheme
It is certainly not new. There are some things that Racket doesn't allow, but they are very much not "compile new code". For example, you can't replace the meaning of existing modules at runtime, nor can you modify the implementation of functions that are on the stack already (both things that some runtime systems for some languages allow). But `eval` has been there since the beginning.
samth··on Racket branch of Chez Scheme merging with mainline Chez Scheme
Both Chez and Racket allow you to compile new code at runtime.
samth··on Racket branch of Chez Scheme merging with mainline Chez Scheme
It means that Matthew Flatt will become a committer to Chez Scheme, and they plan to include Racket-driven changes. Of course, we plan to maintain Chez Scheme's high standards for quality and preserve all the things about it that are good outside Racket as well.
samth··on Racket branch of Chez Scheme merging with mainline Chez Scheme
I don't have notes of what I said (recording will be up soon) but that isn't what I was trying to say at all. We value use in industry and have made significant effort to enable it (like relicensing everything). It is true, of course, that we're academics, and so we need to learn from others about how to better enable industrial use of Racket, but that is not because we don't care about it.
samth··on Abstract Interpretation in a Nutshell
This article is by one of the two inventors of abstract interpretation. Maybe you didn't find it helpful but it is definitely accurate.
samth··on Rash – The Reckless Racket Shell
It's a joke. Olin Shivers is currently a professor in CS at Northeastern University.
samth··on The Design Principles of the Elixir Type System [pdf]
Every type is inhabited in most type systems for general-purpose programming languages. For example, to inhabit a type T in Haskell syntax (the same approach works in basically any language):

    f :: () -> T
    f x = f x
    
    myT = f ()
What this shows is that Haskell types are not sound as a logic, but that doesn't mean they aren't a fine type system.
samth··on Re-Evaluating GPT-4's Bar Exam Performance
GPT-4 is clearly very impressive, they should show it off honestly and transparently. Instead OpenAI clearly treats these evaluations as a part of their sales and marketing, with inflated claims to match.
samth··on The Cerberus C semantics [pdf]
I think you are confused about who is advocating what here. Pointer provenance is a real thing that has already happened and that compiler developers want. Sewell's group has been working (eg in this thesis) to put that idea on a consistent foundation, and figure out how to make it compatible with the programs you care about.
samth··on Pain points of teaching computer science
I've been teaching intro CS for 20 years, but I totally disagree that this is the #1 pain point. The biggest paint point not discussed is that programming is challenging to learn and requires a lot of effort from students, but all the pain points in the article are real.
samth··on Prehistoric timeline in Africa pushed back by more than 10M years
A quick investigation on Wikipedia suggests that there are two competing schools of thought:

- the rainforest was somewhat smaller but still intact (contra the OP)

- the rainforest was reduced to small refuges separated by grassland

samth··on What does a research grant pay for?
An important point to understand, though, is that taking a vacation for the entire summer is not really an option, no matter how few grants you have. You're expected to do more than that over the summer even though supposedly you aren't paid for it.
samth··on What does a research grant pay for?
This is an excellent breakdown. The one thing I would quibble with is the characterization of summer salary. It's better to think of the 9-month pay idea as an accounting trick that has two purposes: 1. A benefit for faculty, since they get to be paid extra if they get grants. 2. An accounting approach for the NSF to limit how much any one faculty member can get in grant funding and account to Congress that the faculty are actually participating in the research. It does, as the article says, create the possibility of significant swings in compensation, similar to a bonus scheme.
samth··on Small Project Build Systems (2021)
Note that the rattle system Neil talks about works cross-platform. It uses LDPRELOAD to make it work.
samth··on Tesla stock marks lowest close in years as investors worry about Musk’s focus
I've had a Bolt for more than a year (it's a great car) and I don't know what Electrify America is. (Looked it up, it's a network of charging stations)
samth··on Racketfest 2023
Hi! You might enjoy the Racket leaderboard: https://racket.discourse.group/t/advent-of-code-2022-racket-...
samth··on Amazon's Alexa on Track to Lose $10B This Year
Supposedly they had 10k people working on it. Over 5 years that only 200k per person per year just to account for the whole 10 billion.
samth··on How to Design Programs
They're similar in length, but the First Edition covers somewhat more material, in particular mutation, while the Second edition has more details and exercises, and covers the 2htdp/universe functional animations that are new for that edition.
samth··on GitHub Copilot is generally available
Someone from GitHub reached out to me because of this comment and said they were fixing it. The problem is that Racket's license file isn't simple enough for their automated tools.
samth··on The Journey of Three African Wild Dogs
From the NYT comments, here's a map of their route: https://scarab.msu.montana.edu/screel/EWD%201355%20map.jpg
samth··on GitHub Copilot is generally available
Yeah that just redirects me to the paid page. I do wish the criteria were a little more transparent.
samth··on GitHub Copilot is generally available
At a minimum, 4.3k stars is not enough, because I don't qualify.
samth··on Ask HN: Advice for Racket ORM college independent work
Here are some ORM-related libraries: - https://docs.racket-lang.org/mongodb/ORM_Operations.html - https://docs.racket-lang.org/racquel/index.html - https://github.com/adjkant/sql-sourcery - http://tech.perpetua.io/2022/01/generating-sqlite-bindings-w... - https://docs.racket-lang.org/deta/index.html

I think the last one, deta, is the most mature.

samth··on How not to teach recursion (2021)
I think the closest short answer is that recursive definitions are just a special case of inductive ones for writing functions.
← PreviousPage 2 of 14Next →