Commit Graph

731 Commits

Author SHA1 Message Date
GrayJack
2ac9d7fc12 Add 2 missing includes on core/Core.carp 2019-10-31 05:42:14 -03:00
GrayJack
2c0fcbd6c9 Changes Maybe.ptr to Maybe.unsafe-ptr and all it's ocurrences 2019-10-31 05:38:47 -03:00
hellerve
1829df07a5 core: do not have short functions on single lines 2019-10-30 11:07:32 +01:00
Erik Svedäng
c90d11b7ca
Merge pull request #606 from hellerve/better-repeat
Reduce allocations in String.repeat
2019-10-30 10:09:51 +01:00
Erik Svedäng
32a63d6def
Merge pull request #605 from hellerve/heap-without-copy
Reduce copies in heap
2019-10-30 10:05:11 +01:00
hellerve
65946224f0 core: add .clang-format (references #499) 2019-10-30 08:47:36 +01:00
hellerve
2819d22729 core: add pointer arithmetic (references #423) 2019-10-30 08:09:18 +01:00
hellerve
c6dafda518 core: reduce allocations in String.repeat 2019-10-28 18:13:40 +01:00
hellerve
fc204fff1e core: reduce copies in heap 2019-10-28 17:23:46 +01:00
hellerve
eb9c236249 core: simplify Char.meaning 2019-10-28 17:19:31 +01:00
hellerve
e33c5fd7b4 core: actually register error 2019-10-28 14:28:37 +01:00
Erik Svedäng
24b76f57af
Merge pull request #586 from zxygentoo/master
Fix Generics.approx doc name.
2019-10-15 09:15:58 +02:00
Jorge Acereda
c4957020dd Add CARP_REALLOC() so it can be checked with CHECK_ALLOCATIONS 2019-10-13 10:40:54 +02:00
zxygentoo
4e0fd0a1ac Fix Generics.approx doc name. 2019-10-09 14:36:59 +08:00
Jorge Acereda
4a4107fffd Preserve includes order in generated output. 2019-10-03 00:23:27 +02:00
Erik Svedäng
1a0b003745 Remove defn for /= 2019-09-27 15:48:10 +02:00
Erik Svedäng
e8e641de99 Merge branch 'misc-fixes' of https://github.com/jacereda/Carp into jacereda-misc-fixes 2019-09-27 15:37:36 +02:00
Jorge Acereda
7b7cb5d1e5 Substitute /= interface by a generic. 2019-09-20 23:49:20 +02:00
Jorge Acereda
336b43a2af Add DoubleRef./= 2019-09-18 18:51:36 +02:00
Jorge Acereda
0423f40b51 Avoid copies. 2019-09-17 19:34:54 +02:00
Jorge Acereda
99ffd8efb7 Fix private? and hidden?. 2019-09-17 19:34:34 +02:00
Erik Svedäng
9e4f69ce5b Merge branch 'string-join-ref' of https://github.com/hellerve/Carp into hellerve-string-join-ref 2019-09-17 14:37:12 +02:00
hellerve
aad568c941 core: make String.join take ref (for #562) 2019-09-16 20:22:01 +02:00
Erik Svedäng
e455bab500 Array.contains? 2019-09-16 15:33:18 +02:00
Erik Svedäng
0567c8ef14 Some docs for the SDL bindings. 2019-09-13 12:37:06 +02:00
Erik Svedäng
e4dceb2405 More functional event handler in SDLApp. 2019-09-13 12:09:11 +02:00
Jorge Acereda
57e46cc4db Use get-tag. 2019-09-11 20:37:15 +02:00
Jorge Acereda
df72627974 Fix doc 2019-09-11 20:24:09 +02:00
Jorge Acereda
c14a38a457 Remove str, fix hash/=. 2019-09-11 20:24:09 +02:00
Jorge Acereda
85cacf538f Stronger types for Color 2019-09-11 20:24:09 +02:00
hellerve
ba1fb68fe1 core: add dynamic string functions tail, prefix, and suffix 2019-09-11 15:03:44 +02:00
Erik Svedäng
ec9fc0f493
Merge pull request #550 from jacereda/typos
Fix some typos.
2019-09-11 11:11:39 +02:00
Jorge Acereda
8162deb1bb Fix gcc9 warning. 2019-09-11 08:33:38 +02:00
Jorge Acereda
cb9ff267b6 Fix some typos. 2019-09-11 08:21:42 +02:00
Jorge Acereda
aa71647d02 Fix crashes in String.join/join-with-char with empty array. 2019-09-10 21:49:00 +02:00
Jorge Acereda
d29ff19968 Remove #516 workaround. 2019-09-10 20:46:09 +02:00
Erik Svedäng
6d6f93ec28
Merge pull request #542 from hellerve/gensym
Add gensym
2019-09-10 11:13:36 +02:00
Erik Svedäng
a6d4358ead
Merge pull request #541 from jacereda/generics2
Working on generics.
2019-09-10 10:55:10 +02:00
hellerve
439f734809 core: add gensym-with 2019-09-09 22:33:56 +02:00
Jorge Acereda
99516122b1 Generics no longer propagated. 2019-09-09 22:08:50 +02:00
Erik Svedäng
e40dfc57d7
Merge pull request #536 from scolsen/array-list-dynamics
Macros: Add dynamic list to array transforms
2019-09-09 21:43:04 +02:00
hellerve
a2c859c586 all: remove local-include in favor of relative-include 2019-09-09 17:56:43 +02:00
hellerve
f992fb4582 core: add gensym 2019-09-09 09:59:22 +02:00
Scott Olsen
b6abf38082 Merge branch 'master' of https://github.com/carp-lang/Carp into array-list-dynamics 2019-09-08 15:00:40 -04:00
Scott Olsen
b9d792ae39 Macros: Implement hellerve@'s generic collect-into
This change removes the previous array/list transformation dynamic
functions in favor of a generic collection transform courtesy of
@hellerve.

I made one minor adjustment to make the api more friendly, namely, the
implicit introduction of quoting such that users do not have to do so
themselves.
2019-09-08 14:58:30 -04:00
Scott Olsen
9aa7e4c0cb Macros: Fix issue in array-to-list
In order to work properly, the list returned by the array-to-list
function needs to be quoted.

Additionally, I fixed an obvious error in which the wrong internal
function was called in array-to-list
2019-09-08 14:54:29 -04:00
Jorge Acereda
08af49dc62 Working on generics.
- Added Generics module.
- Some Geometry/Vector* functions hardcoded parameters to Double.
2019-09-08 13:02:04 +02:00
Erik Svedäng
d8545a57be
Merge pull request #532 from jacereda/stdhandles
Add stdin/stdout/stderr.
2019-09-02 10:27:06 +02:00
Erik Svedäng
85e1983658
Merge pull request #531 from jacereda/abort
Use abort() for assertions.
2019-09-02 10:21:34 +02:00
Erik Svedäng
c2d4794246
Merge pull request #527 from hellerve/format-errors
Better error messages in fmt
2019-09-02 10:16:46 +02:00
Erik Svedäng
a8ae8570d5
Merge pull request #517 from jacereda/float-variants
Use float variants.
2019-09-02 10:02:05 +02:00
Erik Svedäng
0b29fd6ff6
Merge pull request #510 from jacereda/string-asserts
Fix string assert, simpler/faster conditions.
2019-09-02 09:48:38 +02:00
Scott Olsen
a8751a712e Macros: Add dynamic list to array transforms
This change adds two utility functions to the Dynamic module for
transforming list forms into arrays and array forms into lists.

Using this function, one can easily convert lists and arrays for
ease of symbol manipulation, for example:

```clojure
(Symbol.join (list-to-array (list 'a 'b 'c)))
```

This comes in handy, for instance, when defining macros, as certain
forms in Carp expect arrays in certain places while others expect
list--this enables the programmer to flexible convert between the two as
needed.
2019-08-26 23:44:29 -04:00
Jorge Acereda
a5b527efbe Add stdin/stdout/stderr. 2019-07-29 21:50:08 +02:00
Jorge Acereda
554b9df849 Use abort() for assertions. 2019-07-29 21:48:20 +02:00
hellerve
daf8f017c8 core: better error messages in fmt 2019-07-22 13:09:22 +02:00
Jorge Acereda
82bc16c809 More generic for macro 2019-07-09 00:18:38 +02:00
Jorge Acereda
a5f3d0025d Use float variants. 2019-07-06 19:56:35 +02:00
Erik Svedäng
af127da90c
Merge pull request #511 from hellerve/todo
Add todo macro
2019-06-27 09:10:57 +02:00
Erik Svedäng
c5d07b81d7
Merge pull request #509 from jacereda/asan-warnings
Enabling address sanitizer yields warnings due to _FORTIFY_SOURCE red…
2019-06-27 08:59:32 +02:00
Erik Svedäng
698f1870e1
Merge pull request #505 from hellerve/copy-map-updater
Copy default in Map.update-with-default
2019-06-27 08:55:56 +02:00
hellerve
f60f72f4b4 core: add todo macro 2019-06-22 20:18:32 +02:00
Jorge Acereda
e10f4228c0 CHK_INDEX macro 2019-06-21 00:00:46 +02:00
Jorge Acereda
d8919bf1e8 Fix string assert, simpler/faster conditions. 2019-06-20 12:43:37 +02:00
Jorge Acereda
e8c9d77d8f Enabling address sanitizer yields warnings due to _FORTIFY_SOURCE redefinition. 2019-06-20 12:12:26 +02:00
Erik Svedäng
7d1d16dd53
Merge pull request #506 from jacereda/sdl-init
Initialize SDL explicitly
2019-06-17 20:26:31 +02:00
Erik Svedäng
2022afede7 Merge branch 'master' of https://github.com/carp-lang/Carp 2019-06-17 20:24:42 +02:00
Erik Svedäng
19eee410c3 SDL pkg-config name should be lowercase. 2019-06-17 20:23:27 +02:00
Erik Svedäng
09422f89d6
Merge pull request #502 from jacereda/just-ptr
Add Unsafe.coerce
2019-06-17 20:23:09 +02:00
Jorge Acereda
a88b3ffbf9 Initialize SDL explicitly 2019-06-17 20:02:17 +02:00
Jorge Acereda
db6e5b87e7 Add Unsafe.coerce
Used for Maybe.ptr, fixes #494.
2019-06-17 19:30:16 +02:00
hellerve
7882b7ad57 core: copy default in Map.update-with-default 2019-06-17 13:43:45 +02:00
Erik Svedäng
ae076f5faa
Merge pull request #504 from hellerve/checked-malloc
Optionally check malloc
2019-06-17 09:26:53 +02:00
Erik Svedäng
db62efc825
Merge pull request #495 from jacereda/comp-flags
Use pkg-config for SDL flags.
2019-06-17 09:24:18 +02:00
hellerve
8b78fe453a core: optionally check malloc 2019-06-17 09:17:20 +02:00
Erik Svedäng
d1381ad41d
Merge pull request #498 from jacereda/const
Add some const qualifiers, removed MALLOC() null checks, fixed Float_…
2019-06-17 09:03:53 +02:00
Jorge Acereda
7ed48b733b Refactored flags handling (add-pkg). 2019-06-17 09:02:34 +02:00
Jorge Acereda
9ef01c67c6 Split flags for glfw. 2019-06-17 09:02:34 +02:00
Jorge Acereda
ba8a9a1853 Use pkg-config for SDL flags. 2019-06-17 09:00:24 +02:00
Erik Svedäng
d4182b53ef
Merge pull request #497 from jacereda/sdl-unused
Sdl unused
2019-06-17 08:44:22 +02:00
Erik Svedäng
6b2b33e823
Merge pull request #496 from jacereda/char-zero
Implement zero for Char.
2019-06-17 08:33:14 +02:00
Erik Svedäng
5e2faba7b9 Merge branch 'opengl-fw' of https://github.com/jacereda/Carp 2019-06-17 08:10:22 +02:00
Erik Svedäng
eaf2a427df Implement str/prn for &Bool 2019-06-14 15:24:25 +02:00
Jorge Acereda
bbee702f5e Add some const qualifiers, removed MALLOC() null checks, fixed Float_modf(), use memcpy() instead of memmove(). 2019-06-14 14:38:19 +02:00
Erik Svedäng
882bcce8bc carp_system.h should include carp_string.h 2019-06-14 13:24:40 +02:00
Jorge Acereda
ab07aecc25 Warning in generated code. 2019-06-14 13:13:22 +02:00
Jorge Acereda
aa897869d0 Remove unused SDL_INIT_EVERYTHING. 2019-06-14 13:13:04 +02:00
Jorge Acereda
c76177dfa7 Implement zero for Char. 2019-06-14 13:02:03 +02:00
Jorge Acereda
2343025ecf Move OpenGL.framework reference to its own module. 2019-06-13 18:21:59 +02:00
Jorge Acereda
bbf8c23281 Use standard NDEBUG instead of OPTIMIZE. 2019-06-13 14:29:47 +02:00
hellerve
538c4370dd core: add Maybe.or-zero 2019-06-12 08:49:54 +02:00
Erik Svedäng
fbd9c83f0d Documented the Dynamic module. 2019-06-07 15:19:07 +02:00
hellerve
465f34b7ff core: add annotations 2019-06-06 10:54:58 +02:00
Erik Svedäng
57748d21f8
Merge pull request #462 from hellerve/map-ho-non-owning
Make map’s higher order functions take refs
2019-06-06 09:53:02 +02:00
hellerve
c87893dd14 core: make map’s higher order functions non-owning 2019-05-27 18:42:25 +02:00
hellerve
e9fcf87ff5 core: remove stringcopy.append 2019-05-27 18:05:44 +02:00
Erik Svedäng
a34752413e
Merge pull request #457 from hellerve/fix-string-words
Also split by newline in String.words
2019-05-27 10:41:47 +02:00
Scott Olsen
8c4d38233b Map: Fix small typo in doc empty? 2019-05-24 12:30:00 -04:00
hellerve
113aa1d96a core: also split by newline in String.words 2019-05-24 15:39:52 +02:00
Erik Svedäng
006b3bf5f0
Merge pull request #454 from hellerve/const-assert
Add const-assert
2019-05-22 21:24:28 +02:00