Commit graph

6536 commits

Author SHA1 Message Date
Daniel Kochmański
4dd7ec150b example: ecl_qt: move files to qt/
After the first build stage movie files to the qt/ directory (covered
in *.lisp files and Makefile).
2016-08-13 12:51:43 +02:00
Daniel Kochmański
2f2b3defd1 examples: ecl_demo: make example more portable 2016-08-13 09:02:15 +02:00
lexicall
4e45a82e2b examples: add example ecl_qt (embedding ECL in QT5) 2016-08-13 08:33:42 +02:00
Daniel Kochmański
0fbf2a4c44 tests: add some basic tests for ieee-fp 2016-08-12 09:32:07 +02:00
Daniel Kochmański
9874b6e53a ieee-floats: fix printing of NaN's
Add readable print if the feature :ieee-floating-point is present.
2016-08-12 08:48:36 +02:00
Daniel Kochmański
bc567e0c3f ieee-floats: fix printing
Do redundant type test in case we're calling it from somewhere else.
2016-08-12 08:28:43 +02:00
Daniel Kochmański
0ef98adbaa haiku port: autoreconf 2016-08-11 23:55:28 +02:00
Daniel Kochmański
c57fcd366c ieee-floats: improve api, fix ieee-float builds
This initializes CL infinite floats with a precomputed and casted
infinity from the appropriate C macro. This removes runtime 0/0
operations.
2016-08-11 23:44:38 +02:00
Daniel Kochmański
6f2795e4e5 cosmetic: new-doc: add comment 2016-08-11 22:53:12 +02:00
Daniel Kochmański
0051ff7a3e changelog: update 2016-08-11 22:42:15 +02:00
Daniel Kochmański
ed5ecd03eb ieee-floats: fix builds with --with-ieee-fp=no
Functions to print (nan,float)-to-string and and predicates are still
available, but ext:*-float-*-infinity aren't available if ECL is built
with option `--with-ieee-fp=no`.
2016-08-11 22:38:30 +02:00
Kacper Kasper
873be229d0 fix mkdir in configure
Signed-off-by: Daniel Kochmański <daniel@turtleware.eu>
2016-08-10 16:47:07 +02:00
Kacper Kasper
c951b72b2d Haiku support.
Signed-off-by: Daniel Kochmański <daniel@turtleware.eu>
2016-08-10 16:47:07 +02:00
Daniel Kochmański
020b3dcfeb new-doc: add some notes 2016-08-10 14:20:13 +02:00
Daniel Kochmański
fe0fc1d4c5 changelog: add random-state improvements 2016-08-10 14:14:13 +02:00
Daniel Kochmański
7569359860 make-load-form: add random-state implementation 2016-08-10 13:55:06 +02:00
Daniel Kochmański
e1d11cddbd random-state: add ext:random-state-array function
This function will return random-state array. This is meant for next
commit which implements MAKE-LOAD-FORM for random-state objects.
2016-08-10 13:54:22 +02:00
Daniel Kochmański
ab2e5a3593 random-state: make-random-state accepts arrays
Type of the array is checked. The code has been moved from the `#$'
reader-macro simplifying its implementation.
2016-08-10 13:52:10 +02:00
Daniel Kochmański
c196d0f0e7 Merge branch 'improve-testing' into develop 2016-08-10 13:50:52 +02:00
Daniel Kochmański
481270eca7 tests: update CHANGELOG 2016-08-10 13:46:56 +02:00
Daniel Kochmański
59c078e576 tests: create make-check-suite
This suite doesn't have regressions/mp, which often fail to not disturb
the ordinary user. All regressions are in the ecl-tests suite.
2016-08-10 13:44:40 +02:00
Daniel Kochmański
d712e7eb12 tests: config.lsp: simplify file 2016-08-09 19:59:11 +02:00
Daniel Kochmański
5fababeb35 1am: add file 2016-08-09 19:48:23 +02:00
Daniel Kochmański
eb1b36dc04 tests: run full tests (regressions and features) 2016-08-09 19:35:24 +02:00
Daniel Kochmański
759854445c tests: add stress tests system using 1am 2016-08-09 19:34:44 +02:00
Daniel Kochmański
c544f92ca3 tests: cmp: random-state: add make-load-form test 2016-08-09 17:49:41 +02:00
Daniel Kochmański
c13cab3dc6 cosmetic: fix error message arguments 2016-08-09 17:36:05 +02:00
Daniel Kochmański
589a564334 tests: mixed: random-state: improve test 2016-08-09 17:35:48 +02:00
Daniel Kochmański
5761230e15 tests: fix format test 2016-08-09 16:49:35 +02:00
Daniel Kochmański
f72077549c tests: simplify make target 2016-08-09 16:49:35 +02:00
Daniel Kochmański
36a06c74e9 tests: fix a few mistakes 2016-08-09 16:49:35 +02:00
Daniel Kochmański
cd9f75a581 tests: reorganize ecl-tests (use 2am) 2016-08-09 16:49:35 +02:00
Daniel Kochmański
a4d565161d Merge branch 'develop' into 'develop'
fix build when msvc support bool type on c99 and stdbool.h



See merge request !29
2016-08-09 09:33:36 +00:00
Fabrizio Fabbri
be3b6ba9ea fix build when msvc support bool type on c99 and stdbool.h 2016-08-09 04:23:58 +02:00
Daniel Kochmański
2733aa379c old-doc: fix Makefile 2016-08-05 15:59:11 +02:00
Daniel Kochmański
af65969c0b file-stream-fd: don't cause internal error
If the argument isn't a file-stream rise a SIMPLE-TYPE-ERROR
condition. Fixes #271.
2016-08-04 14:51:43 +02:00
Daniel Kochmański
86a591461c make-random-state: allow fixnum as the argument 2016-08-04 10:32:18 +02:00
Daniel Kochmański
691e77c3be cmp/c++: fix inlined function calls
We have 3 more regressions with CXX in comparison to pure C mode.
Related to #241.
2016-07-28 19:07:44 +02:00
Daniel Kochmański
e010740f06 changelog: update 2016-07-28 18:30:33 +02:00
Daniel Kochmański
2062b8fce3 cosmetic: add c-local declarations 2016-07-28 18:21:20 +02:00
Daniel Kochmański
6930c315a6 Merge branch 'fix/stable-inline-sort-on-vectors' into 'develop'
New inline stable sort for vectors

This PR should improve on the current stable sorting of vectors, fixing issues such as #217 (bug) and #101 (performance).

Full disclosure: The merge sort algorithm was completely stolen from sbcl.

I'm sure the new version can be optimized, for example by inlining `stable-sort-merge-vectors`, and by treating simple-arrays differently.

But for now, it already has slightly better performance on the sequences that I tested with, for example running:

```common-lisp
(time (dotimes (x 50000)
	(defparameter *my-arr* 
		(make-array 9 :initial-contents
		(list
		  (cons 3 'a)
		  (cons 2 'b)
		  (cons 2 'c)
		  (cons 2 'd)
		  (cons 3 'e)
		  (cons 2 'f)
		  (cons 2 'g)
		  (cons 2 'h)
		  (cons 1 'i))))

	(stable-sort *my-arr* #'< :key #'car)))
```

gave me 0.34 sec in the old version, and 0.28sec in the new one (even with the overhead of the make-array call, which is the same for both). But most importantly, the new version leaves the array sorted, which fixes bug #217:

```common-lisp
> *my-arr*
#A(T (9) ((1 . I) (2 . B) (2 . C) (2 . D) (2 . F) (2 . G) (2 . H) (3 . A) (3 . E)))
```

while in the old-version:
```common-lisp
> *my-arr*
#A(T (9) ((3 . A) (2 . B) (2 . C) (2 . D) (3 . E) (2 . F) (2 . G) (2 . H) (1 . I)))
```

The example in #217 also works now, of course:
```common-lisp
> (let ((a (copy-seq "BCA")))
        (stable-sort a #'char<)
        a)

"ABC"
```

See merge request !28
2016-07-28 16:13:23 +00:00
Diogo Franco
8723d5f895 implement new inline stable sort for vectors, fixing avoiding the previous coercion to list and actually do it inline 2016-07-26 23:52:11 +01:00
Daniel Kochmański
000af1996d cosmetic: make Makefile behaviour more intelligible
Also fix ctags obsolete flag (-o -> -f) and correct some small things
in ecl.man.in. Closes #263.
2016-07-25 16:33:30 +02:00
Daniel Kochmański
302b9dd86f Merge branch 'develop' into 'develop'
Fixed VS2010/2015 build.

- Fix #213
- Commit 10bd3b61 removed dffi code. Reflect that on nmake build.

See merge request !27
2016-07-21 09:04:46 +00:00
Fabrizio Fabbri
8fed1fa97d Fixed VS2010/2015 build.
- Fix #213
- Commit 10bd3b61 removed dffi code. Reflect that on nmake build.
2016-07-21 04:45:28 -04:00
Daniel Kochmański
b889b02a2b Merge branch 'fix-profiler-module' into 'develop'
Fix profiler module

This handles Issue #163.

Removes the problematic list case, and ignores any argument that is not a symbol or string.

Example of new behaviour:
```common-lisp
> (profile:profile 'defined-function)
;;; Warning: ignoring invalid argument to PROFILE: 'DEFINED-FUNCTION

> (profile:profile undefined-function 'defined-function defined-function)
;;; Warning: ignoring undefined function UNDEFINED-FUNCTION
;;; Warning: ignoring invalid argument: 'DEFINED-FUNCTION

> (profile:profile) ; list profiled functions
(DEFINED-FUNCTION)
```

See merge request !26
2016-07-20 11:19:23 +00:00
Diogo Franco
54a614bf34 do not warn about the PROFILE function, because this is also used in UNPROFILE 2016-07-20 11:54:06 +01:00
Diogo Franco
60a864ce3b delete broken list case in profile module. warn and ignore invalid names. 2016-07-20 11:38:43 +01:00
Daniel Kochmański
cd84200762 Merge branch 'develop' into 'develop'
fix minor typo in pprint error message

Minor fix to an error message I got when trying to change a read-only pprint dispatch table.

See merge request !25
2016-07-06 13:33:13 +00:00
Diogo Franco
6db5c3b672 fix minor typo in pprint error message 2016-07-06 11:17:24 +01:00