Commit graph

263 commits

Author SHA1 Message Date
Evan Czaplicki
4a914a497a Fix append on text
string literals have type string, whereas string objects are instances
of String
2013-10-10 14:25:49 -07:00
Evan Czaplicki
2c080b6b0d Mark Char and Text values to distinguish them from Strings
Also get rid of the unwords and unlines functions which are confusing
and can more easily be reproduced with (join " ") and (join "\n")
2013-10-10 13:57:33 -07:00
Evan Czaplicki
20bbb71359 cosmetic: fix indentation 2013-10-10 13:57:33 -07:00
Evan Czaplicki
0b11d4f0bd Merge pull request #281 from mgold/dev2
Random.floatList : Signal Int -> Signal [Float]
2013-10-07 19:52:25 -07:00
Max Goldstein
c99d7d72d5 Preallocate array per Spirros.
Need to specify indices explictly, as push will not overwrite the initialized
values but instead appends on to the end.
2013-10-07 21:35:49 -04:00
Evan Czaplicki
cc5295da29 Fix string conversion problems 2013-10-06 17:50:09 -07:00
Evan Czaplicki
81cbe9f147 Add ways to get substrings 2013-10-06 15:51:08 -07:00
Evan Czaplicki
cfe1302e82 Add and rename functions
use the term "pad" to add characters
add ways to search for substrings
read ints and floats
2013-10-06 14:25:29 -07:00
Evan Czaplicki
0d5f1fe2d2 Fix fast repeat 2013-10-06 11:00:53 -07:00
Max Goldstein
4a93227f0b Random.floatList : Signal Int -> Signal [Float]
This version has been updated to work with b40f2958d4.
2013-10-06 10:26:28 -04:00
Evan Czaplicki
a505f7e030 indent properly 2013-10-04 15:31:03 -07:00
Evan Czaplicki
51821fccfd Make sure slashes get converted first so that they don't get added accidentally for other escaped characters 2013-10-04 11:52:16 -07:00
Evan Czaplicki
f7ef0d8dc2 Get rid of comments from when emacs could not figure out syntax highlighting 2013-10-04 11:41:11 -07:00
Evan Czaplicki
1f5c0373a5 Take out special case for [Char] in show 2013-10-04 11:40:46 -07:00
Evan Czaplicki
cbd136dbf6 Use JS.fromList and JS.toList when appropriate 2013-10-04 11:07:40 -07:00
Evan Czaplicki
af54dd33db Correct map and filter 2013-10-04 10:56:34 -07:00
Evan Czaplicki
59445e197a Fix string reversal 2013-10-04 10:53:34 -07:00
Evan Czaplicki
29aa809504 Add length to the String library 2013-10-04 09:58:37 -07:00
Evan Czaplicki
385f400269 Get the String module working properly 2013-10-02 17:41:58 -07:00
Evan Czaplicki
0703f48a89 Fix some string conversions 2013-10-02 17:37:07 -07:00
Evan Czaplicki
172884b594 Continue filling out the string library 2013-10-02 15:06:22 -07:00
Evan Czaplicki
df67fe5ec2 Start on the String library 2013-10-02 01:03:03 -07:00
Evan Czaplicki
ab8ff11960 Get rid of split and make repeat significantly faster 2013-10-02 01:02:51 -07:00
Evan Czaplicki
3459672725 merges was right biased by accident 2013-09-30 02:08:51 -07:00
Evan Czaplicki
b40f2958d4 New convention for storing module values, fixes bug
Before it was not possible to add values to anything except leafs of
the namespace structure.
2013-09-30 01:32:27 -07:00
Evan Czaplicki
2cb4fd8973 Merge branch 'dev' of https://github.com/evancz/Elm into dev 2013-09-30 01:06:33 -07:00
Evan Czaplicki
dcbe2fc245 Change the format of module instantiation
Currently, it's only possible to create modules at the leafs of the
namespace structure. This CL lifts that restriction.

