56,966 blogs · [ { "id": "01a087bc-fa5c-70dc-b608-204224db786a", "title": "Teaching Claude to Be Lazy", "url": "https://www.parsonsmatt.org/2026/03/10/teaching_claude_to_be_lazy.html", "published_at": "2026-03-10T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422558ab43", "title": "The Subtle Footgun of TVar (Map _ _)", "url": "https://www.parsonsmatt.org/2025/12/17/the_subtle_footgun_of_tvar_(map____).html", "published_at": "2025-12-17T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204225bbd373", "title": "Making My Life Harder with GADTs", "url": "https://www.parsonsmatt.org/2025/01/21/making_my_life_harder_with_gadts.html", "published_at": "2025-01-21T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042262b81b6", "title": "Persistent Models are Views", "url": "https://www.parsonsmatt.org/2024/02/07/persistent_models_are_views.html", "published_at": "2024-02-07T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204226901832", "title": "The Meaning of Monad in MonadTrans", "url": "https://www.parsonsmatt.org/2023/08/10/the_meaning_of_monad_in_monadtrans.html", "published_at": "2023-08-10T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042273829a4", "title": "Yamaha vs NS Design Electric Cellos", "url": "https://www.parsonsmatt.org/2023/07/31/yamaha_vs_ns_design_electric_cellos.html", "published_at": "2023-07-31T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042281f4816", "title": "Working with Haskell CallStack", "url": "https://www.parsonsmatt.org/2023/05/11/working_with_haskell_callstack.html", "published_at": "2023-05-11T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204228f415cf", "title": "Garmin Fenix 6 Pro vs Apple Watch SE", "url": "https://www.parsonsmatt.org/2023/02/13/garmin_fenix_6_pro_review.html", "published_at": "2023-02-13T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204229d26170", "title": "Production Haskell Complete", "url": "https://www.parsonsmatt.org/2023/02/02/production_haskell_complete.html", "published_at": "2023-02-02T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422a45da3d", "title": "Haddock Performance", "url": "https://www.parsonsmatt.org/2022/12/21/haddock_performance.html", "published_at": "2022-12-21T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422aff1d39", "title": "Break Gently with Pattern Synonyms", "url": "https://www.parsonsmatt.org/2022/11/02/break-gently-pattern-syn.html", "published_at": "2022-11-02T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422b0137f2", "title": "Spooky Masks and Async Exceptions", "url": "https://www.parsonsmatt.org/2022/10/29/spooky_masks_and_async_exceptions.html", "published_at": "2022-10-29T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422baf11bc", "title": "Femoroacetabular Impingement", "url": "https://www.parsonsmatt.org/2022/10/07/femoroacetabular_impingement.html", "published_at": "2022-10-07T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422c65aa0a", "title": "Dynamic Exception Reporting in Haskell", "url": "https://www.parsonsmatt.org/2022/08/16/dynamic_exception_reporting_in_haskell.html", "published_at": "2022-08-16T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422d6523a0", "title": "Moving the Programming Blog", "url": "https://www.parsonsmatt.org/2022/05/03/moving_the_programming_blog.html", "published_at": "2022-05-03T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422e284967", "title": "RankNTypes via Lambda Calculus", "url": "https://www.parsonsmatt.org/2021/11/30/rank_n_types_via_lambda_calculus.html", "published_at": "2021-11-30T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422efc353a", "title": "Deferred Derivation", "url": "https://www.parsonsmatt.org/2021/09/09/deferred_derivation.html", "published_at": "2021-09-09T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422f26b859", "title": "Family Values", "url": "https://www.parsonsmatt.org/2021/09/02/family_values.html", "published_at": "2021-09-02T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20422ff341f8", "title": "Designing New", "url": "https://www.parsonsmatt.org/2021/08/24/designing_new.html", "published_at": "2021-08-24T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042306921a8", "title": "Stealing Impl from Rust", "url": "https://www.parsonsmatt.org/2021/07/29/stealing_impl_from_rust.html", "published_at": "2021-07-29T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423086531c", "title": "Hspec Hooks", "url": "https://www.parsonsmatt.org/2021/07/16/hspec_hooks.html", "published_at": "2021-07-16T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423102fe3c", "title": "Template Haskell Performance Tips", "url": "https://www.parsonsmatt.org/2021/07/12/template_haskell_performance_tips.html", "published_at": "2021-07-12T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204231c727fe", "title": "Global IORef in Template Haskell", "url": "https://www.parsonsmatt.org/2021/04/21/global_ioref_in_template_haskell.html", "published_at": "2021-04-21T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204231ee8969", "title": "Async Control Flow", "url": "https://www.parsonsmatt.org/2021/03/17/async_control_flow.html", "published_at": "2021-03-17T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204232740a67", "title": "Haskell Proposal: Simplify Deriving", "url": "https://www.parsonsmatt.org/2020/11/10/simplifying_deriving.html", "published_at": "2020-11-10T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423314375c", "title": "Plucking In, Plucking Out", "url": "https://www.parsonsmatt.org/2020/10/27/plucking_in_plucking_out.html", "published_at": "2020-10-27T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204233b2cff7", "title": "Unpack your Existentials", "url": "https://www.parsonsmatt.org/2020/10/13/unpack_your_existentials.html", "published_at": "2020-10-13T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423406a38d", "title": "Production Haskell Alpha Release", "url": "https://www.parsonsmatt.org/2020/10/07/production_haskell_alpha_release.html", "published_at": "2020-10-07T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204234af7408", "title": "Quick Memory Trick", "url": "https://www.parsonsmatt.org/2020/06/01/quick_memory_trick.html", "published_at": "2020-06-01T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042357cd8d0", "title": "On PVP + Restrictive Bounds", "url": "https://www.parsonsmatt.org/2020/05/07/on_pvp_restrictive_bounds.html", "published_at": "2020-05-07T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204235b72e65", "title": "Evolving Import Style For Diff Friendliness", "url": "https://www.parsonsmatt.org/2020/03/17/gradual_import_style_improvements.html", "published_at": "2020-03-17T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204235e8b726", "title": "Effectful Property Testing", "url": "https://www.parsonsmatt.org/2020/03/11/effectful_property_testing.html", "published_at": "2020-03-11T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204236d738a2", "title": "Mirror Mirror: Reflection and Encoding Via", "url": "https://www.parsonsmatt.org/2020/02/04/mirror_mirror.html", "published_at": "2020-02-04T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042379522af", "title": "Plucking Constraints", "url": "https://www.parsonsmatt.org/2020/01/03/plucking_constraints.html", "published_at": "2020-01-03T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204237c62b84", "title": "Write Junior Code", "url": "https://www.parsonsmatt.org/2019/12/26/write_junior_code.html", "published_at": "2019-12-26T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042386829aa", "title": "Splitting Persistent Models", "url": "https://www.parsonsmatt.org/2019/12/06/splitting_persistent_models.html", "published_at": "2019-12-06T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042388a37ea", "title": "Keeping Compilation Fast", "url": "https://www.parsonsmatt.org/2019/11/27/keeping_compilation_fast.html", "published_at": "2019-11-27T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204238a984b9", "title": "Why 'Functor' Doesn't Matter", "url": "https://www.parsonsmatt.org/2019/08/30/why_functor_doesnt_matter.html", "published_at": "2019-08-30T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042396de75f", "title": "Extending the Persistent QuasiQuoter", "url": "https://www.parsonsmatt.org/2019/03/30/extending_the_persistent_quasiquoter.html", "published_at": "2019-03-30T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423a5bbb93", "title": "Return a Function to Avoid Effects", "url": "https://www.parsonsmatt.org/2019/03/22/return_a_function_to_avoid_effects.html", "published_at": "2019-03-22T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423b0ad9ef", "title": "Sum Types In SQL", "url": "https://www.parsonsmatt.org/2019/03/19/sum_types_in_sql.html", "published_at": "2019-03-19T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423b3027f5", "title": "Implementing Union in Esqueleto I", "url": "https://www.parsonsmatt.org/2019/01/31/esqueleto_union_i.html", "published_at": "2019-01-31T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423b82f375", "title": "2018 Retrospective", "url": "https://www.parsonsmatt.org/2018/12/31/2018_retrospective.html", "published_at": "2018-12-31T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423bc4f479", "title": "Laziness Quiz", "url": "https://www.parsonsmatt.org/2018/12/04/laziness_quiz.html", "published_at": "2018-12-04T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423c03a83c", "title": "The Trouble with Typed Errors", "url": "https://www.parsonsmatt.org/2018/11/03/trouble_with_typed_errors.html", "published_at": "2018-11-03T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423ca44068", "title": "Capability and Suitability", "url": "https://www.parsonsmatt.org/2018/11/03/capability_and_suitability.html", "published_at": "2018-11-03T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423cd9f2a0", "title": "TChan vs TQueue: What's the difference?", "url": "https://www.parsonsmatt.org/2018/10/12/tchan_vs_tqueue.html", "published_at": "2018-10-12T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423d14bc0b", "title": "Keep your types small...", "url": "https://www.parsonsmatt.org/2018/10/02/small_types.html", "published_at": "2018-10-02T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423d7051b2", "title": "ghcid for the win!", "url": "https://www.parsonsmatt.org/2018/05/19/ghcid_for_the_win.html", "published_at": "2018-05-19T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423d74e88d", "title": "Transforming Transformers", "url": "https://www.parsonsmatt.org/2018/04/10/transforming_transformers.html", "published_at": "2018-04-10T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423dac3d90", "title": "Stealing Where from Rust", "url": "https://www.parsonsmatt.org/2018/03/26/stealing_where_from_rust.html", "published_at": "2018-03-26T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423e1ececb", "title": "Three Layer Haskell Cake", "url": "https://www.parsonsmatt.org/2018/03/22/three_layer_haskell_cake.html", "published_at": "2018-03-22T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423ec20eba", "title": "Servant Route Smooshing", "url": "https://www.parsonsmatt.org/2018/03/14/servant_route_smooshing.html", "published_at": "2018-03-14T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-20423f776b34", "title": "2017 Retrospective", "url": "https://www.parsonsmatt.org/2017/12/31/2017_retrospective.html", "published_at": "2017-12-31T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042406b017f", "title": "Haskell Performance Debugging", "url": "https://www.parsonsmatt.org/2017/12/18/haskell_performance_debugging.html", "published_at": "2017-12-18T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204240819e22", "title": "MonadBaseControl in Five Minutes", "url": "https://www.parsonsmatt.org/2017/11/21/monadbasecontrol_in_five_minutes.html", "published_at": "2017-11-21T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042410aa1ea", "title": "Contributing to GHC", "url": "https://www.parsonsmatt.org/2017/10/29/contributing_to_ghc.html", "published_at": "2017-10-29T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-204241e90ddf", "title": "LambdaConf 2017 Talk", "url": "https://www.parsonsmatt.org/2017/10/15/lambdaconf_2017_talk.html", "published_at": "2017-10-15T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042422a2b81", "title": "Type Safety Back and Forth", "url": "https://www.parsonsmatt.org/2017/10/11/type_safety_back_and_forth.html", "published_at": "2017-10-11T00:00:00+00:00" }, { "id": "01a087bc-fa5c-70dc-b608-2042429a0023", "title": "What does Free buy us?", "url": "https://www.parsonsmatt.org/2017/09/22/what_does_free_buy_us.html", "published_at": "2017-09-22T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da22360a531c", "title": "Debugging Types: A Stream of Thought", "url": "https://www.parsonsmatt.org/2017/09/13/debugging_types_a_stream_of_thought.html", "published_at": "2017-09-13T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da2236f23fc8", "title": "Using GHC CallStacks", "url": "https://www.parsonsmatt.org/2017/07/29/using_ghc_callstacks.html", "published_at": "2017-07-29T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da2237159a25", "title": "Invert Your Mocks!", "url": "https://www.parsonsmatt.org/2017/07/27/inverted_mocking.html", "published_at": "2017-07-27T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da22374829d7", "title": "On Naming Things: Library Design", "url": "https://www.parsonsmatt.org/2017/06/23/on_naming_things.html", "published_at": "2017-06-23T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da2237fefaf9", "title": "Exceptional Servant Handling", "url": "https://www.parsonsmatt.org/2017/06/21/exceptional_servant_handling.html", "published_at": "2017-06-21T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da22381a9a0a", "title": "Basic Type Level Programming in Haskell", "url": "https://www.parsonsmatt.org/2017/04/26/basic_type_level_programming_in_haskell.html", "published_at": "2017-04-26T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223839df9a", "title": "Maybe? Use a type parameter!", "url": "https://www.parsonsmatt.org/2017/04/08/maybe_use_a_type_parameter.html", "published_at": "2017-04-08T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da22393363da", "title": "OOPH: Data Inheritance", "url": "https://www.parsonsmatt.org/2017/02/17/ooph_data_inheritance.html", "published_at": "2017-02-17T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223954b27c", "title": "Object Oriented Programming in Haskell", "url": "https://www.parsonsmatt.org/2017/02/17/object_oriented_programming_in_haskell.html", "published_at": "2017-02-17T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223959fa40", "title": "How do type classes differ from interfaces?", "url": "https://www.parsonsmatt.org/2017/01/07/how_do_type_classes_differ_from_interfaces.html", "published_at": "2017-01-07T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da2239be91fa", "title": "2016 Retrospective", "url": "https://www.parsonsmatt.org/2016/12/30/2016_retrospective.html", "published_at": "2016-12-30T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223a18d418", "title": "Servant in Yesod - Yo Dawg", "url": "https://www.parsonsmatt.org/2016/12/18/servant_in_yesod_-_yo_dawg.html", "published_at": "2016-12-18T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223b059776", "title": "Clean Alternatives with MaybeT", "url": "https://www.parsonsmatt.org/2016/11/18/clean_alternatives_with_maybet.html", "published_at": "2016-11-18T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223b33c18c", "title": "Grokking Fix", "url": "https://www.parsonsmatt.org/2016/10/26/grokking_fix.html", "published_at": "2016-10-26T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223b6ef915", "title": "Rank 'n Classy Limited Effects", "url": "https://www.parsonsmatt.org/2016/07/14/rank_n_classy_limited_effects.html", "published_at": "2016-07-14T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223b9423d9", "title": "servant-persistent updated", "url": "https://www.parsonsmatt.org/2016/07/08/servant-persistent_updated.html", "published_at": "2016-07-08T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223beb3187", "title": "Incremental API Takeover with Haskell Servant", "url": "https://www.parsonsmatt.org/2016/06/24/take_over_an_api_with_servant.html", "published_at": "2016-06-24T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223bec0513", "title": "The Magic of Folds", "url": "https://www.parsonsmatt.org/2016/03/24/the_magic_of_folds.html", "published_at": "2016-03-24T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223c95b66e", "title": "An Elegant Fizzbuzz", "url": "https://www.parsonsmatt.org/2016/02/27/an_elegant_fizzbuzz.html", "published_at": "2016-02-27T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223c9a08b5", "title": "Proving With Types", "url": "https://www.parsonsmatt.org/2016/02/23/proving_with_types.html", "published_at": "2016-02-23T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223d576fc8", "title": "Hardware Simulation in Idris I", "url": "https://www.parsonsmatt.org/2016/02/18/dependent-hardware-i.html", "published_at": "2016-02-18T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223e356674", "title": "ANN: QuickLift", "url": "https://www.parsonsmatt.org/2016/01/03/ann_quicklift.html", "published_at": "2016-01-03T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223e4b8ad6", "title": "2015 Retrospective", "url": "https://www.parsonsmatt.org/2015/12/31/2015_retrospective.html", "published_at": "2015-12-31T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223eec18d1", "title": "Exploratory Haskell", "url": "https://www.parsonsmatt.org/2015/12/09/exploratory_haskell.html", "published_at": "2015-12-09T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223f76d3a5", "title": "An Intuition on Context II", "url": "https://www.parsonsmatt.org/2015/11/29/an_intuition_on_context_ii.html", "published_at": "2015-11-29T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da223ff67382", "title": "An Intuition on Context I", "url": "https://www.parsonsmatt.org/2015/11/24/an_intuition_on_context.html", "published_at": "2015-11-24T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da22407cc125", "title": "Template Haskell Is Not Scary", "url": "https://www.parsonsmatt.org/2015/11/15/template_haskell.html", "published_at": "2015-11-15T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da2240c29b76", "title": "Using purescript-routing with purescript-halogen", "url": "https://www.parsonsmatt.org/2015/10/22/purescript_router.html", "published_at": "2015-10-22T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da22413366a3", "title": "Elm Architecture in PureScript IV: Effects", "url": "https://www.parsonsmatt.org/2015/10/11/elm_architecture_in_purescript_iv_effects.html", "published_at": "2015-10-11T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da224177d443", "title": "Elm Architecture in PureScript III", "url": "https://www.parsonsmatt.org/2015/10/10/elm_architecture_in_purescript_iii.html", "published_at": "2015-10-10T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da22423710ef", "title": "Elm vs PureScript II", "url": "https://www.parsonsmatt.org/2015/10/05/elm_vs_purescript_ii.html", "published_at": "2015-10-05T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da22423cbea1", "title": "Elm vs PureScript I", "url": "https://www.parsonsmatt.org/2015/10/03/elm_vs_purescript.html", "published_at": "2015-10-03T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da2243381158", "title": "Recursion Excursion", "url": "https://www.parsonsmatt.org/2015/09/24/recursion.html", "published_at": "2015-09-24T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da22438b15e5", "title": "Unix Is The IDE", "url": "https://www.parsonsmatt.org/2015/07/26/unix_as_ide.html", "published_at": "2015-07-26T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da224390a6cf", "title": "Announcing Squirrell", "url": "https://www.parsonsmatt.org/2015/06/21/announcing_squirrell.html", "published_at": "2015-06-21T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da2244902259", "title": "servant-persistent", "url": "https://www.parsonsmatt.org/2015/06/07/servant-persistent.html", "published_at": "2015-06-07T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da224533f861", "title": "Perscotty Pt III", "url": "https://www.parsonsmatt.org/2015/05/10/perscotty_pt_iii.html", "published_at": "2015-05-10T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da2245d30cef", "title": "Perscotty Pt II", "url": "https://www.parsonsmatt.org/2015/05/04/perscotty_pt_ii.html", "published_at": "2015-05-04T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da2246132739", "title": "Scotty and Persistent", "url": "https://www.parsonsmatt.org/2015/05/02/scotty_and_persistent.html", "published_at": "2015-05-02T00:00:00+00:00" }, { "id": "01a087bc-fa5d-71cb-894f-da2246291bd2", "title": "Educational Frustrational", "url": "https://www.parsonsmatt.org/2015/04/30/educational_frustrational.html", "published_at": "2015-04-30T00:00:00+00:00" } ] posts Claim your blog
Back to parsonsmatt.org
Blog · corpus.blog/blogs/parsonsmatt.org/posts

parsonsmatt.org

parsonsmatt.org

2026

2025

2024

2023

2022

2021

2020

2019

2018

2017

2016

2015