Commit Graph

37 Commits

Author SHA1 Message Date
Edwin Brady
4b1667fdcf Open files in binary mode
Needed for windows, and harmless on Unix (Idris 1 did it this way).
2020-06-11 14:35:26 +01:00
Edwin Brady
0a246af449 Make Buffer more primitive
Meaning that the FFI is aware of it, so you can send arbitrary byte data
to foreign calls. Fixes #209

This means that we no longer need the hacky way of reading and writing
binary data via scheme, so can have a more general interface for reading
and writing buffer data in files.

It will also enable more interesting high level interfaces to binary
data, with C calls being used where necessary.

Note that the Buffer primitive are unsafe! They always have been, of
course... so perhaps (later) they should have 'unsafe' as part of their
name and better high level safe interfaces on top.

This requires updating the scheme to support Buffer as an FFI primitive,
but shouldn't affect Idris2-boot which loads buffers its own way.
2020-06-11 14:05:52 +01:00
Edwin Brady
7f6de27f5c Update scheme/racket to deal with Bits types
We need to add Bits primitives to Idris2-boot to keep that at least able
to build this for bootstrapping purposes.
2020-06-01 11:58:22 +01:00
Edwin Brady
8c5d5055fa Update scheme
Changing the prelude totality default means we need to update the scheme
to be able to cope with its new meaning
2020-05-28 16:05:08 +01:00
Edwin Brady
de7dff19b0 Update Scheme bootstrap files
Ready for a 0.2.0 release
2020-05-25 14:21:53 +01:00
Kamil Shakirov
80344b5435 Merge branch 'master' into better-names 2020-05-24 07:59:25 +06:00
Edwin Brady
b93b51a0e1 Remove racket ipkg, update scheme
Needed to get the bootstrap version working with the tests in racket
2020-05-23 23:30:49 +01:00
Edwin Brady
cff5fc2625 Workaround for byte vectors in Racket
Racket appears to have a different notion of current directory than the
system does, so we need to tell it which directory we think we're in
when reading and writing bytevectors using the scheme file functions.
2020-05-23 21:37:31 +01:00
Kamil Shakirov
278dc1ca29 Merge branch 'master' into better-names 2020-05-24 00:37:05 +06:00
Edwin Brady
08e4955c0b Update scheme/racket again
Bootstrapping needs IDRIS2_CG set up properly
2020-05-23 19:30:53 +01:00
Kamil Shakirov
e61e44205b Merge branch 'master' into better-names 2020-05-24 00:26:52 +06:00
Niklas Larsson
709ca9d152 Unbreak Windows bootstrap 2020-05-23 20:00:15 +02:00
Edwin Brady
006236fde8 Add racket bootstrap script 2020-05-23 16:08:43 +01:00
Edwin Brady
c8896290a6 Update scheme given network code move 2020-05-23 15:57:20 +01:00
Edwin Brady
e17f66244a Move network support to libidris2_support
This makes the support stuff much simpler, and also makes the racket
bootstrap process easier
2020-05-23 15:52:33 +01:00
Edwin Brady
561123d49d Update generated Scheme
Mostly because of the racket, which needs to put the libraries in the
right place to bootstrap properly.
2020-05-23 15:21:59 +01:00
Edwin Brady
38c9633b66 Update generated racket 2020-05-22 18:16:18 +01:00
Edwin Brady
824b661cd5 Update bootstrap scheme
The library code uses a new feature, and it needs to be able to build
with the bootstrap code (though, fortunately, not with idris2-boot)
2020-05-22 18:06:04 +01:00
Niklas Larsson
d50bb099ea Windows support 2020-05-21 15:13:06 +02:00
Kamil Shakirov
f696335f2d Rename some file/dir manipulation functions
Renamed:

fileRemove -> removeFile

dirOpen -> openDir
dirClose -> closeDir
rmDir -> removeDir
2020-05-21 18:32:35 +06:00
Edwin Brady
ac859a9c50 Move bootstrap racket to the right place 2020-05-20 16:55:20 +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
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
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
7defc40c47 Better bootstrapping process 2020-05-19 21:08:32 +01:00
Edwin Brady
6bbb914fca
Merge pull request #1 from edwinb/remove-directory-system
Add rmDir to System.Directory
2020-05-19 12:24:35 +01:00
Edwin Brady
b69068f4ff Update bootstrap scripts 2020-05-18 20:33:38 +01:00
André Videla
3321dc6be3 Add rmDir to System.Directory 2020-05-18 18:28:33 +01:00
Edwin Brady
1f3c557889 Fiddle about with bootstrap scripts
Not quite there, but nearly
2020-05-18 18:02:56 +01:00
Edwin Brady
557de91c5a Internal errors when install fails 2020-05-18 17:15:10 +01:00
Edwin Brady
d2b652add5 Update generated scheme 2020-05-18 16:59:05 +01:00
Edwin Brady
2ef0dec192 Change boot directory 2020-05-18 16:23:37 +01:00
Edwin Brady
155dddb5f3 Another attempt at making the bootstrap step work 2020-05-18 16:02:30 +01:00
Edwin Brady
555f522ad0 Add bootstrapping instructions
Added a known good scheme output which can be used to start the
bootstrapping process.
2020-05-18 14:43:12 +01:00