Get rid of "use strict" in many cases.
2013-09-30 00:44:31 -07:00
Max Goldstein
0f182c653d Fix runtime error with Random.float.
Rename JS function to avoid conflicting with reserved words, as enforced by
commit 40ea6df24 (found with git bisect).
2013-09-29 10:36:41 -04:00
Evan Czaplicki
46b988b34f Error on mod zero 2013-09-22 10:44:51 -04:00
Evan Czaplicki
a633a5d7d3 Make sure text boxes are given proper dimensions after hot-swapping 2013-09-03 11:25:58 -07:00
Evan Czaplicki
e8dffac17b Fix indentation 2013-09-01 22:20:08 -07:00
Evan Czaplicki
b4e0196c7f Factor out a commonly used expression 2013-09-01 22:20:07 -07:00
Evan Czaplicki
3fe9e2470c Fix indent 2013-09-01 22:20:07 -07:00
Evan Czaplicki
6512bf944b Indent properly 2013-09-01 22:20:07 -07:00
Alexander Noriega
074bb08f8e Rename replicate to repeat. 2013-08-31 21:23:23 -03:00
Alexander Noriega
d6e7172f45 Define convenience function List.replicate. 2013-08-31 16:29:35 -03:00
Evan Czaplicki
4722efeb80 Move native version of Matrix2D 2013-08-19 11:56:27 -07:00
John P Mayer Jr
b8a270e9d4 toCode needs to use uppercase, since keyboard separates key and modifier 2013-08-15 06:09:13 +00:00
John P Mayer Jr
6821a350f4 fixed obvious === bug 2013-08-15 05:55:48 +00:00
John P Mayer Jr
b9abf862dd fixed wierd keyboard stuff by factoring out keypress events 2013-08-15 05:24:44 +00:00
Evan Czaplicki
79c6b3b39e Merge pull request #194 from A1kmm/dev-fix-mousemove-handler-for-touch
Fix a typo bug in the onblur handler for Touch.
2013-08-08 13:54:01 -07:00
Evan Czaplicki
8a6a823504 Better error messages for runtime errors in cases and ifs 2013-08-04 13:47:27 -07:00
Evan Czaplicki
0cd594c13c Better JS for function composition, runtime errors report which module they came from 2013-08-04 12:51:52 -07:00
Evan Czaplicki
0a55674939 Fix timestamp which was undefined before 2013-08-04 12:24:50 -07:00
Evan Czaplicki
a268421893 Get show, readInt, and readFloat working again 2013-08-04 12:22:58 -07:00
Evan Czaplicki
56e897c9d1 Signal.delay was undefined, use correct reference 2013-08-04 11:15:52 -07:00
Evan Czaplicki
936ffdea81 Give the proper field names to checkboxes 2013-08-02 22:20:24 -07:00
Evan Czaplicki
1b1f058170 get rid of tabs
fucking tabs
2013-08-01 19:47:43 -07:00
Evan Czaplicki
e297564140 make sure clicks are registered on buttons 2013-08-01 19:47:09 -07:00
Evan Czaplicki
b3cc261f96 Make show nicer for signals and unknown objects. 2013-07-30 09:10:06 -07:00
Evan Czaplicki
ae6a3b36b5 Fix runtime code for comparing things 2013-07-30 08:44:23 -07:00
Evan Czaplicki
3e4773ca2e Fix libraries to match new JS generation rules 2013-07-29 23:23:04 +02:00
Evan Czaplicki
7968fa5bff Make Basics compile 2013-07-25 23:52:39 +02:00
Evan Czaplicki
c4880ca5de Rename Prelude to Basics to get rid of circular dependencies 2013-07-25 23:24:33 +02:00
Evan Czaplicki
067773d601 Update the List library to use the number, comparable, and appendable type variables 2013-07-25 16:40:39 +02:00
Andrew Miller
1f3ba5ca35 Fix a typo bug in the onblur handler for Touch. 2013-07-15 14:11:02 +12:00
Evan Czaplicki
1fcb01f743 Finish switching over to '_Tuple' format for tuples. 2013-07-15 01:05:14 +02:00
Evan Czaplicki
340c2e7efa Switch to using px to set text height instead of em. 2013-06-23 04:48:32 -07:00
evancz
9a40249e05 Fix the confusion with "Cons" and "Nil" in issue #176.
Also add the ExplicitList expression.
2013-06-20 21:25:10 -07:00
evancz
13dacfd8f9 Stop a bunch of keyboard signals from firing too many events. 2013-06-16 14:20:15 -07:00
evancz
afacd1b858 Add hoverable and hoverables 2013-06-15 00:49:22 -07:00
evancz
0bee2057d9 Merge branch 'dev' of https://github.com/evancz/Elm into dev 2013-06-13 12:53:15 -07:00
Mads Flensted-Urech
f8c6a93ad3 fromRecord (toJS): convert recursively and string handling 2013-06-09 22:55:38 +02:00
evancz
3e45d8e9ce Fix bug in setting headers. 2013-06-09 11:13:03 -07:00
evancz
b30482a38f Get timers to detach themselves when a swap occurs. 2013-06-03 00:19:48 -07:00
evancz
90cf4218a8 Switch to a custom way of attaching event listeners that makes it easier to detach them if necessary. 2013-06-02 23:46:02 -07:00
evancz
6ddb826332 First draft addition of hot-swapping. Clean up Init.js a bit as well. 2013-05-30 18:41:43 -07:00
evancz
ab5ded36a6 Report success for all 2xx response statuses. 2013-05-23 19:06:14 +02:00
evancz
ebed9f62c9 Fix typo in variable name. 2013-05-23 14:56:45 +02:00
evancz
2da0a59e35 Add basic drop down menus. 2013-05-23 12:44:57 +02:00
evancz
5714764aba Make sure that empty requests are not sent. 2013-05-23 11:11:24 +02:00
evancz
582a4c5ee2 Fix Float32Array bug in IE. Fix input selection bug in IE. 2013-05-22 14:05:53 +02:00
evancz
d9d6ce51ca Fix bug with text resizing in FF and IE. Both report clientWidth and clientHeight as an integer that has been rounded DOWN from the actual float value. This means they can be too small. Switched to using getComputedStyle. 2013-05-22 10:50:51 +02:00
evancz
de4e9ac19f Fix mistake in Graphics/Input.js library. 2013-05-22 03:05:44 +02:00
evancz
7ece842af5 Make closure compiler happy. 2013-05-22 01:06:12 +02:00
evancz
970277f7f2 Minor documentation fix for JavaScript/Experimental.elm
Remove logging in Native/List.js
2013-05-21 18:27:22 +02:00
evancz
96e719401d Change the Json API and change the name of WebSocket.open to not clash with open as a keyword. 2013-05-21 11:04:38 +02:00
evancz
d31acc5c9d Minor bug fixes in RTS and libraries. 2013-05-21 10:03:51 +02:00
evancz
7f314846ad Fix a cyclical dependency in the runtime, fix a use of ms which is now undefined. 2013-05-20 15:36:21 +02:00
evancz
94bb5e5a31 Change the type of FieldState slightly. Now uses selectionStart and selectionEnd instead of the more ambiguous start and end.
Also add tons of documentation to `Graphics.Input`.

