Commit Graph

9 Commits

Author SHA1 Message Date
Edwin Brady
c3cdb9c465 Trying a new Effects api
Changes:
- Eff has become EffM, parameterised over (m : Type -> Type), which will
  allow us to introduce new effects later, though not currently used
- Eff itself is now a collection of type synonyms which build an EffM.
  It can take either one list of effects, a list of input and output
  effects, or a list of effects and a function to compute output
  effects; disambiguated by context
- EffT is as Eff, but takes the underlying 'm'
- Added 'sig' function for giving effect signatures.

All of the above mean we no longer need the {} syntactic sugar, though
it's still there. Old effect programs (should!) work with no or minimal
changes.
2015-04-05 17:42:54 +01:00
Jan de Muijnck-Hughes
5ea6aa0520 Address semantic differences in putting things to STDOUT.
The changes are as follows:

+ `print` is for putting showable things to STDOUT.
+ `printLn` is for putting showable things to STDOUT with a new line
+ `putCharLn` for putting a single character to STDOUT, with a new line.

Effects has been updated accordingly.
2015-03-06 17:26:33 +00:00
Edwin Brady
43127b17a7 Move Fin, Vect and So from prelude to base
They can be imported from the modules Data.Fin, Data.Vect, and Data.So
respectively.

The general thinking here is that not every program is going to need
these, and they are often used especially by newcomers in place of
something more appropriate. Also, all of them are useful for teaching,
which means it is instructive for tutorials to introduce them and have
people implement them themselves.
2014-12-31 20:18:02 +00:00
Ahmad Salim Al-Sibahi
8f54aaf1b8 Fixed some tests broken under renaming 2014-09-26 07:34:38 +02:00
Edwin Brady
ced7733b76 Replace 'effects' with neweffects 2014-07-15 21:35:35 +02:00
Matus Tejiscak
4957a33d9a Make --nowarnreach the default (for now). 2014-04-11 09:10:26 +01:00
Matus Tejiscak
091692953f Ignore usage warnings in test/effects*. 2014-04-11 09:10:25 +01:00
Edwin Brady
4ba546070a Make 'neweffects' the official effects package
Old effects is still there if anyone needs it, as 'oldeffects' but this
will be removed later.
2014-03-12 16:37:23 +00:00
Edwin Brady
1d2fc7f8e0 Categorise tests 2014-01-30 17:24:08 +00:00