Commit Graph

101 Commits

Author SHA1 Message Date
Ohad Kammar
83793113ba First steps towards emacs idris-mode compatibility
To make sure the protocol doesn't jam, supply stub implementation to
all protocol commands.

Report to REPL when an unimplemented command is used.

Notes
-----

1. We don't support add-proof-clause. I guess all proof-related stuff
   should be removed from the protocol

2. Some types are stub types too. That's because we need to `SExpable`
   more structured types like `PTerm`. I'll leave that to the future.

3. I've lifted `REPLResult` into `IDEResult` inside `IDEMode/REPL.idr`.
   That's because some results, like `who-calls` only make sense in
   the context of an IDE, not in the context of a user-facing REPL.

   The Editing commands should be moved from the REPL into the IDE and
   called from the REPL.

   I leave that to the future, once more of the protocol is
   implemented.

4. Export a few functions from the REPL so that the IDE can call them.

5. There's one outstanding issue with the emacs idris-mode: it
   currently calls the unsupported `:consolewidth` REPL command. This
   is harmless, and can wait until @edwinb decides whether we should
   support it in the future or not.

6. There was a bug as to how holes are returned to the user. The
   format isn't documented in the protocol, so we'll need to reproduce
   it, perhaps from the idris-mode elisp sources.
2020-05-22 01:01:55 +01:00
Ohad Kammar
1945619db7 libs/network: Port FFI calls from deprecated interface to %foreign pragma 2020-05-20 20:09:56 +01:00
Jan de Muijnck-Hughes
f595ce3ef1 Update INSTALL.md 2020-05-20 15:01:19 +01:00
Jan de Muijnck-Hughes
07b1ba47d2 Update README.md 2020-05-20 14:55:40 +01:00
Edwin Brady
4aabc06b31 Fix bootstrap script (again)
I'm doing this in too much of a hurry... but it definitely works for me
locally now!
2020-05-20 14:33:34 +01:00
Edwin Brady
43ef716fa8 Update idris2-boot 2020-05-20 14:27:26 +01:00
Edwin Brady
b94ff558f3 Put idris2.ss back in the right place 2020-05-20 14:23:26 +01:00
Edwin Brady
451ed0f213 Update Makefile
Remove all idris2sh so that travis and the bootstrap scripts look in the
right place
2020-05-20 14:19:06 +01:00
Edwin Brady
32263883ee Update bootstrapping scripts for new exec name
(Also, hopefully, this will poke travis to build the repo in its new
location!)
2020-05-20 14:00:15 +01:00
Edwin Brady
9cc4cba065 Change executable name
I think we can be the official Idris2 now
2020-05-20 13:31:04 +01:00
Edwin Brady
8c4727d308
Merge pull request #12 from ska80/silence-package-clean
Silence 'idris2 --clean idris2.ipkg' errors
2020-05-20 13:25:49 +01:00
Edwin Brady
34c542d29e
Merge pull request #11 from ska80/ignore-bootstrap
Ignore Racket's build artifacts in 'bootstrap' directory
2020-05-20 13:25:37 +01:00
Edwin Brady
913de4cbaf
Merge pull request #6 from LibreCybernetics/refactor-mapError
Create new mapError utility function and refactor some parser code
2020-05-20 12:55:33 +01:00
Kamil Shakirov
3491f4965e Silence 'idris2 --clean idris2.ipkg' errors
Silence annoying errors like 'No such file or directory' if there are no files/directoris to delete
2020-05-20 16:59:49 +06:00
Kamil Shakirov
5560b75158 Ignore Racket's build artifacts in 'bootstrap' directory 2020-05-20 16:57:49 +06:00
Edwin Brady
14b3919809
Merge pull request #9 from zenntenn/Update_gitignore
Ignoring autogenerated bootstrap/test files
2020-05-20 11:49:28 +01:00
Edwin Brady
08c8ec448a
Merge pull request #8 from LibreCybernetics/refactor-utils-string-sh
Refactor Utils.String.stripQuotes to avoid double reversion on Strings
2020-05-20 11:48:41 +01:00
Edwin Brady
4d7f122375
Merge pull request #7 from chrrasmussen/fix-chez016
Fix chez016 test
2020-05-20 11:48:06 +01:00
Edwin Brady
94b83c22c6
Merge pull request #10 from ska80/misc-fixes
More fixes and improvements
2020-05-20 11:47:25 +01:00
Edwin Brady
ae7bdaa7d3
Merge branch 'master' into misc-fixes 2020-05-20 11:46:28 +01:00
Edwin Brady
99e0976b75 Some updates in INSTALL.md
Hopefully clearer now.
2020-05-20 11:40:27 +01:00
Edwin Brady
c911c60e77 Fix link to Travis 2020-05-20 11:33:07 +01:00
Edwin Brady
fd2ebd52c3 Add licence and changelog and update REAMDE 2020-05-20 11:31:48 +01:00
Kamil Shakirov
d47202318a Ignore 'docs/build' 2020-05-20 16:28:18 +06:00
Kamil Shakirov
f6e04b99ad Merge branch 'master' into misc-fixes 2020-05-20 16:27:55 +06:00
Edwin Brady
fd55e629ee Copy more files over from Idris2 2020-05-20 11:23:04 +01:00
Edwin Brady
d3fab2d28f Fix typo in bootstrap script 2020-05-20 11:12:54 +01:00
Edwin Brady
8fbce0cdc1 Also need to pass through data directory 2020-05-20 11:02:49 +01:00
Kamil Shakirov
ffc1b490bd Merge branch 'master' into misc-fixes 2020-05-20 16:00:43 +06:00
Edwin Brady
87f0c1c6be Bootstrap script needs to know library path
This is for locating the libraries for copying to the chez executable.
If they're not installed yet, it'll look in the wrong place.
2020-05-20 10:52:18 +01:00
Edwin Brady
b39df83002 Maybe the tests need the library path...
It's surprising because the chez startup script should set it, but let's
see what happens anyway.
2020-05-20 10:48:29 +01:00
Kamil Shakirov
38b4fe6aca Merge branch 'master' into misc-fixes 2020-05-20 15:45:55 +06:00
Edwin Brady
65f7fb6ab8 Minor edit to bootstrap script
It's better if the tests aren't interactive, since they're intended for
running on CI as well as to give an idea of whether building was
successful, rather than to give an idea of what has gone wrong.
2020-05-20 10:38:56 +01:00
Edwin Brady
77c218435b Reorganise some bootstrap/travis steps 2020-05-20 10:33:40 +01:00
Kamil Shakirov
880981d5b4 More fixes and improvements
* Ignore build artifacts in 'tests' directory
* Remove unused variables in makefiles
* Add 'bootstrap-clean' rule to delete build artifacts from 'bootstrap' directory
* Add 'distclean' rule to delete all build artifacts from the source tree
2020-05-20 15:31:30 +06:00
Edwin Brady
6437d8070b Need a sudo 2020-05-20 10:24:55 +01:00
Edwin Brady
f61f0a5c40 Fix typo in error
(Okay, this is just to see if travis does something...)
2020-05-20 10:23:22 +01:00
Edwin Brady
ca3d519291 Experiment with setting up Travis
I have no idea what I'm doing
2020-05-20 10:21:35 +01:00
Edwin Brady
9eba9113dd Update racket bootstrap scripts
Need to pass the LD_LIBRARY_PATH all the way through or racket doesn't
know where to look. I really don't know why it doesn't work to just set
it at the top level in the script, but it didn't (on my Mac, at least).
2020-05-20 00:03:39 +01:00
Joshua Hillerup
6c4cf6ff82 Ignoring autogenerated bootstrap/test files 2020-05-19 18:46:57 -04:00
Edwin Brady
746df34470 Don't overwrite idris2sh.rkt
Better to copy and update the new version with the prefix
2020-05-19 23:01:04 +01:00
Edwin Brady
5b88afb3ef Add racket bootstrap script 2020-05-19 22:56:27 +01:00
Edwin Brady
a5638e0aac Update bootstrap scheme
The older version had a lingering bug from upstream Idris in writing
Integers to TTC
2020-05-19 21:42:24 +01:00
Edwin Brady
ddd3ff151d Fix up bootstrap scripts
They weren't quite right; I've now successfully built from the script on
a machine with only Chez available.
2020-05-19 21:39:36 +01:00
Fabián Heredia Montiel
868c71b863 Refactor Utils.String.stripQuotes to avoid double reversion on Strings 2020-05-19 15:33:58 -05:00
Edwin Brady
7defc40c47 Better bootstrapping process 2020-05-19 21:08:32 +01:00
Christian Rasmussen
5281de93e0 Fix chez016 test 2020-05-19 22:02:15 +02:00
Edwin Brady
9213b65ee1 Update INSTALL.md
make clean does a better job than just cleaning the build directories
2020-05-19 20:31:04 +01:00
Edwin Brady
bd6a4903b5 Finish tests 2020-05-19 20:06:37 +01:00
Edwin Brady
63f0dae035 Remove some tests which are no longer useful
These are ttimp tests that are now subsumed by idris2 tests, and we'd
need to implement some ttimp source that isn't really worth it at this
stage.
2020-05-19 18:31:52 +01:00