Also add the `emptyFieldState` value.
2013-05-20 15:35:44 +02:00
evancz
706d706e3f Simplify the Input API for basic widgets. 2013-05-17 23:00:25 +02:00
evancz
8823b012d1 Merge branch 'dev' of https://github.com/evancz/Elm into dev 2013-05-17 22:46:55 +02:00
evancz
c92dd2f921 Add lots of documentation and do some minor API clean up. 2013-05-17 22:46:08 +02:00
evancz
5044724cda Improve documentation a bit and get split working properly. 2013-05-17 12:49:31 +02:00
Evan Czaplicki
df73a090e4 Merge pull request #152 from perplexes/fix_http_json
Fix HTTP/JSON
2013-05-17 02:53:32 -07:00
evancz
a9400dbc63 Clean up some documentation and make some minor API tweaks. 2013-05-16 22:10:50 +02:00
evancz
6e1a3f5c0f fix minor mistake in adjustOffset 2013-05-15 07:53:01 +02:00
evancz
73fd3f345d Fix undefined variable usage in JS. 2013-05-15 07:48:45 +02:00
Colin Curtin
acd2b61e00 Merge remote-tracking branch 'evan/dev' into lint
Conflicts:
	runtime/Init.js
	runtime/Render/Collage.js
2013-05-14 09:18:38 -07:00
evancz
7ce550901c Move to initializing with three different functions: fullscreen, node, and worker.
Add code to ensure that mouse and touch positions are reported relative to the embedded Elm node.

