Commit Graph

29 Commits

Author SHA1 Message Date
Jacob Walters
18b165bede [ elab ] Let elab scripts access visibility modifiers 2024-03-15 22:41:29 +00:00
Alex1005a
196d08dd6d
Implement Precise Reference Counting for C backend (#2989)
* start implement drop spec

* [RefC] remove vars after prim function call

* [RefC] gc pointer processing changed

* [RefC] fix memory leak in stringIteratorToString

* [RefC] runtime.c refactoring

* Implement basic reuse analisis

* [RefC] do not delete reusable variables in value in let

* [RefC] Use names instead tags in reuse map

* [RefC] Don't set all fields to null in reuse constructor

* Use record syntax in RefC

* Add some utility functions to RefC

* Sort output in garbageCollect refc test

* Add memory leak test for RefC

* [RefC] Remove variable only from body in let

Co-authored-by: G. Allais <guillaume.allais@ens-lyon.org>

* [RefC] Remove borrowed set from env

* [RefC] Use Ref variable for Enviroment instead of passing as an argument

* [RefC] Use locally function as combinator

* [RefC] removing unnecessary dup and remove during pattern matching

* Update refcTests and refcMemoryLeakTests

* Remove some test files

* move CHANGELOG entry to CHANGELOG_NEXT

* Move refc-memory tests

* Change calling convention test

* [RefC] [Test] Reuse test

---------

Co-authored-by: G. Allais <guillaume.allais@ens-lyon.org>
Co-authored-by: Mathew Polzin <matt.polzin@gmail.com>
2024-02-12 00:43:17 -06:00
Joel Berkeley
ee18555869
Add (++) for List variation of All (#3179)
* Add `(++)` for `All` for `List`

* changelog

* contributors

* review changes

* update comment

* update comment

* match TODO style

* disambiguate the right one

* further comment changes
2024-01-01 21:03:13 -06:00
Adam Brouwers-Harries
170e52b3c1 [fix] correctly pass environment vars to the RefC compiler 2023-12-12 21:25:47 +00:00
Andor Penzes
82e4fd9da7
Add foldrImplGoLemma to Data.Vect (#2835)
Co-authored-by: CodingCellist <teh6@st-andrews.ac.uk>
2023-11-30 10:07:41 +00:00
Jens Petersen
48dbc3251b implement DESTDIR support for distros
both 'make install' and 'idris2 --install*' should respect DESTDIR now
2023-08-22 16:44:13 +01:00
Aleksei Volkov
e594669210
[ fix #1878 ] Programmer-provided terms should be alwaysReduce (#2977)
* [ fix ] Programmer-provided terms should be alwaysReduce

This ports Edwin's commit that fixes the original issue back to Idris

Co-authored-by: Edwin Brady <ecb10@st-andrews.ac.uk>

* [ tests ] Added regression test for #1878

* Updated CHANGELOG.md and CONTRIBUTORS

---------

Co-authored-by: Edwin Brady <ecb10@st-andrews.ac.uk>
2023-06-01 17:08:02 +01:00
Robert Walter
8120988a60
[ doc ] extend tutorial (#2897) 2023-03-28 10:27:23 +01:00
rhiannon morris
20ecc02569
add Functor impl for Tokenizer (#2901) 2023-02-28 09:20:21 +00:00
CodingCellist
59460c2f46
[ admin ] Update CHANGELOG and CONTRIBUTORS (#2703)
* [ admin ] Update CHANGELOG and CONTRIBUTORS

We really need to do a release at some point...

* [ ci ] Don't check capitalised proper names in links and code

Sometimes hyperlinks and code-blocks just don't use the "proper"
capitalisation (e.g. `.html` vs `.HTML`), and that's okay.
(or even critical as links may not be found without "incorrect" format)

* [ ci ] Don't check terminology in links and code-blocks

Hopefully this is the right fix for the problem in #2703

* [ ci ] 3rd attempt at fixing nl linter

* [ ci ] Attempt no. 4 at fixing nl linter

* [ ci ] Point NL linter at YAML config file

Was that actually it??

* Update CHANGELOG.md

* Add note about forward declaration of records

* [ admin ] Add PR template with CHANGELOG reminder

To hopefully help mitigate big crawl-throughs of what's changed,
à la #2703.

* [ admin ] Reflow CHANGELOG to 80 characters where possible

Only done for the "next version" changes for the sake of diff size.
(Personally, I'd want to have the linter enforce this, but that might be
too extreme; there's already a note in the CI config complaining about
line length...)

* [ admin ] Make linter happy

It never ends...

Co-authored-by: Joel Berkeley <16429957+joelberkeley@users.noreply.github.com>
Co-authored-by: Steve Dunham <dunhamsteve@gmail.com>
2022-10-21 16:48:37 +02:00
Sam Phillips
358c107c53 Update CHANGELOG.md and CONTRIBUTORS 2022-10-04 10:24:27 +02:00
Adowrath
1914606d40 Fix connect in linear module and add bytes-specific functions 2022-09-01 12:23:29 +01:00
Tom Harley
79c79f080c
[ doc ] Add documentation for lambda-lifted representation (#2314)
Co-authored-by: Thomas E. Hansen <teh6@st-andrews.ac.uk>
2022-04-01 10:32:15 +01:00
octeep
9a9412e1a2
make writeBufferData return the number of bytes that have been written (#2276) 2022-01-25 13:25:06 +00:00
teggot
d3aed0404c
[ fix #1959 ] use modern record update syntax (#2196) 2021-12-16 18:23:18 +00:00
Nick Drozd
a07d42ac91
Delete old Order file, update changelog and contributors (#1685) 2021-07-12 10:53:45 +01:00
CodingCellist
fac0e32f48
[ fix ] Chez channels (#1596) 2021-07-02 13:13:50 +01:00
Alissa Tung
2865a70a6e
[ base ] add List functions (#1550)
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2021-07-01 08:00:12 +01:00
Zoe Stafford
7fe8c42116
[ builtin ] O(1) integerToNat for any 'Nat'-like type (#1403) 2021-05-13 18:44:24 +01:00
Stefan Höck
f028981e5a
[ fix #801 ] Use Number for up to 32 bit integers on JS backends (#1375) 2021-05-10 12:17:09 +01:00
CodingCellist
89a84a34a4
Patch CVs and sleep in Racket (#1059) 2021-03-15 13:43:12 +00:00
Rodrigo B. de Oliveira
37a4c6f1cd Update contributors list 2021-01-22 18:10:01 +00:00
Giuseppe Lomurno
4e2f0a58e9 Internalized contrib libraries and removed dependency 2021-01-21 14:56:53 +01:00
Edwin Brady
ce1e43e15c Alphabetic order in CONTRIBUTORS
vim's :sort is apparently case sensitive by default!
2021-01-16 14:20:25 +00:00
Edwin Brady
e1ecefa205 Update CHANGELOG/CONTRIBUTORS
We need to keep the CONTRIBUTORS file up to date, to give people proper
credit where it's due. There may still be people missing - please feel
free to add your own name if you think it should be there!
2021-01-16 14:18:18 +00:00
Ruslan Feizerahmanov
1dba32a0c4
[ doc ] new application syntax (#820) 2020-12-07 18:59:49 +00:00
lodi
3b49b10832
add extraRuntime option for Scheme backends (#578) 2020-08-21 09:34:57 +01:00
Edwin Brady
0cd484fa09 Add idris2api.ipkg
This is a small variation that installs all the modules as a library,
which could be used by external tools, eg fancy REPLs, code generators,
etcs.
2020-05-20 16:38:46 +01:00
Edwin Brady
fd55e629ee Copy more files over from Idris2 2020-05-20 11:23:04 +01:00