remember
srgn
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
remember
-
Racket Language
Racket is my favorite language. It's fast, practical, has solid foundations and an extremely nice concurrency story (based on concepts borrowed and extended from Concurrent ML). It has an excellent documentation system, with an integrated package ecosystem, which means that most packages have high quality documentation with cross-references. It has a great backwards-compatibility story -- a lot better than Python's, for example, which I use in my current dayjob. So, my impression of the commenters saying it's too academic or not practical is that they probably never dove deeply enough, or they are students who were only exposed to the teaching languages in the past. It's definitely not perfect: the community is small, the runtime has a high memory baseline, parallelism requires spinning up a Racket VM per system thread, among others, but these are things that will improve over time.
In the past several years, I've:
* built & run an e-commerce site written in Racket[1]
* built a native macOS and iOS reminders app, available on the App Store [2, 3, 4]
* built a cross-platform desktop client for Apache Kafka [5, 6, 7]
* built a `#lang` for Lua [8]
Among[9] other[10] things[11]. I think that's all pretty practical stuff!
[1]: https://defn.io/2019/08/20/racket-ecommerce/
[2]: https://defn.io/2020/01/02/ann-remember/
[3]: https://defn.io/2024/04/09/ann-remember-for-ios/
[4]: https://github.com/bogdanp/remember
[5]: https://defn.io/2022/11/20/ann-franz/
[6]: https://defn.io/2023/10/15/ann-franz-for-windows/
[7]: https://defn.io/2023/08/10/ann-franz-source-available/
[8]: https://defn.io/2022/11/12/ann-racket-lua/
[9]: https://docs.racket-lang.org/http-easy/index.html
[10]: https://docs.racket-lang.org/deta/index.html
[11]: https://docs.racket-lang.org/gui-easy/index.html
- Calling Haskell from Swift
-
Ask HN: What apps have you created for your own use?
A really simple keyboard driven reminder tool for macOS:
https://github.com/Bogdanp/remember
- Racket branch of Chez Scheme merging with mainline Chez Scheme
-
Ask HN: What Are You Working on This Year?
My goal for this year is to continue building (mainly Mac and iOS) apps (like Remember[1] and Franz[2]) using Racket and to help improve the language and ecosystem in any way I can.
[1]: https://remember.defn.io
-
What programming language is good to make GUI's
PS this is a macOS app with the GUI made with swift https://github.com/Bogdanp/remember/tree/master/cocoa/remember/remember but the backend is Racket.
srgn
- Show HN: Srgn, AST-aware text manipulation
-
Ask HN: What apps have you created for your own use?
It's currently whitelist-based [0]. The downside is larger (code) size. The upside is simplicity. I imagine a blacklist could also work well, at smaller size but with more preprocessing needed.
[0]: https://github.com/alexpovel/srgn/blob/0008cce1c71f0d83f6a31...
- srgn: precise text and code transplantation; think tr/sed + regex + tree-sitter
-
AST-grep(sg) is a CLI tool for code structural search, lint, and rewriting
Wow! What a coincidence. Just the other day I finished "v1" of a similar tool: https://github.com/alexpovel/srgn , calling it a combination of tr/sed, ripgrep and tree-sitter.
I've spent a lot of time trying to find similar tools, and even list them in the README, but `AST-grep` did not come up! I was a bit confused, as I was sure such a thing must exist already. AST-grep looks much more capable and dynamic, great work.
What are some alternatives?
7GUI - the 7 gui project
lsd - LSD - line-square-dot: an addicting game
racket - The Racket repository
oatmeal - Terminal UI to chat with large language models (LLM) using different model backends, and integrations with your favourite editors!
racket-gui-easy - Declarative GUIs in Racket.
clipzoomfx - Side-project for extracting highlights from (mostly sports) videos
linux-surface - Linux Kernel for Surface Devices
dhcptool - Tool for testing/debugging DHCP servers
Camlistore - Perkeep (née Camlistore) is your personal storage system for life: a way of storing, syncing, sharing, modelling and backing up content.
syntax-searcher - Language-independent command-line utility for syntax-aware pattern matching.
roqr - QR codes that will rock your world
webpub - Give me a website, I'll make you an epub.