Remove the elm_ prefix from the events for logging, redirects, and title changes. Should be silo'd by the `elm` and not escape into the global event namespace.
2013-05-14 16:29:06 +02:00
Colin Curtin
0685425ace "float" is a reserved word in JS 2013-05-11 17:38:07 -07:00
Colin Curtin
dccb6257fb Prefer typeof over try/catch for feature detection. 2013-05-11 17:23:34 -07:00
Colin Curtin
98c0269edc Moar whitespace. 2013-05-11 17:15:45 -07:00
Colin Curtin
2b90d0eb9e Whitespace, semicolons, lint etc. No functional changes. 2013-05-11 13:42:45 -07:00
Colin Curtin
8db9ccf57e Fix HTTP/JSON
* Elm Http: Signal (lift) was not imported
* Native Http: "Waiting" was not a string.
* Elm Json: find* weren't using the Json Object type (which find was expecting)
* Native Json: Utils was not imported (to use Tuple2)
2013-05-11 13:35:20 -07:00
evancz
b7e4f9b73b Get rid of logging 2013-05-11 12:34:12 -07:00
evancz
d8067fd8c4 Fix foldp 2013-05-06 02:41:22 -07:00
evancz
a8df7eb28a Minor bug fixes 2013-05-06 02:30:50 -07:00
evancz
3f8ce38f81 Rename some stuff in Graphics.Input 2013-05-06 02:30:11 -07:00
evancz
80b47ed0f5 Separate mouse drags. 2013-05-05 19:17:29 -07:00
evancz
04d320efac Fix Window.height in the first frame. 2013-05-05 17:52:00 -07:00
evancz
9f2964992a Add mouse support in the Touch library 2013-05-05 17:51:30 -07:00
evancz
82d753a685 Properly attach mouse events to document 2013-05-05 17:51:04 -07:00
evancz
934f37f882 Settle on name for lastKey and set the type as Signal KeyCode. 2013-05-05 17:49:28 -07:00
evancz
2f2898d8d8 Show escaped chars and function names. 2013-05-05 17:48:50 -07:00
evancz
7afe464ea8 Give curry and uncurry the correct implementations. They were swapped. 2013-05-05 17:48:20 -07:00
evancz
d114746957 Rename some of the Graphics libraries 2013-04-28 05:21:46 -07:00
evancz
d2846a2534 Fix the default size of text blocks. 2013-04-14 18:07:26 -07:00
evancz
986010fb6a Add plainText back. Fix some types. Fix a bug in mergeEither. 2013-04-10 00:52:53 -07:00
evancz
82b7929ccf Get the core libraries compiling again. Fix type signatures that have super-types, and fix bugs in a couple files. 2013-04-09 22:15:06 -07:00
evancz
22890292b8 Correct resizing problems with static elements. Previously, no property updates occurred. 2013-04-07 17:57:57 -07:00
evancz
d47614cdd1 Fix indentation 2013-04-07 08:40:27 -07:00
evancz
60e403ba82 Fix show for ADTs and get parens in the right places.
Make `Elm.init(Elm.MyModule)` work nicer when it takes over the whole `document` and needs to resize with the window.
2013-04-06 16:48:20 -07:00
evancz
613d9f5bc9 Fix bug in height and color 2013-04-05 09:52:18 -07:00
evancz
58640c553b Make sure that List only gets instantiated once. Requires that the list library is pure (never touches the elm variable) 2013-04-01 00:36:30 -07:00
evancz
475bc10876 Add implementation for checkboxes, passwords, and emails.
Ensure that direction of text selection is properly captured.
2013-04-01 00:35:18 -07:00
ngunn
aa7a67fc85 List.js change: Nil checks all use .ctor
added comment on Nil handling
direct Nil comparison with ctor equiv.  see comments here: https://github.com/evancz/Elm/pull/130#issuecomment-15471337
2013-03-27 21:02:27 +00:00
ngunn
864761b56e List.js: fix long-standing bug in append (2 chr$ change)
Present since initial version: 389a6f5309
2013-03-26 14:21:57 +00:00
evancz
9a40392e00 Fix bugs in container and an empty flow 2013-03-26 00:12:31 -07:00
evancz
dd10e820de Merge branch 'dev' of https://github.com/evancz/Elm into dev 2013-03-25 19:09:07 -07:00
ngunn
93afe4cea8 List.js minor bugfixes (followup)
put foldl back as was + add type sig. to indicate why
replace use of xs.ctor with direct comparison against Nil.  This means the ctor field is no longer required (which is nice).

