commit 02b6980d77946e08175e4928c90d25c18dd4f82a Author: alterdekim Date: Mon Sep 30 18:47:25 2024 +0300 Initial commit diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..c7efda6 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,50 @@ + +{ + // Automatically created by phoityne-vscode extension. + + "version": "2.0.0", + "presentation": { + "reveal": "always", + "panel": "new" + }, + "tasks": [ + { + // F7 + "group": { + "kind": "build", + "isDefault": true + }, + "label": "haskell build", + "type": "shell", + //"command": "cabal configure && cabal build" + "command": "stack build" + }, + { + // F6 + "group": "build", + "type": "shell", + "label": "haskell clean & build", + //"command": "cabal clean && cabal configure && cabal build" + "command": "stack clean && stack build" + //"command": "stack clean ; stack build" // for powershell + }, + { + // F8 + "group": { + "kind": "test", + "isDefault": true + }, + "type": "shell", + "label": "haskell test", + //"command": "cabal test" + "command": "stack test" + }, + { + // F6 + "isBackground": true, + "type": "shell", + "label": "haskell watch", + "command": "stack build --test --no-run-tests --file-watch" + } + ] +} diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..55b0530 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,5 @@ +# Revision history for freedoc + +## 0.1.0.0 -- YYYY-mm-dd + +* First version. Released on an unsuspecting world. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/app/Main.hs b/app/Main.hs new file mode 100644 index 0000000..65ae4a0 --- /dev/null +++ b/app/Main.hs @@ -0,0 +1,4 @@ +module Main where + +main :: IO () +main = putStrLn "Hello, Haskell!" diff --git a/dist-newstyle/cache/compiler b/dist-newstyle/cache/compiler new file mode 100644 index 0000000..a81846b Binary files /dev/null and b/dist-newstyle/cache/compiler differ diff --git a/dist-newstyle/cache/config b/dist-newstyle/cache/config new file mode 100644 index 0000000..1534c26 Binary files /dev/null and b/dist-newstyle/cache/config differ diff --git a/dist-newstyle/cache/elaborated-plan b/dist-newstyle/cache/elaborated-plan new file mode 100644 index 0000000..c07a30e Binary files /dev/null and b/dist-newstyle/cache/elaborated-plan differ diff --git a/dist-newstyle/cache/improved-plan b/dist-newstyle/cache/improved-plan new file mode 100644 index 0000000..1c9b9d0 Binary files /dev/null and b/dist-newstyle/cache/improved-plan differ diff --git a/dist-newstyle/cache/plan.json b/dist-newstyle/cache/plan.json new file mode 100644 index 0000000..0c379e2 --- /dev/null +++ b/dist-newstyle/cache/plan.json @@ -0,0 +1 @@ +{"cabal-version":"3.10.3.0","cabal-lib-version":"3.10.3.0","compiler-id":"ghc-9.4.8","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"ansi-terminal-1.1.1-3f98186690923ffa5f11aebddeaa98c02359ee4769a67355de2329031cfe182f","pkg-name":"ansi-terminal","pkg-version":"1.1.1","flags":{"example":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"5b3e9228323416a1962d5948b18f9eff8569ad94a368e15f0e6104128783f572","pkg-src-sha256":"7e448fcdf8a5a97f3d30e5168f834641df9945fafa65f2e87d73ff9556a1bc4c","depends":["ansi-terminal-types-1.1-b629706448f868884a0b5869ab497a0c242addaa4ffc720c16a50ffee0209c8c","base-4.17.2.1","colour-2.3.6-e74462c0ef939bc168bf448e20d49ad726c72b5868b56e583db62c85090062d2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"ansi-terminal-types-1.1-b629706448f868884a0b5869ab497a0c242addaa4ffc720c16a50ffee0209c8c","pkg-name":"ansi-terminal-types","pkg-version":"1.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"135f6a381afa19d53d0a3fe40b6dd47e6666c538b09e4300fbb1438759df3248","pkg-src-sha256":"f2e5333eb78da5f4dd330fca0c81a59276cc150c625647cd20f57b7f297a5d25","depends":["base-4.17.2.1","colour-2.3.6-e74462c0ef939bc168bf448e20d49ad726c72b5868b56e583db62c85090062d2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"array-0.5.4.0","pkg-name":"array","pkg-version":"0.5.4.0","depends":["base-4.17.2.1"]},{"type":"pre-existing","id":"base-4.17.2.1","pkg-name":"base","pkg-version":"4.17.2.1","depends":["ghc-bignum-1.3","ghc-prim-0.9.1","rts-1.0.2"]},{"type":"configured","id":"bimap-0.5.0-87c591d79e48018839ade2bc8a3b32ed4cb0b30d635d210378c43b113f456b93","pkg-name":"bimap","pkg-version":"0.5.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"aba506d02a1c93fc2b50dcbe728d2a4d07cca89b7033945418061a0b08576ebd","pkg-src-sha256":"b0b44b0f2eaceb83f46dfa3d1747e080c45204c64d18bb9e63747299266f0c95","depends":["base-4.17.2.1","containers-0.6.7","deepseq-1.4.8.0","exceptions-0.10.5"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"binary-0.8.9.1","pkg-name":"binary","pkg-version":"0.8.9.1","depends":["array-0.5.4.0","base-4.17.2.1","bytestring-0.11.5.3","containers-0.6.7"]},{"type":"configured","id":"blaze-builder-0.4.2.3-07110ef92e4ff669e841c9cfb66f7e4bf3aa26d7da33e2f4a1e77482183cd635","pkg-name":"blaze-builder","pkg-version":"0.4.2.3","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3f2ff408e858e3ecac30183f98bbb14ce6cf6314c654bd9107e51defd386d5ef","pkg-src-sha256":"66291874236b7342adab033e3cddae414a23a2865dfb44095dfc4e0b9d46703b","depends":["base-4.17.2.1","bytestring-0.11.5.3","deepseq-1.4.8.0","ghc-prim-0.9.1","text-2.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"brick-2.4-df3b390f168284c247790f2b495a4865c92d8a2d5713282a6344fa7128881a11","pkg-name":"brick","pkg-version":"2.4","flags":{"demos":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"e9abb07ba552358d02e8d9d8e59f1086372b0a595ca8a8fb3dd54cac15cb0b3f","pkg-src-sha256":"7fcf9e1cdecd157e2546c76ba8c1be7c5a7716aa4421e26eedade0e2953f9488","depends":["base-4.17.2.1","bimap-0.5.0-87c591d79e48018839ade2bc8a3b32ed4cb0b30d635d210378c43b113f456b93","bytestring-0.11.5.3","config-ini-0.2.7.0-c4d8998e93be4193a29bbdeff6f83ba12c7a1350807f37bab6a2bbe6ac6cb0a4","containers-0.6.7","data-clist-0.2-8eaba45456ba14eeecb793f76edc1ba3ef5923b433e2cfa4c51540bcc7026e83","deepseq-1.4.8.0","directory-1.3.7.1","exceptions-0.10.5","filepath-1.4.2.2","microlens-0.4.13.1-e63b1bd2616d097c066e6e391ca3d5330945601ee02559d72cf1dedf7ed08a0f","microlens-mtl-0.2.0.3-84114c52534449d9730f8a94b09d2b7936b0abe1f100b39f475f284fb864c6c3","microlens-th-0.4.3.15-ac9716305865895d6c59afb908250f80fcaf4afec7398f7b16009c5e24c8e445","mtl-2.2.2","stm-2.5.1.0","template-haskell-2.19.0.0","text-2.0.2","text-zipper-0.13-a07d1f85fba0d5d3cf9635bf4d9cb8f5eee3724d664cf8582d45c26225baa360","unix-compat-0.7.2-62e28531ca622cf6b8181ec6916bc1e84d15b6b5e5ee537f9a2026b7b8fa76bc","vector-0.13.1.0-bf7e1cc6d1863625e3557a1ec930340ef7ddc87a95fa52ed2d17cafcd10fb626","vty-6.2-bc35ce9ddf8728bf2726e4017c1dedb78c657747d078b34f36fb8d9c56c5f205","vty-crossplatform-0.4.0.0-1802d4245dd206929735824fecb168e72f35029473124a0312dd701a3dd03428","word-wrap-0.5-fd61fd031ceb73638a5645ed9c9fd84983dccbe470259e2db4b0f7a483c43ea3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"bytestring-0.11.5.3","pkg-name":"bytestring","pkg-version":"0.11.5.3","depends":["base-4.17.2.1","deepseq-1.4.8.0","ghc-prim-0.9.1","template-haskell-2.19.0.0"]},{"type":"configured","id":"case-insensitive-1.2.1.0-e622a630f63dd73a9bba1dd0fa0a675e1e2fd99c0cf8e529f5c69ccc29d14a37","pkg-name":"case-insensitive","pkg-version":"1.2.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"9dfd3171fc7698cf8d931727d3af3a7b389135b583e46b5adac1f9d2026fff61","pkg-src-sha256":"296dc17e0c5f3dfb3d82ced83e4c9c44c338ecde749b278b6eae512f1d04e406","depends":["base-4.17.2.1","bytestring-0.11.5.3","deepseq-1.4.8.0","hashable-1.4.7.0-83c514881e6ae0cac47ae5c6e97b645621aa68373c600b14e175ec365f3b03ee","text-2.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"colour-2.3.6-e74462c0ef939bc168bf448e20d49ad726c72b5868b56e583db62c85090062d2","pkg-name":"colour","pkg-version":"2.3.6","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ebdcbf15023958838a527e381ab3c3b1e99ed12d1b25efeb7feaa4ad8c37664a","pkg-src-sha256":"2cd35dcd6944a5abc9f108a5eb5ee564b6b1fa98a9ec79cefcc20b588991f871","depends":["base-4.17.2.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"config-ini-0.2.7.0-c4d8998e93be4193a29bbdeff6f83ba12c7a1350807f37bab6a2bbe6ac6cb0a4","pkg-name":"config-ini","pkg-version":"0.2.7.0","flags":{"enable-doctests":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2ae5a3e77ef16bffe9f2dd2b328cd79444cd1c193386007260aa6b0af0f957b2","pkg-src-sha256":"3a171c45baa6ed066dd62a4bfd7fb60d99030e9e320c2b73cfd0980252596901","depends":["base-4.17.2.1","containers-0.6.7","megaparsec-9.6.1-94c00353c81ae87480b2deb48f80606fa9fa4ea3df66e9f32246015e3a733a0b","text-2.0.2","transformers-0.5.6.2","unordered-containers-0.2.20-03df350dc1c3af860fde6ba401ff4e8a21903684664c282f7f3ecd7aa3aff594"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"containers-0.6.7","pkg-name":"containers","pkg-version":"0.6.7","depends":["array-0.5.4.0","base-4.17.2.1","deepseq-1.4.8.0","template-haskell-2.19.0.0"]},{"type":"configured","id":"data-clist-0.2-8eaba45456ba14eeecb793f76edc1ba3ef5923b433e2cfa4c51540bcc7026e83","pkg-name":"data-clist","pkg-version":"0.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"47ad08ffa523b5fcdfd0e999ff57417a2e70b48e0ea79b84d7f8b9e6d1152225","pkg-src-sha256":"1c3a1ebd71e8f6fe30afdb3797c4852db7fb0b4e3c145fc53e8282eb4303b212","depends":["base-4.17.2.1","deepseq-1.4.8.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"deepseq-1.4.8.0","pkg-name":"deepseq","pkg-version":"1.4.8.0","depends":["array-0.5.4.0","base-4.17.2.1","ghc-prim-0.9.1"]},{"type":"pre-existing","id":"directory-1.3.7.1","pkg-name":"directory","pkg-version":"1.3.7.1","depends":["base-4.17.2.1","filepath-1.4.2.2","time-1.12.2","unix-2.7.3"]},{"type":"pre-existing","id":"exceptions-0.10.5","pkg-name":"exceptions","pkg-version":"0.10.5","depends":["base-4.17.2.1","mtl-2.2.2","stm-2.5.1.0","template-haskell-2.19.0.0","transformers-0.5.6.2"]},{"type":"pre-existing","id":"filepath-1.4.2.2","pkg-name":"filepath","pkg-version":"1.4.2.2","depends":["base-4.17.2.1"]},{"type":"configured","id":"freedoc-0.1.0.0-inplace-freedoc","pkg-name":"freedoc","pkg-version":"0.1.0.0","flags":{},"style":"local","pkg-src":{"type":"local","path":"/home/michael/Documents/freedoc/."},"dist-dir":"/home/michael/Documents/freedoc/dist-newstyle/build/x86_64-linux/ghc-9.4.8/freedoc-0.1.0.0/x/freedoc","build-info":"/home/michael/Documents/freedoc/dist-newstyle/build/x86_64-linux/ghc-9.4.8/freedoc-0.1.0.0/x/freedoc/build-info.json","depends":["base-4.17.2.1","brick-2.4-df3b390f168284c247790f2b495a4865c92d8a2d5713282a6344fa7128881a11"],"exe-depends":[],"component-name":"exe:freedoc","bin-file":"/home/michael/Documents/freedoc/dist-newstyle/build/x86_64-linux/ghc-9.4.8/freedoc-0.1.0.0/x/freedoc/build/freedoc/freedoc"},{"type":"pre-existing","id":"ghc-bignum-1.3","pkg-name":"ghc-bignum","pkg-version":"1.3","depends":["ghc-prim-0.9.1"]},{"type":"pre-existing","id":"ghc-boot-th-9.4.8","pkg-name":"ghc-boot-th","pkg-version":"9.4.8","depends":["base-4.17.2.1"]},{"type":"pre-existing","id":"ghc-prim-0.9.1","pkg-name":"ghc-prim","pkg-version":"0.9.1","depends":["rts-1.0.2"]},{"type":"configured","id":"hashable-1.4.7.0-83c514881e6ae0cac47ae5c6e97b645621aa68373c600b14e175ec365f3b03ee","pkg-name":"hashable","pkg-version":"1.4.7.0","flags":{"arch-native":false,"integer-gmp":true,"random-initial-seed":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"573f3ab242f75465a0d67ce9d84202650a1606575e6dbd6d31ffcf4767a9a379","pkg-src-sha256":"3baee4c9027a08830d148ec524cbc0471de645e1e8426d46780ef2758df0e8da","depends":["base-4.17.2.1","bytestring-0.11.5.3","containers-0.6.7","deepseq-1.4.8.0","filepath-1.4.2.2","ghc-bignum-1.3","ghc-prim-0.9.1","os-string-2.0.6-6c728edb1747763302f144732f77db2f3d1ac9408b9a000f746de411f663b560","text-2.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"integer-logarithms-1.0.3.1-7f71074a74d94255e50684da6e93f03e755e8ef09116cf5e63a7908beb831b4f","pkg-name":"integer-logarithms","pkg-version":"1.0.3.1","flags":{"check-bounds":false,"integer-gmp":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"0595a16d458c9c5caa425dc8ebbeb5d9adffb0c8daf4720c1d93dfcfc31dd690","pkg-src-sha256":"9b0a9f9fab609b15cd015865721fb05f744a1bc77ae92fd133872de528bbea7f","depends":["array-0.5.4.0","base-4.17.2.1","ghc-bignum-1.3","ghc-prim-0.9.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"megaparsec-9.6.1-94c00353c81ae87480b2deb48f80606fa9fa4ea3df66e9f32246015e3a733a0b","pkg-name":"megaparsec","pkg-version":"9.6.1","flags":{"dev":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"8d8f8ee5aca5d5c16aa4219afd13687ceab8be640f40ba179359f2b42a628241","pkg-src-sha256":"a32257be847dbe71ac22d512ab115f9ce26fa08bcdbea7ca8b5256a1700dcbff","depends":["base-4.17.2.1","bytestring-0.11.5.3","case-insensitive-1.2.1.0-e622a630f63dd73a9bba1dd0fa0a675e1e2fd99c0cf8e529f5c69ccc29d14a37","containers-0.6.7","deepseq-1.4.8.0","mtl-2.2.2","parser-combinators-1.3.0-508bbdb5795b01e808a282e96babdf7bdb9259066465b3ad3a0334047c044a24","scientific-0.3.8.0-78b5aa11c3d5b236879b6bd09d3a4d97228630f4f447d14706c908d2155d1582","text-2.0.2","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"microlens-0.4.13.1-e63b1bd2616d097c066e6e391ca3d5330945601ee02559d72cf1dedf7ed08a0f","pkg-name":"microlens","pkg-version":"0.4.13.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"fc256e2b5d78e8e4f39b3dd359c57b8c19df50853a86eaf8f154a17441a5a51d","pkg-src-sha256":"0a54abee8ff4f6aeb4bea0783409a3dbd28a4e7a892bac916b0fb6a71382d7fc","depends":["base-4.17.2.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"microlens-mtl-0.2.0.3-84114c52534449d9730f8a94b09d2b7936b0abe1f100b39f475f284fb864c6c3","pkg-name":"microlens-mtl","pkg-version":"0.2.0.3","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"92f6e76b1e0177a990496df2ab55972476a1f117d0a7b944f810bce6b4848377","pkg-src-sha256":"4d6b6af37179814fe47e11763ea61b423b698bc15869f94e82c6a5e9fd079fc6","depends":["base-4.17.2.1","microlens-0.4.13.1-e63b1bd2616d097c066e6e391ca3d5330945601ee02559d72cf1dedf7ed08a0f","mtl-2.2.2","transformers-0.5.6.2","transformers-compat-0.7.2-3e337fd85245291da52639f29da7a49dda5d853d5879636c8314fe752406539f"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"microlens-th-0.4.3.15-ac9716305865895d6c59afb908250f80fcaf4afec7398f7b16009c5e24c8e445","pkg-name":"microlens-th","pkg-version":"0.4.3.15","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"1b98beac6ed1ac00b8c235b248169d5e383f4a76f63faa33494ec5e7cdac544e","pkg-src-sha256":"0fceb3271297ad29a2bfa3e62953debbb44dba513c439a363acf625f954e45c9","depends":["base-4.17.2.1","containers-0.6.7","microlens-0.4.13.1-e63b1bd2616d097c066e6e391ca3d5330945601ee02559d72cf1dedf7ed08a0f","template-haskell-2.19.0.0","th-abstraction-0.7.0.0-4c8fca13c92f70e5568132404cec14de8ecde28b3d0f5c9ec86bf5ea8fb414a2","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.2.2","pkg-name":"mtl","pkg-version":"2.2.2","depends":["base-4.17.2.1","transformers-0.5.6.2"]},{"type":"configured","id":"os-string-2.0.6-6c728edb1747763302f144732f77db2f3d1ac9408b9a000f746de411f663b560","pkg-name":"os-string","pkg-version":"2.0.6","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"7699e7ae9bf74d056a62f384ceef8dfb2aa660f3f7c8016e9703f3b995e5e030","pkg-src-sha256":"22fcc7d5fc66676b5dfc57b714d2caf93cce2d5a79d242168352f9eb0fe2f18a","depends":["base-4.17.2.1","bytestring-0.11.5.3","deepseq-1.4.8.0","exceptions-0.10.5","template-haskell-2.19.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"parsec-3.1.16.1","pkg-name":"parsec","pkg-version":"3.1.16.1","depends":["base-4.17.2.1","bytestring-0.11.5.3","mtl-2.2.2","text-2.0.2"]},{"type":"configured","id":"parser-combinators-1.3.0-508bbdb5795b01e808a282e96babdf7bdb9259066465b3ad3a0334047c044a24","pkg-name":"parser-combinators","pkg-version":"1.3.0","flags":{"dev":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"8659573e0d443d573f5b53f81b81dafbdc988d282b90c11e3da73562b4ea7876","pkg-src-sha256":"9310ef0d49f8a8922acda10b1cded9854cbee04dea717effc6ee5983072e4447","depends":["base-4.17.2.1"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"pretty-1.1.3.6","pkg-name":"pretty","pkg-version":"1.1.3.6","depends":["base-4.17.2.1","deepseq-1.4.8.0","ghc-prim-0.9.1"]},{"type":"configured","id":"primitive-0.9.0.0-3e57c2c93f70357b89abd279bf9c6450eaff9186af8f8764d85558b00b77fd29","pkg-name":"primitive","pkg-version":"0.9.0.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2e08c5409e3559c7f1669ef50e9a0d9a397e68ecf51110d5e2cedf05cdd7d93c","pkg-src-sha256":"696d4bd291c94d736142d6182117dca4258d3ef28bfefdb649ac8b5ecd0999c7","depends":["base-4.17.2.1","deepseq-1.4.8.0","template-haskell-2.19.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"rts-1.0.2","pkg-name":"rts","pkg-version":"1.0.2","depends":[]},{"type":"configured","id":"scientific-0.3.8.0-78b5aa11c3d5b236879b6bd09d3a4d97228630f4f447d14706c908d2155d1582","pkg-name":"scientific","pkg-version":"0.3.8.0","flags":{"integer-simple":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2148e2e6ab1f1fd2ecee25067e0ee60da886be89736e8a54d49556407d7113ce","pkg-src-sha256":"13b343bca8aa26d7718e52e622e5a118056653edafcbc7ccc5333be7217218cf","depends":["base-4.17.2.1","binary-0.8.9.1","bytestring-0.11.5.3","containers-0.6.7","deepseq-1.4.8.0","hashable-1.4.7.0-83c514881e6ae0cac47ae5c6e97b645621aa68373c600b14e175ec365f3b03ee","integer-logarithms-1.0.3.1-7f71074a74d94255e50684da6e93f03e755e8ef09116cf5e63a7908beb831b4f","primitive-0.9.0.0-3e57c2c93f70357b89abd279bf9c6450eaff9186af8f8764d85558b00b77fd29","template-haskell-2.19.0.0","text-2.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"stm-2.5.1.0","pkg-name":"stm","pkg-version":"2.5.1.0","depends":["array-0.5.4.0","base-4.17.2.1"]},{"type":"pre-existing","id":"template-haskell-2.19.0.0","pkg-name":"template-haskell","pkg-version":"2.19.0.0","depends":["base-4.17.2.1","ghc-boot-th-9.4.8","ghc-prim-0.9.1","pretty-1.1.3.6"]},{"type":"pre-existing","id":"terminfo-0.4.1.5","pkg-name":"terminfo","pkg-version":"0.4.1.5","depends":["base-4.17.2.1"]},{"type":"pre-existing","id":"text-2.0.2","pkg-name":"text","pkg-version":"2.0.2","depends":["array-0.5.4.0","base-4.17.2.1","binary-0.8.9.1","bytestring-0.11.5.3","deepseq-1.4.8.0","ghc-prim-0.9.1","template-haskell-2.19.0.0"]},{"type":"configured","id":"text-zipper-0.13-a07d1f85fba0d5d3cf9635bf4d9cb8f5eee3724d664cf8582d45c26225baa360","pkg-name":"text-zipper","pkg-version":"0.13","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"e1a48d69c9324ed3784bc39d5ded84d63ea3115b32a018ddf76158ed9d58dc0a","pkg-src-sha256":"06521cc7c435f8e85aeb3ed3f2b872000c52087d73518de31e65bdca072a98a9","depends":["base-4.17.2.1","deepseq-1.4.8.0","text-2.0.2","vector-0.13.1.0-bf7e1cc6d1863625e3557a1ec930340ef7ddc87a95fa52ed2d17cafcd10fb626"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"th-abstraction-0.7.0.0-4c8fca13c92f70e5568132404cec14de8ecde28b3d0f5c9ec86bf5ea8fb414a2","pkg-name":"th-abstraction","pkg-version":"0.7.0.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4d80fe53ed140866018278c81e1c0c9bc8fc73d8f2a530321a588f24be491fc4","pkg-src-sha256":"b2854c612f2fa4adfa1ecbb4089a2211fd9cb3210aec17ba4a455ae486b22721","depends":["base-4.17.2.1","containers-0.6.7","ghc-prim-0.9.1","template-haskell-2.19.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"time-1.12.2","pkg-name":"time","pkg-version":"1.12.2","depends":["base-4.17.2.1","deepseq-1.4.8.0"]},{"type":"pre-existing","id":"transformers-0.5.6.2","pkg-name":"transformers","pkg-version":"0.5.6.2","depends":["base-4.17.2.1"]},{"type":"configured","id":"transformers-compat-0.7.2-3e337fd85245291da52639f29da7a49dda5d853d5879636c8314fe752406539f","pkg-name":"transformers-compat","pkg-version":"0.7.2","flags":{"five":false,"five-three":true,"four":false,"generic-deriving":true,"mtl":true,"three":false,"two":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"044fb9955f63ee138fcebedfdcbe54afe741f2d5892a2d0bdf3a8052bd342643","pkg-src-sha256":"b62c7304c9f3cbc9463d0739aa85cb9489f217ea092b9d625d417514fbcc9d6a","depends":["base-4.17.2.1","ghc-prim-0.9.1","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"unix-2.7.3","pkg-name":"unix","pkg-version":"2.7.3","depends":["base-4.17.2.1","bytestring-0.11.5.3","time-1.12.2"]},{"type":"configured","id":"unix-compat-0.7.2-62e28531ca622cf6b8181ec6916bc1e84d15b6b5e5ee537f9a2026b7b8fa76bc","pkg-name":"unix-compat","pkg-version":"0.7.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"e8487ff5ace1fba28808cd3c9eae38726690de6055a781156bbe68252b1de3c8","pkg-src-sha256":"58382c354e9b16a05b427a62f52b60fbc4406ad357bcc951cb76d4134fa6690b","depends":["base-4.17.2.1","unix-2.7.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"unordered-containers-0.2.20-03df350dc1c3af860fde6ba401ff4e8a21903684664c282f7f3ecd7aa3aff594","pkg-name":"unordered-containers","pkg-version":"0.2.20","flags":{"debug":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"c7fe9cba405ed9905e12d89c7add3b3eb9868dfba7975e70ba0cdd64b7b11abc","pkg-src-sha256":"d9cfb287cf00592d39dc9c3cac8b99627ea08f2c01798e70130fc39f7c90f11d","depends":["base-4.17.2.1","deepseq-1.4.8.0","hashable-1.4.7.0-83c514881e6ae0cac47ae5c6e97b645621aa68373c600b14e175ec365f3b03ee","template-haskell-2.19.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"utf8-string-1.0.2-8bab835257b271ee29ae248b2151e3cd3b4c78d619915e33e5618c645ed84fa1","pkg-name":"utf8-string","pkg-version":"1.0.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"79416292186feeaf1f60e49ac5a1ffae9bf1b120e040a74bf0e81ca7f1d31d3f","pkg-src-sha256":"ee48deada7600370728c4156cb002441de770d0121ae33a68139a9ed9c19b09a","depends":["base-4.17.2.1","bytestring-0.11.5.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"vector-0.13.1.0-bf7e1cc6d1863625e3557a1ec930340ef7ddc87a95fa52ed2d17cafcd10fb626","pkg-name":"vector","pkg-version":"0.13.1.0","flags":{"boundschecks":true,"internalchecks":false,"unsafechecks":false,"wall":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"bc032ccfb51d775eb6f4082c5fc02f5416b0ea0d6644a60d87677a6937f2d70d","pkg-src-sha256":"63f272279eab8ab9411a0fffb1252ac309b297313f8e33be9ebbc2f981edecee","depends":["base-4.17.2.1","deepseq-1.4.8.0","primitive-0.9.0.0-3e57c2c93f70357b89abd279bf9c6450eaff9186af8f8764d85558b00b77fd29","vector-stream-0.1.0.1-4125fa7e622887e9ff4745441fe6d6d95dba9dc266e26081838d4b0d60586b1d"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"vector-stream-0.1.0.1-4125fa7e622887e9ff4745441fe6d6d95dba9dc266e26081838d4b0d60586b1d","pkg-name":"vector-stream","pkg-version":"0.1.0.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"16a69e2ed71d7b35e16860fac520f94fa4da120eb973d9f8fbf0aa3a703d4a9f","pkg-src-sha256":"d0f507334bdea5431a2f07f525a97f29e76522c32210f5de6d5a2b4f1d42bf7c","depends":["base-4.17.2.1","ghc-prim-0.9.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"vty-6.2-bc35ce9ddf8728bf2726e4017c1dedb78c657747d078b34f36fb8d9c56c5f205","pkg-name":"vty","pkg-version":"6.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3536dc83a3fee17d9a114baf58fe47b6f080c24987266f0cd0b7b4b1fcd9cf19","pkg-src-sha256":"6f1f48b260b4de0a0506e70faf4d41b8c1757ff429a95ba6b6b76cf76c73987b","depends":["base-4.17.2.1","binary-0.8.9.1","blaze-builder-0.4.2.3-07110ef92e4ff669e841c9cfb66f7e4bf3aa26d7da33e2f4a1e77482183cd635","bytestring-0.11.5.3","deepseq-1.4.8.0","directory-1.3.7.1","filepath-1.4.2.2","microlens-0.4.13.1-e63b1bd2616d097c066e6e391ca3d5330945601ee02559d72cf1dedf7ed08a0f","microlens-mtl-0.2.0.3-84114c52534449d9730f8a94b09d2b7936b0abe1f100b39f475f284fb864c6c3","mtl-2.2.2","parsec-3.1.16.1","stm-2.5.1.0","text-2.0.2","utf8-string-1.0.2-8bab835257b271ee29ae248b2151e3cd3b4c78d619915e33e5618c645ed84fa1","vector-0.13.1.0-bf7e1cc6d1863625e3557a1ec930340ef7ddc87a95fa52ed2d17cafcd10fb626"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"vty-crossplatform-0.4.0.0-1802d4245dd206929735824fecb168e72f35029473124a0312dd701a3dd03428","pkg-name":"vty-crossplatform","pkg-version":"0.4.0.0","flags":{"demos":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"50593f91ad16777d921138475a8d2784d538fd206addd30664c620278d6c8544","pkg-src-sha256":"35e5433512b883e83aa8bb8c3475221174445a87e51f162b2ce07f9cf1eb3c1a","depends":["base-4.17.2.1","vty-6.2-bc35ce9ddf8728bf2726e4017c1dedb78c657747d078b34f36fb8d9c56c5f205","vty-unix-0.2.0.0-5cfc04ce15a61d7166cf762255a502d2b1d32dd1b1d924295cc0cec766536b49"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"vty-unix-0.2.0.0-5cfc04ce15a61d7166cf762255a502d2b1d32dd1b1d924295cc0cec766536b49","pkg-name":"vty-unix","pkg-version":"0.2.0.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2af3d0bdae3c4b7b7e567ee374efe32c7439fabdf9096465ce011a6c6736e9ae","pkg-src-sha256":"c2ab67e09edc4bade04e269adc059320e83f68b31e428d11a69b20c4f161ddc1","depends":["base-4.17.2.1","blaze-builder-0.4.2.3-07110ef92e4ff669e841c9cfb66f7e4bf3aa26d7da33e2f4a1e77482183cd635","bytestring-0.11.5.3","containers-0.6.7","deepseq-1.4.8.0","microlens-0.4.13.1-e63b1bd2616d097c066e6e391ca3d5330945601ee02559d72cf1dedf7ed08a0f","microlens-mtl-0.2.0.3-84114c52534449d9730f8a94b09d2b7936b0abe1f100b39f475f284fb864c6c3","microlens-th-0.4.3.15-ac9716305865895d6c59afb908250f80fcaf4afec7398f7b16009c5e24c8e445","mtl-2.2.2","parsec-3.1.16.1","stm-2.5.1.0","terminfo-0.4.1.5","transformers-0.5.6.2","unix-2.7.3","utf8-string-1.0.2-8bab835257b271ee29ae248b2151e3cd3b4c78d619915e33e5618c645ed84fa1","vector-0.13.1.0-bf7e1cc6d1863625e3557a1ec930340ef7ddc87a95fa52ed2d17cafcd10fb626","vty-6.2-bc35ce9ddf8728bf2726e4017c1dedb78c657747d078b34f36fb8d9c56c5f205"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"vty-unix-0.2.0.0-e-vty-unix-build-width-table-85f67fd300ff33ed61302f3418ce950585a7acc8f0ed81e7aa5d608fa470b039","pkg-name":"vty-unix","pkg-version":"0.2.0.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"2af3d0bdae3c4b7b7e567ee374efe32c7439fabdf9096465ce011a6c6736e9ae","pkg-src-sha256":"c2ab67e09edc4bade04e269adc059320e83f68b31e428d11a69b20c4f161ddc1","depends":["ansi-terminal-1.1.1-3f98186690923ffa5f11aebddeaa98c02359ee4769a67355de2329031cfe182f","base-4.17.2.1","vty-6.2-bc35ce9ddf8728bf2726e4017c1dedb78c657747d078b34f36fb8d9c56c5f205"],"exe-depends":[],"component-name":"exe:vty-unix-build-width-table","bin-file":"/home/michael/.cabal/store/ghc-9.4.8/vty-unix-0.2.0.0-e-vty-unix-build-width-table-85f67fd300ff33ed61302f3418ce950585a7acc8f0ed81e7aa5d608fa470b039/bin/vty-unix-build-width-table"},{"type":"configured","id":"word-wrap-0.5-fd61fd031ceb73638a5645ed9c9fd84983dccbe470259e2db4b0f7a483c43ea3","pkg-name":"word-wrap","pkg-version":"0.5","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"721baf1dca2e4bb4cb5a6c2b7391ee1f5a6862cdfbf286bcb6083d5ac2cf421a","pkg-src-sha256":"f85f29ce003ca3e195ec95d49e350dfb713bf71db726270143375df2c610a744","depends":["base-4.17.2.1","text-2.0.2"],"exe-depends":[],"component-name":"lib"}]} \ No newline at end of file diff --git a/dist-newstyle/cache/solver-plan b/dist-newstyle/cache/solver-plan new file mode 100644 index 0000000..5621012 Binary files /dev/null and b/dist-newstyle/cache/solver-plan differ diff --git a/dist-newstyle/cache/source-hashes b/dist-newstyle/cache/source-hashes new file mode 100644 index 0000000..710b725 Binary files /dev/null and b/dist-newstyle/cache/source-hashes differ diff --git a/dist-newstyle/cache/up-to-date b/dist-newstyle/cache/up-to-date new file mode 100644 index 0000000..cbf1c11 Binary files /dev/null and b/dist-newstyle/cache/up-to-date differ diff --git a/dist-newstyle/packagedb/ghc-9.4.8/package.cache b/dist-newstyle/packagedb/ghc-9.4.8/package.cache new file mode 100644 index 0000000..b3cae5c Binary files /dev/null and b/dist-newstyle/packagedb/ghc-9.4.8/package.cache differ diff --git a/dist-newstyle/packagedb/ghc-9.4.8/package.cache.lock b/dist-newstyle/packagedb/ghc-9.4.8/package.cache.lock new file mode 100644 index 0000000..e69de29 diff --git a/freedoc.cabal b/freedoc.cabal new file mode 100644 index 0000000..bdd3fc8 --- /dev/null +++ b/freedoc.cabal @@ -0,0 +1,82 @@ +cabal-version: 3.0 +-- The cabal-version field refers to the version of the .cabal specification, +-- and can be different from the cabal-install (the tool) version and the +-- Cabal (the library) version you are using. As such, the Cabal (the library) +-- version used must be equal or greater than the version stated in this field. +-- Starting from the specification version 2.2, the cabal-version field must be +-- the first thing in the cabal file. + +-- Initial package description 'freedoc' generated by +-- 'cabal init'. For further documentation, see: +-- http://haskell.org/cabal/users-guide/ +-- +-- The name of the package. +name: freedoc + +-- The package version. +-- See the Haskell package versioning policy (PVP) for standards +-- guiding when and how versions should be incremented. +-- https://pvp.haskell.org +-- PVP summary: +-+------- breaking API changes +-- | | +----- non-breaking API additions +-- | | | +--- code changes with no API change +version: 0.1.0.0 + +-- A short (one-line) description of the package. +synopsis: A simple text processor + +-- A longer description of the package. +-- description: + +-- URL for the project homepage or repository. +homepage: https://gitea.awain.net/alterwain/Freedoc + +-- The license under which the package is released. +license: Apache-2.0 + +-- The file containing the license text. +license-file: LICENSE + +-- The package author(s). +author: alterwain + +-- An email address to which users can send suggestions, bug reports, and patches. +maintainer: alterwain@protonmail.com + +-- A copyright notice. +-- copyright: +category: Text +build-type: Simple + +-- Extra doc files to be distributed with the package, such as a CHANGELOG or a README. +extra-doc-files: CHANGELOG.md + +-- Extra source files to be distributed with the package, such as examples, or a tutorial module. +-- extra-source-files: + +common warnings + ghc-options: -Wall + +executable freedoc + -- Import common warning flags. + import: warnings + + -- .hs or .lhs file containing the Main module. + main-is: Main.hs + + -- Modules included in this executable, other than Main. + -- other-modules: + + -- LANGUAGE extensions used by modules in this package. + -- other-extensions: + + -- Other library packages from which modules are imported. + build-depends: + base ^>=4.17.2.1, + brick >= 2.4 + + -- Directories containing source files. + hs-source-dirs: app + + -- Base language which the package is written in. + default-language: Haskell2010