Stiopa Koltsov
1617d95961
System.Errno.strerror
...
* add `strerror` function
* move `getErrno` to `System.Errno`
* use `strerror` in `Show FileError`
* on node there's no access to `strerror`, so `strerror` just converts the number to string
2021-07-13 10:34:04 +01:00
Stiopa Koltsov
d676ea6ab4
Expose malloc and free from System.FFI
...
* Move `malloc`/`free` from `Network.FFI` to `System.FFI`
* Might be useful by other code
2021-07-13 10:24:26 +01:00
Stiopa Koltsov
ed40b212b2
Make System.Signal async-signal-safe
...
It is not safe to call `malloc` or `pthread_mutex_lock` from signal
handler.
2021-07-12 20:43:26 +01:00
Stefan Höck
599d0635e9
[ refactor ] JS backend overhaul ( #1609 )
2021-07-10 11:15:21 +01:00
CodingCellist
fac0e32f48
[ fix ] Chez channels ( #1596 )
2021-07-02 13:13:50 +01:00
Kamiλ Shakirov
8e30b296c0
[ refactor ] Remove Data.Strings module ( #1607 )
2021-06-28 13:48:37 +01:00
G. Allais
49f8cefeff
[ cleanup ] Test.Golden ( #1526 )
2021-06-21 17:30:11 +01:00
Nick Drozd
0db136d168
Hoist some pures ( #1556 )
2021-06-16 15:22:52 +01:00
Robert Wright
c63f25dac2
Distinguish common C and RefC FFI calls
2021-06-14 15:06:44 +01:00
Fabián Heredia Montiel
dad4dcdaf8
Add totality annotations to src
and libs/{prelude, base}
2021-06-12 21:06:08 -05:00
Mathew Polzin
a0a417240e
Simple signal handling ( #1458 )
2021-05-25 16:45:46 +01:00
Robert Wright
f3aae06b28
Add RefC Clock support
2021-05-20 14:25:16 +01:00
Robert Wright
2a957a38d9
Add RefC FFI header file support
2021-05-20 14:25:16 +01:00
Niklas Larsson
473b8ee740
Windows test fixes
...
Translate node error codes
Strip 'b' from flags
Simplify directory wrangling in chez016
2021-04-12 18:47:57 +02:00
Niklas Larsson
b32a2593ff
Node fixes
...
Don't assume that errno exists. There might never have been an error.
Quote executable path to handle path with spaces.
2021-04-12 16:43:54 +02:00
CodingCellist
ec77ad21ab
[ re #1185 ] Add primitive for obtaining number of processors ( #1209 )
...
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2021-03-26 18:27:25 +00:00
CodingCellist
89a84a34a4
Patch CVs and sleep
in Racket ( #1059 )
2021-03-15 13:43:12 +00:00
G. Allais
d2eeb7ce86
[ fix #758 ] desugar non-binding sequencing in do blocks to (>>) ( #1095 )
2021-02-24 11:07:16 +00:00
Denis Buzdalov
95af3cf4be
More compose instances and one usage of them ( #1089 )
2021-02-23 10:53:43 +00:00
Mathew Polzin
d5d0b64b4a
withFile & writeFile cleanup ( #1085 )
2021-02-18 17:51:45 +00:00
Mathew Polzin
9f8a8b5d76
Add a total way of reading files in. ( #1070 )
2021-02-18 11:13:25 +00:00
Wen Kokke
bd683938bf
Overhaul of concurrency primitives ( #968 )
...
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2021-02-05 16:16:20 +00:00
Stefan Hoeck
fb08004041
removed trailing whitespace ( #955 )
2021-01-21 11:33:03 +00:00
Stiopa Koltsov
b76c9d91e0
Remove trailing whitespaces and add trailing newlines
2021-01-16 10:00:03 +00:00
Edwin Brady
3621c5d1bd
Merge pull request #879 from edwinb/no-linearity-subtyping
...
Remove linearity subtyping
2021-01-12 12:33:26 +00:00
Edwin Brady
d4abbfdae2
Add HasLinearIO
...
Ideally, liftIO would always be linear, but that has lots of knock-on
effects for other monads which we might want to put in HasIO, now that
subtyping is gone. We'll have to revisit this when we have some kind of
multiplicity polymorphism.
2021-01-11 11:24:43 +00:00
Michael Messer
a1f3424ab8
Remove lamdaRequire
2021-01-05 16:30:11 +00:00
Jan de Muijnck-Hughes
de58c66ab2
Make Idris2 test harness available for the many and not the few. ( #719 )
...
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2020-10-19 09:26:23 +01:00
russoul
3a9b1ac656
Add supporting code
2020-08-25 14:30:57 +03:00
russoul
594105d5ac
Eliminate schemeCall from the library
2020-08-24 19:38:29 +03:00
Kamil Shakirov
8544e80076
Use the same naming convention for foreign primitives
2020-08-19 14:05:28 +01:00
Rui Barreiro
2feb4b8299
Merge branch 'master' of github.com:idris-lang/Idris2 into javascript
2020-07-07 14:18:00 +01:00
Markus Pfeiffer
63ddd149ed
Remove a superflousy declared argument to idris2_openFile
...
This didn't cause a problem before as it was likely just ignored by the C
function. According to Edwin the extra argument is a leftover from when this
was a pure scheme call.
2020-07-07 11:44:37 +01:00
Rui Barreiro
68c9990c8a
moved big foreign functions to support and added outputDir
2020-07-06 16:58:02 +01:00
Rui Barreiro
88f8e745b1
Merge branch 'master' of github.com:idris-lang/Idris2 into javascript
2020-07-05 12:19:45 +01:00
Edwin Brady
5ed27947cb
Small concurrency fixes
...
Conditional variables with timeout in Chez didn't work, so changed to a
consistent meaning of the timeout (microseconds). Also fix linearity of
unsafePerformIO.
2020-06-23 19:06:30 +01:00
Edwin Brady
1e6314c4cc
Merge pull request #345 from edwinb/hasio
...
HasIO interface for IO actions
2020-06-21 20:24:29 +01:00
Edwin Brady
dbdf7dab3d
Back to HasIO, remove MonadIO
...
Following a fairly detailed discussion on slack, the feeling is
generally that it's better to have a single interface. While precision
is nice, it doesn't appear to buy us anything here. If that turns out to
be wrong, or limiting somehow, we can revisit it later. Also:
- it's easier for backend authors if the type of IO operations is
slightly less restrictive. For example, if it's in HasIO, that limits
alternative implementations, which might be awkward for some
alternative back ends.
- it's one less extra detail to learn. This is minor, but there needs to
be a clear advantage if there's more detail to learn.
- It is difficult to think of an underlying type that can't have a Monad
instance (I have personally never encountered one - if they turns out
to exist, again, we can revisit!)
2020-06-21 19:21:22 +01:00
Rui Barreiro
ca0c8f9d42
node018 passes
2020-06-21 17:54:50 +01:00
Edwin Brady
28855088c2
Split HasIO into HasIO and MonadIO
...
For things which don't require (>>=), HasIO is fine, otherwise MonadIO
gives access to the monad interface.
2020-06-21 14:46:14 +01:00
Matthew Baulch
916c3e7090
Import fgetc and listen from libc (where they actually reside) rather than the support libs
2020-06-21 15:24:45 +10:00
Edwin Brady
d12487f529
HasIO interface for IO actions
...
Also updates the Prelude and some base libraries to use HasIO rather
than using IO directly.
2020-06-21 01:18:43 +01:00
Rui Barreiro
cb7dc7bffc
test node004 passes
2020-06-17 23:29:54 +01:00
Edwin Brady
07ae16123c
Only open in binary mode on windows
2020-06-11 14:53:54 +01:00
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
3f914889b8
Add visibility rules on types
...
Can't export a type which refers to a private name. This has caught a
couple of visibility errors in the libraries, code and tests, so they've
been updated too.
2020-05-30 17:03:15 +01:00
Tim Süberkrüb
46f7b78b0e
Try to fix pclose for Windows
...
Co-authored-by: Niklas Larsson <metaniklas@gmail.com>
2020-05-28 16:12:26 +02:00
Tim Süberkrüb
c2dfe7de7f
Add popen and pclose from Idris 1
2020-05-28 12:58:03 +02:00
andylokandy
40401b53ec
Remove the duplicate isWindows
2020-05-27 03:12:54 +08:00
andylokandy
712a4df140
Gather the straw isWindows
s
2020-05-26 17:59:14 +08:00