move .ctor in stor to the actual variable (doh)
2013-03-25 20:25:29 +00:00
ngunn
441e90770b List.js minor bugfixes
freeze Nil (one-time overhead for marginal safety)
don't do this for Cons (huge performance overhead)

use Nil throughout instead of making our own (if we're having a singleton, we should be consistently using it)

missing A2, A3 in places.

foldl function applied args in wrong order, foldl :: (a -> b -> a) -> a -> [b] -> a
sort: missing .ctor selector
2013-03-25 17:36:30 +00:00
evancz
93428aa21d Fix bug in export of List.member 2013-03-25 03:00:05 -07:00
evancz
545be51678 Fix behavior of customButton to avoid flicker. 2013-03-24 22:23:30 -07:00
evancz
24c90b3673 Fix rendering bug with standard input buttons. 2013-03-24 19:48:27 -07:00
evancz
9962ded3e2 Remove logging. 2013-03-24 19:20:52 -07:00
evancz
b930ac2984 Add implementation for buttons, customButtons, and textFields.
Also fix updating bug in `flow`.
2013-03-24 19:19:30 -07:00
evancz
87a275abeb Fix bugs:
* types rendered "::" instead of ":"
* `Signal.count` was broken
* Prelude didn't have `show`
2013-03-24 19:17:21 -07:00
evancz
893e4691e6 Add groupTransform function.
Add public Matrix library. Clean up and debug matrix implementation.
2013-03-23 23:54:00 -07:00
evancz
0fbc244bbb Change names back to be longer but better. 2013-03-23 18:22:25 -07:00
evancz
79093ff4da Change the name of Keyboard to Keys. Change some function names and change type of charPressed to be the latest char pressed (default is '\0') 2013-03-23 16:52:58 -07:00
evancz
e80f19b423 Fix move to have y-axis properly oriented.
Fix rotations (`degrees` and `turns` functions were broken because I used `Math.pi` instead of `Math.PI`...)
2013-03-23 13:20:30 -07:00
evancz
86a0a904d8 Fix oval and ngon. (It's PI, not pi!) 2013-03-22 18:27:03 -07:00
evancz
4b8c9796a5 Add some files 2013-03-21 02:35:36 -07:00
evancz
131a2b6818 Get sprites working in collage. temporary fix for docs.json issue. Looks like git thinks we're in the past, so a bunch of changes that have already happened as well. 2013-03-21 02:29:23 -07:00
evancz
7dbb052b22 Load json representation of types with Template Haskell, so library files are the base truth of type information.
Make minor fixes in libraries, such as adding the Char labrary and fixing the types in the Dict library.
2013-03-16 22:24:18 -07:00
evancz
1822ebc160 Move the compiler down a directory, mostly. 2013-03-16 12:04:05 -07:00
evancz
3746c3217a Fill in some of Prelude.js 2013-03-16 02:02:16 -07:00
evancz
0050bfa845 Add a matrix library and switch collage over to use it. 2013-03-16 01:11:15 -07:00
evancz
152ef51a98 Fix croppedImage, show for tuples, and init for resizing initial dom node. 2013-03-13 00:52:14 -07:00
evancz
1552651eaf Make sure Mouse, Random, Window, and Time import their native implementation. 2013-03-13 00:00:02 -07:00
evancz
3540449119 Fix behavior of width and height to maintain the dimensions of images when resizing. Move htmlHeight into Utils so it can be used by both Element and Text. 2013-03-12 22:59:15 -07:00
evancz
609dc36596 Add height check and get rid of utils which was in the wrong place (i think) 2013-03-12 21:25:47 -07:00
evancz
a1b890adc3 Lots of tiny fixes to get the RTS working! 2013-03-12 00:48:11 -07:00
evancz
15c35c824b Clean out Input file! 2013-03-11 10:59:30 -07:00
evancz
34294a5f42 Strip out the unrelated things from Misc.js and rename it to Show.js, which is all it does now anyway! 2013-03-11 10:46:16 -07:00
evancz
db44b154b4 Combine Keyboard and Keyboard.Raw modules. 2013-03-11 10:38:52 -07:00
evancz
f903ff3fd8 Tweaks to the last of the library code. 2013-03-10 01:40:31 -08:00
evancz
b343564795 Finish tweaking the second half of .elm library files. 2013-03-10 01:07:17 -08:00
evancz
8a700e84d5 Update first half of .elm libraries 2013-03-10 00:54:37 -08:00