Evan Czaplicki
e8a661531a
cosmetic: nicer way to conditionally run type printer
2013-10-14 20:14:56 -04:00
Alexander Foremny
484e14a296
Relax mtime test in alreadyCompiled
2013-10-09 13:10:35 +02:00
Evan Czaplicki
de52caca8e
Add --src-dir flag
...
Can be used multiple times. Makes it possible to have complex directory
structure without cluttering up module names in Elm files.
2013-10-05 16:12:25 -07:00
Evan Czaplicki
d6c8ecd454
reorder things and make the help flag nicer
2013-09-29 17:37:45 -07:00
Evan Czaplicki
66c288e4ba
Remove minification from compiler.
...
Unix philosophy and all that.
2013-09-28 15:36:02 -04:00
Evan Czaplicki
de232b677e
Use ByteStrings to make writing html and js a bit faster
2013-09-25 14:25:54 -04:00
Evan Czaplicki
d4def20462
Make sure that createDirectoryIfMissing
is called for included js files
...
All responsibility falls on @seliopou :P
2013-09-23 16:24:45 -04:00
Evan Czaplicki
37f1be6d79
Add fixities to module interfaces
2013-09-15 14:39:55 -07:00
Evan Czaplicki
6ba2d70365
Revert 95ec3a8..1a093ac
...
This rolls back to commit 95ec3a822e
.
2013-08-29 16:43:54 -07:00
Evan Czaplicki
fea6e5d408
Add fixities to module interfaces
2013-08-29 00:06:37 -07:00
Evan Czaplicki
4d25352f90
Show realiased types when printing errors and when printing module types
2013-08-21 19:08:03 -07:00
Evan Czaplicki
7093436b13
Switch to SrcTypes after type inference, not in compiler
2013-08-21 14:23:11 -07:00
Evan Czaplicki
cc81b1e22b
Make sure that all directories in build/ are properly constructed
2013-08-06 22:51:21 -07:00
Evan Czaplicki
50dada1f22
Fix very silly error, default module name is "Main" not "Name"
2013-08-06 21:40:54 -07:00
Evan Czaplicki
ed6b255ba5
Properly parse out module names, defaulting to Main if no name is given.
2013-08-06 21:20:08 -07:00
Evan Czaplicki
43b604e0ca
Introduce cache/ and build/ directories
...
Switch from using --output-directory for all generated files, to using
--cache-dir for .elmo and .elmi files and using --build-dir for .html
and .js files.
2013-08-06 18:34:23 -07:00
Evan Czaplicki
97ab6199bd
Make sure that the user defined module name is used in generated HTML
2013-08-06 13:41:17 -07:00
Evan Czaplicki
a446d609f2
Ensure that binary serialization works on Windows. Previously had issues with line ending conversions messing with binary data.
2013-08-06 00:36:07 -07:00
Evan Czaplicki
1df206dcc9
Clean up mistakes from the merge
2013-08-04 15:44:47 -07:00
Evan Czaplicki
51dfa676d9
Merge branch 'types'
...
Conflicts:
compiler/Compiler.hs
compiler/Model/Ast.hs
libraries/Automaton.elm
libraries/Dict.elm
2013-08-04 15:40:24 -07:00
Evan Czaplicki
1f390072c6
Add more space between type errors
2013-08-03 11:39:56 -07:00
Evan Czaplicki
37417e154c
print file path when compiling and enable multithreaded execution
2013-08-02 22:20:55 -07:00
Evan Czaplicki
520c81f9d4
Better names for files when no name is given
2013-08-02 15:01:03 -07:00
Evan Czaplicki
dd8843f8e4
Take correct file path, even if module name is not given
2013-08-01 17:22:44 -07:00
Evan Czaplicki
e677f27bc5
add a type signature
2013-07-31 07:42:31 -07:00
Evan Czaplicki
f8fe8e4495
Properly convert Type.Type to SourceSyntax.Type
2013-07-29 20:23:42 +02:00
Evan Czaplicki
f8182740bc
Prettify code to print program
2013-07-29 13:21:34 +02:00
Evan Czaplicki
2f5639c4fb
Introduce Transform.Canonicalize
...
Run this to create a properly formatted ModuleInterface
2013-07-29 11:59:55 +02:00
Evan Czaplicki
0a6bd8bd96
Generate and use interfaces.data so standard library types are available
2013-07-28 02:24:17 +02:00
Evan Czaplicki
272557d785
Fix for "trying to write to a file in a non-existant directory"
2013-07-27 00:39:40 +02:00
Evan Czaplicki
637c7e0da0
Put type aliases in ModuleInterface
2013-07-26 15:06:35 +02:00
Evan Czaplicki
016a199b50
Start using Metadata.Prelude
2013-07-25 20:53:22 +02:00
Evan Czaplicki
8ffcf9e80e
Prettier printing for infix operator definitions
2013-07-23 15:43:21 +02:00
Evan Czaplicki
eb722a20dc
Make a type less general
2013-07-22 14:41:55 +02:00
Evan Czaplicki
4bcde7e799
Add flag for printing a whole program
2013-07-21 22:49:42 +02:00
Evan Czaplicki
1f8b7bbc98
Introduce TypeLibrary alias, a minor cosmetic change
2013-07-21 09:23:01 +02:00
Evan Czaplicki
0fd1f677a5
Get things in place to pass Prelude interfaces
2013-07-21 07:17:01 +02:00
Evan Czaplicki
b1dd1574a8
Begin passing module interfaces when compiling dependencies
2013-07-21 07:14:13 +02:00
Evan Czaplicki
22f7f8a43a
Create a serializable interface for a module's type information
...
Also add a flag to print out top-level types
2013-07-21 06:08:08 +02:00
Evan Czaplicki
1a4732a436
Start building a .elmi file that contains the types of all top-level functions
2013-07-20 18:53:15 +02:00
Evan Czaplicki
ce652d9a35
Print errors more nicely
2013-07-19 15:40:37 +02:00
Evan Czaplicki
82983a6f24
Update more modules to use the MetadataModule data structure
2013-07-16 21:43:56 +02:00
evancz
35981eb42f
Finish parameterizing the AST and properly check errors in let expressions.
2013-06-14 19:23:58 -07:00
evancz
d7dcf5a9e8
Get the whole compiler building again.
2013-06-13 22:59:14 -07:00
evancz
569541e72a
Fix broken build.
2013-06-09 23:36:59 -07:00
evancz
6e56df59a5
Switch to only generating elmo files. Turn off the CPP flags in .cabal and remove all generated JS files on each build for now.
2013-06-07 09:38:29 -07:00
evancz
951df07b79
Only produce elmo files. The aim is to use a layout for object files similar to Go, which has thought very hard about how to make compilation really fast.
2013-06-06 22:28:24 -07:00
evancz
212d19c3e8
Start using the given output-directory
2013-06-05 14:22:30 -07:00
evancz
2d1e06b17b
Start generating elmi and elmo files to permit sharing of types, values, and infix info between modules.
2013-06-05 00:44:04 -07:00
evancz
ce6467266f
Clean up imports in many files.
2013-05-28 06:47:36 -07:00