A developer created a minimalist podcast player for iOS called Podcatcher, built using the Racket programming language. It supports basic features like subscribing to RSS feeds, downloading episodes, and background playback. The project aims to explore the viability of Racket for iOS development, focusing on a simple, functional app with a small footprint. The developer highlighted the challenges of working with Racket on iOS, including compilation times and integrating with native APIs, but ultimately found the experience positive and plans further development, including potential Android support.
Parinfer simplifies Lisp code editing by automatically managing parentheses, brackets, and indentation. It offers two modes: "Paren Mode," where indentation dictates structure and Parinfer adjusts parentheses accordingly, and "Indent Mode," where parentheses define the structure and Parinfer corrects indentation. This frees the user from manually tracking matching delimiters, allowing them to focus on the code's logic. Parinfer analyzes the code as you type, instantly propagating changes and offering immediate feedback about structural errors, leading to a more fluid and less error-prone coding experience. It's adaptable to different indentation styles and supports various Lisp dialects.
HN users generally praised Parinfer for making Lisp editing easier, especially for beginners. Several commenters shared positive experiences using it with Clojure, noting improvements in code readability and reduced parenthesis-related errors. Some highlighted its ability to infer parentheses placement based on indentation, simplifying structural editing. A few users discussed its potential applicability to other languages, and at least one pointed out its integration with popular editors. However, some expressed skepticism about its long-term benefits or preference for traditional Lisp editing approaches. A minor point of discussion revolved around the tool's name and how it relates to its functionality.
Summary of Comments ( 55 )
https://news.ycombinator.com/item?id=42838875
HN users generally praised the developer's choice of Racket, expressing interest in its capabilities for iOS development. Some questioned the viability of Racket for mobile development, citing concerns about performance and community size compared to established options like Swift. A few users shared their own experiences with Racket and suggested improvements for the app, such as adding iPad support and offline playback. Several commenters expressed interest in trying the app or exploring the source code. The overall sentiment was one of curiosity and encouragement for the project.
The Hacker News post discussing the Racket-based iOS podcast player generated a moderate amount of discussion, with a number of commenters expressing interest in the project and its underlying technology.
Several commenters focused on the novelty and boldness of using Racket for iOS development, a relatively uncommon choice. They expressed curiosity about the developer's experience working with Racket in this context, including the challenges faced and any performance implications. Some inquired about the specific tooling and libraries used for bridging Racket to the iOS environment. The use of a "translator" to convert Racket code to a format compatible with iOS was a point of particular interest.
There was a recurring theme of appreciation for independent developers exploring alternative approaches to mobile development, especially those using less mainstream languages like Racket. The author's commitment to building a native, rather than web-based, application was also noted favorably.
Some commenters engaged in a technical discussion about garbage collection, specifically how Racket's GC mechanisms interact with the iOS environment. The potential impact on performance and battery life was raised.
A few commenters expressed interest in trying out the app, while others offered suggestions for improvements and future features. These suggestions included expanding platform support beyond iOS, adding features like offline playback and variable playback speed, and improving the user interface.
The discussion also touched upon the broader landscape of podcast apps and the challenges of competing with established players in a crowded market. The author's choice to focus on a clean and minimal user experience was highlighted as a potential differentiator.
Finally, some commenters simply expressed admiration for the project and encouraged the author to continue development.