{ "info": { "author": "Timothy Bazalgette", "author_email": "timothy.bazalgette@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "ALPAFA\n======\n\nALPAFA (/\u02cc\u00e6l\u02c8p\u00e6f\u0259/, Algorithm for Lexicocentric Parameter Acquisition by Feature Assignment) is a\nPython implementation of the algorithm described in chapter 2 of my 2015 PhD thesis, `Algorithmic\nAcquisition of Focus Parameters `_ (AAFP), which grew out of\nan attempt to formalise certain proposals of the `Rethinking Comparative Syntax\n`_ (ReCoS) project. The algorithm takes a set of heads, each of\nwhich is specified for a number of discoverable properties, and uses a \"prominence\" order of\nproperties to construct a minimal categorial system. This is achieved by attempting to assign each\nnew feature to all heads of the \"largest\" existing category, and, if this fails, making the\n\"smallest\" categorial division possible. This algorithm is a putative component of domain-general\ncategorisation processes that is designed to capture the structured typological and historical\nsyntactic variation seen crosslinguistically through third factor principles. The motivation for\nand behaviour of this algorithm is described in detail in chapters 1 and 2 of AAFP, including\nextensions for unvalued features, movement triggers, and c-selection. Chapter 10 presents and\ncompares worked examples of inputs to the algorithm for toy fragment grammars of 6 varieties.\n\nLinks\n=====\n\n* AAFP: http://ling.auf.net/lingbuzz/003006\n* ReCoS project: http://recos-dtal.mml.cam.ac.uk/\n* Github: https://www.github.com/timothybazalgette/alpafa\n* PyPI: https://pypi.python.org/pypi/alpafa\n\nInstallation\n============\n\nInstall with pip:\n\n``$ pip install alpafa`` or ``$ pip3 install alpafa``\n\nInput file format\n=================\n\nInput files are closely based on the set notation used for input specifications in AAFP, but are\nsomewhat simplified for ease of creation and reading. They should be plain text files with UTF-8\ncompatible encodings. Place each head name on a separate line, followed by a colon and a\ncomma-separated list of properties. The prominence order should be placed on another line, starting\n``prominence=``, followed by a comma-separated list of property names. Properties that are sets or\nordered pairs remain the same as in AAFP, though all sets must be given in full (i.e. no set-builder\nnotation). All spaces and blank lines will be ignored. An example specification for a toy fragment\nof English is as follows::\n\n Cmat: comp, {T}}\n Cwh: comp, int, , {T}\n Crel: n, comp, nom, {T}\n Csub: comp, arg, {T}\n T: , {V, Copadj}\n V: v, cat, {Csub, D, Dwh}\n Copadj: v, {A}\n D: n, arg, {Crel, \u03c6}\n Dwh: n, arg, wh, whq, {Crel, \u03c6}\n only: invis, excl, {D}\n OpCR: invis, {\u03c6, N}\n \u03c6: n, nom, phi, low, {noun}, {N}\n ind: n\n N: n, cat, noun, low\n A: cat\n Focfeat: invis, foc, feat, {Cmat, Cwh, Crel, Csub, T, V, Copadj, D, Dwh, only, OpCR, \u03c6, ind, N, A, Focfeat}\n\n prominence = n, v, cat, noun, comp, arg, wh, whq, nom, phi, int, invis, excl, feat, foc, low\n\nIncluded with the source code are example input files for the 6 toy fragment grammars in AAFP\nchapter 10.\n\nOuput\n=====\n\nALPAFA defaults to outputting a list of the heads with their categorial and dependent features,\nalong with a brief description of the algorithm's operation. Feature bundles are separated by tabs\nfor easy formatting when pasted into word processors - I may incorporate prettier printing in later\nversions. There are a number of options for more detailed output of the algorithm's operation and\nthe categories created by it, discussed in the following section. ::\n\n Cmat\t[-N,-V,-CAT,+COMP,-ARG,-INT]\t(-N,-V,-CAT,-COMP,-INVIS)\n Cwh\t[-N,-V,-CAT,+COMP,-ARG,+INT]\t(-N,-V,-CAT,-COMP,-INVIS)\t[uwhq^]\n Crel\t[+N,-CAT,+COMP,-ARG,+NOM,-LOW]\t(-N,-V,-CAT,-COMP,-INVIS)\n Csub\t[-N,-V,-CAT,+COMP,+ARG]\t(-N,-V,-CAT,-COMP,-INVIS)\n T\t[-N,-V,-CAT,-COMP,-ARG,-INVIS]\t(-N,+V)\t[uphi^]\n V\t[-N,+V,+CAT]\t(-CAT,+ARG)\n Copadj\t[-N,+V,-CAT,-COMP,-ARG]\t(-N,-V,+CAT)\n D\t[+N,-CAT,-COMP,+ARG,-WH,-LOW]\t(+N,-CAT,-ARG,+NOM)\n Dwh\t[+N,-CAT,-COMP,+ARG,+WH,-LOW]\t(+N,-CAT,-ARG,+NOM)\t[vwhq]\n only\t[-N,-V,-CAT,-COMP,-ARG,+INVIS,+EXCL]\t(+N,-CAT,-COMP,+ARG,-WH)\n OpCR\t[-N,-V,-CAT,-COMP,-ARG,+INVIS,-EXCL,-FEAT]\t(+N,+LOW)\n \u03c6\t[+N,-CAT,-COMP,-ARG,+NOM,+LOW]\t(+N,+CAT)\t[vphi,unoun]\n ind\t[+N,-CAT,-COMP,-ARG,-NOM,-LOW]\n N\t[+N,+CAT,+LOW]\t\t[vnoun]\n A\t[-N,-V,+CAT]\n Focfeat\t[-N,-V,-CAT,-COMP,-ARG,+INVIS,-EXCL,+FEAT]\t()\t[vfoc]\n\n Over 82 loops, 28 of which were non-vacuous, ALPAFA created 67 categories using 12 pairs of categorial features, and assigned 16 non-categorial features.\n\nUsage\n=====\n\nALPAFA is implemented as a command line utility. Use the following syntax to read from an input file\nand write the output of ALPAFA to a file (note that this will overwrite existing files of the same\nname as the output):\n\n``$ alpafa input_file output_file``\n\nMore complex options can be seen with ``$ alpafa -h`` or ``$ alpafa --help``::\n\n usage: alpafa [-h] [--no_uf] [--no_cselect] [--log] [--categories]\n [--dependents]\n input_file output_file\n\n Applies the algorithm from AAFP to a correctly formatted input file.\n\n positional arguments:\n input_file correctly formatted UTF-8 input file\n output_file name of file to output\n\n optional arguments:\n -h, --help show this help message and exit\n --no_uf do not implement unvalued features\n --no_cselect do not implement c-selection\n --log include a log of algorithm operations\n --categories list all categories before heads\n --dependents list all dependent features below their relevant categories\n (implies --categories)\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://www.github.com/timothybazalgette/alpafa", "keywords": "parameters lexicocentrism recos features linguistics", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "ALPAFA", "package_url": "https://pypi.org/project/ALPAFA/", "platform": "any", "project_url": "https://pypi.org/project/ALPAFA/", "project_urls": { "Homepage": "https://www.github.com/timothybazalgette/alpafa" }, "release_url": "https://pypi.org/project/ALPAFA/0.2/", "requires_dist": null, "requires_python": ">=3", "summary": "Algorithm for lexicocentric parameter acquisition by feature assignment", "version": "0.2" }, "last_serial": 3019080, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "c815e9ce4baa633b21218888d907f5ee", "sha256": "b6f8df08402a3b31c5432e261529eaed75fb3dec6827cd772b9c7ae173089dac" }, "downloads": -1, "filename": "ALPAFA-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "c815e9ce4baa633b21218888d907f5ee", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 14193, "upload_time": "2017-07-13T01:35:59", "url": "https://files.pythonhosted.org/packages/df/fc/2d59b2597bde083595cee90677df1d8d8f141333711b72d51bb256e372b4/ALPAFA-0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fc0f1bfef1ccc5c5df4d4c289eaac16c", "sha256": "41c4987c8080d36c967230b8e77a8fcdfaca9caff163a1cc7874444c6b7ba3c2" }, "downloads": -1, "filename": "ALPAFA-0.2.tar.gz", "has_sig": false, "md5_digest": "fc0f1bfef1ccc5c5df4d4c289eaac16c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 12313, "upload_time": "2017-07-13T01:36:01", "url": "https://files.pythonhosted.org/packages/32/0c/cdb0709f03b6812ea6c098439738fdd0de860b214d41076ffdd04d778ef4/ALPAFA-0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c815e9ce4baa633b21218888d907f5ee", "sha256": "b6f8df08402a3b31c5432e261529eaed75fb3dec6827cd772b9c7ae173089dac" }, "downloads": -1, "filename": "ALPAFA-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "c815e9ce4baa633b21218888d907f5ee", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 14193, "upload_time": "2017-07-13T01:35:59", "url": "https://files.pythonhosted.org/packages/df/fc/2d59b2597bde083595cee90677df1d8d8f141333711b72d51bb256e372b4/ALPAFA-0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fc0f1bfef1ccc5c5df4d4c289eaac16c", "sha256": "41c4987c8080d36c967230b8e77a8fcdfaca9caff163a1cc7874444c6b7ba3c2" }, "downloads": -1, "filename": "ALPAFA-0.2.tar.gz", "has_sig": false, "md5_digest": "fc0f1bfef1ccc5c5df4d4c289eaac16c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 12313, "upload_time": "2017-07-13T01:36:01", "url": "https://files.pythonhosted.org/packages/32/0c/cdb0709f03b6812ea6c098439738fdd0de860b214d41076ffdd04d778ef4/ALPAFA-0.2.tar.gz" } ] }