{"id":13773280,"url":"https://github.com/fifth-postulate/julian","last_synced_at":"2026-03-16T04:37:09.322Z","repository":{"id":11136495,"uuid":"13500980","full_name":"fifth-postulate/julian","owner":"fifth-postulate","description":"Date and time library for Prolog","archived":false,"fork":false,"pushed_at":"2021-03-08T02:58:15.000Z","size":78,"stargazers_count":26,"open_issues_count":10,"forks_count":3,"subscribers_count":7,"default_branch":"main","last_synced_at":"2024-05-18T20:34:42.706Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Prolog","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fifth-postulate.png","metadata":{"files":{"readme":"README.md","changelog":"History.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-10-11T14:29:27.000Z","updated_at":"2023-07-20T06:11:30.000Z","dependencies_parsed_at":"2022-08-28T20:21:18.037Z","dependency_job_id":null,"html_url":"https://github.com/fifth-postulate/julian","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fifth-postulate%2Fjulian","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fifth-postulate%2Fjulian/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fifth-postulate%2Fjulian/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fifth-postulate%2Fjulian/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fifth-postulate","download_url":"https://codeload.github.com/fifth-postulate/julian/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253523690,"owners_count":21921815,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T17:01:13.834Z","updated_at":"2025-12-24T21:55:47.103Z","avatar_url":"https://github.com/fifth-postulate.png","language":"Prolog","funding_links":[],"categories":["Date"],"sub_categories":[],"readme":"# julian [![Build Status](https://travis-ci.org/fifth-postulate/julian.svg?branch=main)](https://travis-ci.org/fifth-postulate/julian)\nA date and time library for Prolog.\n\n*Warning*:  This is _alpha_ quality software.  APIs will change.  There are bugs.  Use with caution.  Time zones are not yet supported and semantics that should account for time zone choose arbitrary, unpredictable behavior.\n\nWith that out of the way, the library can do a lot of useful stuff.  See the [in-depth tutorial][tutorial] for examples.\n\n## Synopsis\n\n```\n:- use_module(library(julian)).\n:- use_module(library(clpfd)).\nsolution(Year) :-\n    % Eisenhower presidency had Fourth of July on Sunday in ...\n    form_time([dow(sunday), Year-07-04]),\n    Year in 1953..1961.\n    \n?- solution(Y).\nY = 1954.\n```\n\n## Installation\n\nUsing SWI-Prolog 7.1.18 or later:\n\n```\n?- pack_install(julian).\n```\n\nThis module uses [semantic versioning][versioning].\n\nSource code available and pull requests accepted at [`http://github.com/fifth-postulate/julian`][project]\n\n## Development\n\n### Testing\nTest are written with the _Test Anything Protocol_ ([TAP][tap]) and use the [`fnogatz/tap`][pack(tap)] library.\n\nTo install the tap pack run\n\n```prolog\n?- pack_install(tap).\n```\n\nNext, the `julian` pack should be available as a library. One can install from the local installation by running\n\n\n```prolog\n?- pack_install('file:///home/\u003cpath-to-project\u003e/julian').\n```\n\nA TAP test harness should be used to run the tests in this project. To run the `t/types.pl` test on could execute\n\n```sh\nprove -v -e 'swipl -q -t main -s' t/types.pl\n```\n\nTo run all test one could use\n\n```sh\nprove -v -e 'swipl -q -t main -s' t/**.pl\n```\n\nOr use `make tests`.\n\n\n[tutorial]: http://fifth-postulate.github.io/julian/\n[versioning]: http://semver.org/\n[project]: http://github.com/fifth-postulate/julian\n[tap]: http://testanything.org/tap-specification.html\n[pack(tap)]: https://github.com/fnogatz/tap","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffifth-postulate%2Fjulian","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffifth-postulate%2Fjulian","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffifth-postulate%2Fjulian/lists"}