Commit Graph

1089 Commits

Author SHA1 Message Date
hellerve
5b08413aa2 macros: added unless 2017-12-13 12:34:14 +01:00
hellerve
74423320b4 macros: added when 2017-12-13 12:34:14 +01:00
hellerve
ca6ecafbbc core: added arithmetic ref interfaces and regular arithmetic interfaces, renamed functions in vectors 2017-12-13 11:10:42 +01:00
Erik Svedäng
79132cf13d Define an interface for pi (π). 2017-12-12 23:13:05 +01:00
Erik Svedäng
f446476523 Remove old code. 2017-12-12 23:04:40 +01:00
hellerve
5704a9268c macros: added use-all 2017-12-12 15:08:33 +01:00
Erik Svedäng
6938b65f01 Investigating bugs with symbol lookup in modules. 2017-12-12 12:57:13 +01:00
Erik Svedäng
0bf2d2bcaf Merge branch 'master' of https://github.com/carp-lang/Carp 2017-12-10 19:45:59 +01:00
Erik Svedäng
6ac76fc39e Subarray. 2017-12-08 15:12:50 +01:00
Erik Svedäng
42ce182669 Better "platform-only" macros. 2017-12-07 14:59:55 +01:00
hellerve
95dc737950 sdl: aded str and copy to keycode; compiler: use str function on member even if its external 2017-12-04 19:20:05 +01:00
hellerve
e17b6b892c core: minor fixes 2017-12-04 19:17:52 +01:00
Erik Svedäng
e15b35e58f Working on conditional compilation macros (not done). 2017-12-04 09:29:15 +01:00
Erik Svedäng
f902ea2be9 Revert "Adopt a length-prefixed string type"
This reverts commit d573372c7b.
2017-12-04 09:24:31 +01:00
Erik Svedäng
b0cdc65f4b Implemented 'add-ref' and 'zero' for Int/Float/Double. Allows nice 'Array.sum' function. 2017-12-04 07:21:35 +01:00
Erik Svedäng
270f54a1de Worked around a BUG: Importing Int and Array when defining String functions break things. 2017-12-04 06:58:06 +01:00
Erik Svedäng
ad6b1a9b6d Added 'words' and 'lines' function 2017-12-03 22:30:48 +01:00
Felipe Oliveira Carvalho
d573372c7b Adopt a length-prefixed string type 2017-12-03 19:15:25 +01:00
Felipe Oliveira Carvalho
17542b0bf4 Change type of Array.len to size_t 2017-12-03 19:14:58 +01:00
Felipe Oliveira Carvalho
3ba1ebfe65 Replace CARP_STRDUP with String_copy 2017-12-03 19:14:28 +01:00
Erik Svedäng
46004c7e69 A function for getting the numeric meaning of the chars '0' - '9'. 2017-12-01 12:02:36 +01:00
Erik Svedäng
5efecc1c8a Turned the def* commands into special forms to not evaluated their args. 2017-12-01 10:36:14 +01:00
Erik Svedäng
778b0d465e Args to commands are not evaluated at the REPL, for now. 2017-11-30 23:00:00 +01:00
Erik Svedäng
9e51b110af Added 'Dynamic' module that will contain dynamic versions of various functions. 2017-11-30 14:47:21 +01:00
Erik Svedäng
699e64d9ed Tried out writing a conditional compilation function. 2017-11-30 13:43:58 +01:00
hellerve
4e53130f53 long & int: updated tests 2017-11-29 17:28:05 +01:00
hellerve
fba4e8ba5e long & int: added binary arithmetic 2017-11-29 17:26:51 +01:00
Erik Svedäng
7d3931c46a
Merge pull request #117 from hellerve/misc
Miscellaneous fixes
2017-11-29 15:50:12 +01:00
Erik Svedäng
7bbdf2c041
Merge pull request #115 from hellerve/long-to-int
Added int conversion to long module
2017-11-29 15:49:24 +01:00
hellerve
911076276e all: miscellaneous fixes 2017-11-29 15:28:21 +01:00
hellerve
0e8558f6c3 long: added int conversion 2017-11-29 11:45:20 +01:00
Erik Svedäng
5dc648c93c Use carp malloc. 2017-11-28 10:08:17 +01:00
Erik Svedäng
6998bb04d7 File reading function. 2017-11-28 10:07:46 +01:00
Erik Svedäng
f4f9eed551 Interfaces for +-*/ would be cool. 2017-11-27 21:55:52 +01:00
hellerve
843402c42f fixed test cases 2017-11-27 14:51:33 +01:00
hellerve
89eb010045 tests: simplified 2017-11-27 14:45:14 +01:00
Erik Svedäng
1ae5385ad8 Merge branch 'master' of https://github.com/carp-lang/Carp 2017-11-27 12:56:08 +01:00
Erik Svedäng
7b5a0aa7eb All tests run, but can still confuse the type checker, see "expression_problem.carp" 2017-11-27 12:36:17 +01:00
tamamu
a5c90feab8 Add CFLAG to build on typical Linux OSes 2017-11-26 16:17:48 +09:00
Erik Svedäng
88fd0dc32c Adding an interface for '/='. 2017-11-24 17:17:49 +01:00
Erik Svedäng
de4cae3a9c
Merge pull request #106 from hellerve/simplify-geometry
Simplify Geometry module
2017-11-24 17:06:24 +01:00
hellerve
e874111093 geometry: simplified conversion 2017-11-24 16:22:53 +01:00
hellerve
cb2e278576 geometry: simplify functions for converting between degree and radians 2017-11-24 16:21:47 +01:00
Erik Svedäng
fb8d559cd9
Merge pull request #104 from hellerve/pi-and-e
Improve precision of π and e
2017-11-22 22:58:56 +01:00
Erik Svedäng
f566d080d8 Interfaces more typeclass-like, all tests run. 2017-11-22 22:03:08 +01:00
hellerve
ba2aa70a55 double: improve precision of pi and e 2017-11-22 18:25:03 +01:00
Erik Svedäng
6f86e2802a New compiler flag: --log-memory 2017-11-22 16:33:03 +01:00
Erik Svedäng
9f60aba18d strdup is handled properly by the memory balancer 2017-11-22 16:25:05 +01:00
Erik Svedäng
c3f5f233cc Disable memory logging. 2017-11-22 16:08:19 +01:00
Erik Svedäng
be74ad5a1e Fixed a few cases where plain malloc was used (should be CARP_MALLOC) 2017-11-22 16:04:14 +01:00
hellerve
6954766aa7 testing: with-test macro should return non-null on failure 2017-11-22 13:48:58 +01:00
Erik Svedäng
50c9c90d21 Interfaces! 2017-11-21 16:56:39 +01:00
Erik Svedäng
e172a736ea New compiler flag: '--no-core' for running the compiler without the core libraries. 2017-11-21 12:21:36 +01:00
hellerve
b3d19ae9da int/long: added math functions 2017-11-17 12:26:01 +01:00
hellerve
40c19b138e int/long: added safe arithmetic 2017-11-16 21:19:39 +01:00
hellerve
64a82c2730 float: added all math function in math.h 2017-11-16 09:46:06 +01:00
hellerve
d346673a74 double: added all math function in math.h 2017-11-15 14:06:49 +01:00
Erik Svedäng
e7d77353ab Remove bleh function. 2017-11-14 22:48:10 +01:00
Erik Svedäng
39c405bfb6 Remove duplicated function '/=' in Long.carp 2017-11-14 22:30:21 +01:00
Erik Svedäng
b8638f3920
Merge pull request #90 from hellerve/not=
Add /= wherever = is defined
2017-11-14 21:44:22 +01:00
hellerve
99573e335f core: bugfix in String.from-chars; added Char.to-int and Char.from-int 2017-11-14 18:33:03 +01:00
hellerve
0990ed60cd core: add /= wherever = is defined 2017-11-14 18:09:18 +01:00
hellerve
e3a0da969a statistics: updated tests 2017-11-07 15:06:47 +01:00
hellerve
e326be04fa bench: removed stale function 2017-11-06 20:57:41 +01:00
hellerve
395ff17574 bench: refactored bench function to make slightly less sucky 2017-11-06 20:47:21 +01:00
hellerve
dfe57da99d bench: added clarification 2017-11-06 20:32:59 +01:00
hellerve
f794d7685f bench: added nanosecond accuracy 2017-11-06 20:23:33 +01:00
hellerve
5c6556e406 bench: first version 2017-11-06 18:08:07 +01:00
hellerve
041645b298 bench: fixed parens 2017-11-06 13:16:20 +01:00
hellerve
046956d711 bench: renamed bench macro to bench-n and started working on real bench fn 2017-11-06 11:37:24 +01:00
hellerve
a8d0eef5ba core: added bench module 2017-11-06 11:20:59 +01:00
Erik Svedäng
99bd6f3d65
Merge pull request #86 from hellerve/rename-geometry
Geometry: Rename module file
2017-11-01 14:45:56 +01:00
hellerve
e839b4e608 geometry: rename module file 2017-11-01 11:26:35 +01:00
hellerve
a035cdeecd statistics: transform nested if into cond 2017-11-01 11:20:06 +01:00
hellerve
3239c77aeb core: added statistics library 2017-10-26 17:41:54 +02:00
Erik Svedäng
d2f540e8c8 Merge pull request #81 from hellerve/long-type
Add Long type
2017-10-25 20:34:06 +02:00
hellerve
3a03969717 all: added long type 2017-10-25 19:17:53 +02:00
hellerve
7151742518 vector: fixed test cases, also Array.copy for primitive types 2017-10-25 13:45:46 +02:00
hellerve
a0078c779a vectors: added lerp 2017-10-25 13:07:52 +02:00
hellerve
f8550e07a1 vectors: added n-dimensional vectors 2017-10-25 13:07:52 +02:00
hellerve
01adc4c50d prelude: made and and or functions 2017-10-25 13:07:52 +02:00
hellerve
120116a70a vector2: integrated test suite 2017-10-25 13:07:52 +02:00
hellerve
81c2af23f1 vectors: most things work 2017-10-25 13:07:52 +02:00
hellerve
6dc31855d8 vectors: added a few math primitives and made most functions work 2017-10-25 13:07:52 +02:00
hellerve
6de836d545 vectors: added a few more functions; still no lerp 2017-10-25 13:07:52 +02:00
hellerve
c2cb743311 interim 2017-10-25 13:07:52 +02:00
hellerve
5baa8dd97f vectors: syntax errors, whoops 2017-10-25 13:07:52 +02:00
hellerve
6d2b8ba37a vectors: added basic, non-performant vector sketch 2017-10-25 13:07:52 +02:00
hellerve
8069aa31ff prelude: fixed comparison functions for ints 2017-10-24 10:31:35 +02:00
hellerve
631e2ab95f testing: added Test module 2017-10-23 16:07:54 +02:00
Erik Svedäng
fbf8477672 Int__EQ_ should return bool. 2017-10-20 16:57:54 +02:00
Erik Svedäng
510d0f3f1a More todos. 2017-10-19 18:34:44 +02:00
Erik Svedäng
df06ca0d6b Remove reduce from built in functions. 2017-10-19 18:22:52 +02:00
Erik Svedäng
d6189f1559 Moved sum to Int module for now. Not sure if that's a good idea... 2017-10-19 18:22:02 +02:00
Erik Svedäng
8267208bf8 Threading macros work. 2017-10-18 22:44:15 +02:00
Erik Svedäng
2dbcfac61b Bunch of bug fixes and stuff. 2017-10-18 13:02:44 +02:00
Erik Svedäng
31b3472f87 The unique identifiers for XObj:s are set after the macro expansion which fixes bugs with macros. 2017-10-18 12:25:42 +02:00
Erik Svedäng
a76e6f1b48 Revert "Preparations for bumping the XObj Info identifier for expanded forms."
This reverts commit 3d843f33d9.
2017-10-18 11:12:49 +02:00
Erik Svedäng
3d843f33d9 Preparations for bumping the XObj Info identifier for expanded forms. 2017-10-18 09:49:58 +02:00
Erik Svedäng
9997dd7f90 Printing of floats/doubles removes superfluos zeros at the end. 2017-10-18 08:43:37 +02:00
Erik Svedäng
b1f86624fb Allow &t instead of (Ref t) in type declarations. 2017-10-17 16:05:42 +02:00
Erik Svedäng
42874e6d57 Allow lambda ("λ") as an alias for Fn when defining types 2017-10-17 09:42:57 +02:00
Erik Svedäng
dc83ef1f36 Bugs with foreach macro... :( 2017-10-17 09:25:30 +02:00
Erik Svedäng
2237b955aa Quote reader macro. 2017-10-17 09:02:12 +02:00
Erik Svedäng
a0f35a5543 Rewrote 'reduce' with carp instead of C. 2017-10-17 08:57:36 +02:00
Erik Svedäng
09fc80599a Renamed some functions in Double and Float. 2017-10-13 16:11:23 +02:00
Erik Svedäng
cebc0a98d9 Modules explained. 2017-10-13 16:04:06 +02:00
Erik Svedäng
b1819ef259 Started working on a slide show presentation. 2017-10-13 15:07:34 +02:00
Erik Svedäng
6bf7bf453d Put foreach macro into the Array module. 2017-10-13 13:50:15 +02:00
Erik Svedäng
49b13592fb foreach-macro 2017-10-13 13:48:40 +02:00
Erik Svedäng
aee6e713b3 Removed left-over trace. 2017-10-13 12:48:18 +02:00
Erik Svedäng
57f1c401a9 Documentation for Array functions in Array.carp 2017-10-12 21:27:36 +02:00
Erik Svedäng
cba677ee89 Range function works again. 2017-10-12 20:13:53 +02:00
Erik Svedäng
46681f4cd5 Print strings with @ in front of them. 2017-10-12 08:38:53 +02:00
Erik Svedäng
68c58f149d Can generate str functions for arrays of primitives and of other arrays. 2017-10-11 15:19:36 +02:00
Erik Svedäng
6083d17b84 Getting there... 2017-10-11 15:13:40 +02:00
Erik Svedäng
07a9c1d6f6 Can print an array of structs. 2017-10-11 14:48:07 +02:00
Erik Svedäng
d4f1910bce Added Bool module. Fixed error in test selection.carp 2017-10-11 10:52:18 +02:00
Erik Svedäng
8573098dca str-function generated for structs 2017-10-10 20:13:58 +02:00
Erik Svedäng
65d17b732c Tweaks to the memory logger. Also, replicate now takes a reference. 2017-09-29 14:54:49 +02:00
Erik Svedäng
b17780aa79 Fixed bugs in replicate and with nameofpolymorphicfunction. 2017-09-29 14:07:42 +02:00
Erik Svedäng
8cae7a7a3b A way to run all tests in one go. 2017-09-08 12:24:57 +02:00
Erik Svedäng
3308652c75 Use the type (Ptr Char) to express raw C strings. 2017-09-07 19:44:02 +02:00
Erik Svedäng
9781c5f7cb Fixed all examples after changing string literals to refs. 2017-09-07 18:55:43 +02:00
Erik Svedäng
9f6418022f Better error messages for weird types in typedef. 2017-09-05 11:32:32 +02:00
Erik Svedäng
271756de57 Missing text. 2017-09-04 11:36:09 +02:00
Erik Svedäng
3bef2ce24d Must register all external types now. 2017-09-02 11:17:19 +02:00
Erik Svedäng
7d7d99b9b7 External types are correctly identified as non-managed by the 'isManaged' function. 2017-09-01 17:30:43 +02:00
Erik Svedäng
3298fe3d32 set! takes a reference instead of just a variable 2017-07-13 13:08:45 +02:00
Erik Svedäng
00cd8df5cf replicate & repeat generates deleter functions 2017-07-12 10:22:16 +02:00
Erik Svedäng
571f46bd9d Give up on making range a template, was probably a bad idea... 2017-07-12 09:55:30 +02:00
Erik Svedäng
caaa4d99c3 Basics example work again. 2017-06-30 14:21:31 +02:00
Erik Svedäng
25f9892e94 Reduce! 2017-06-30 11:37:03 +02:00
Erik Svedäng
414c772f9a Fixed memory bug in Array_str__int 2017-06-30 11:00:36 +02:00
Erik Svedäng
97714dc77b Can log memory. 2017-06-30 10:46:40 +02:00
Erik Svedäng
1c6846729d refstr-macro 2017-06-29 17:05:34 +02:00
Erik Svedäng
29ab0c8513 Endofunctor map. 2017-06-29 16:58:27 +02:00
Erik Svedäng
7a644b5b2f Array docs. 2017-06-26 16:28:22 +02:00
Erik Svedäng
c80526cfaa REPLACE WITH HASKELL VERSION 2017-06-26 11:15:03 +02:00