Commit graph

6512 commits

Author SHA1 Message Date
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
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
Daniel Kochmański
1636b6110f print-object: add default t-specialized printer
Fixes #193.
2016-07-03 17:05:36 +02:00
Daniel Kochmański
f66dd64e6f tests: add regression test for *trace-output* 2016-06-21 17:20:41 +02:00
Daniel Kochmański
f54b0d9c78 trace: print to *trace-output*
Fixes #236.
2016-06-21 16:57:44 +02:00
Daniel Kochmański
f1857e0ed5 cmp: defcallback: accept ':default' calling convention
Fixes #244.
2016-06-21 15:20:34 +02:00
Daniel Kochmański
f00fa4159b man: remove unnecessary info 2016-06-21 14:27:27 +02:00
Daniel Kochmański
4c56f3bbdd Merge branch 'man-page-cleanup' into 'develop'
Improve man and help.

Sorry that it took so long.

I reorganized man page, so that now it tells truth about current flags. Also updated information about the authors.
Same for help prompt(--help).
Also, added some of these changes to changelog. I(my emacs)'ve been willing enough that I(my emacs) removed trailing whitespace. If you find that inappropriate, please let me know.

There is one thing that should be somehow fixed - we should have release.sh script(or something like that), that'd prepare a new build of ECL for release,
and change the date that's shown in man(or do we have that already?) - I've currently set it to 10.05.16 (dd/mm/yy).

See merge request !22
2016-06-21 12:18:49 +00:00
Daniel Kochmański
77dec0b96b new-doc: iteration 2016-06-18 21:14:04 +02:00
MatthewRock
b037f37d30 Another minor fixes in MAN. 2016-06-18 18:39:26 +02:00
Daniel Kochmański
bb57174de0 new-doc: use css, add info 2016-06-18 17:00:02 +02:00
Daniel Kochmański
4553d5b351 new-doc: update new-doc 2016-06-18 16:47:13 +02:00
MatthewRock
8cdadf02ad Minor fixes in MAN, update timestamp 2016-06-18 15:05:06 +02:00
MatthewRock
895297634e Minor fixes in MAN, update timestamp 2016-06-18 14:11:21 +02:00
MatthewRock
1caef56e2c Merge branch 'develop' of gitlab.com:embeddable-common-lisp/ecl into develop 2016-06-11 16:26:24 +02:00
Daniel Kochmański
9a17eb6ffd Merge branch 'develop' into 'develop'
Develop



See merge request !24
2016-05-31 12:22:14 +00:00
Fabrizio Fabbri
8ba88efb61 Build svr4 like shared object on AIX. 2016-05-31 08:09:47 -04:00
Fabrizio Fabbri
5b383d3ff5 env->cs_limit error. (Fix #57)
* Ensure that operation are performed in the correct order.
2016-05-31 08:01:58 -04:00
Daniel Kochmański
d948bd69fe Merge branch 'develop' into 'develop'
Support for aix on 32 and 64 bit.

* add UNIX as *features* on aix to build asdf.
* configure thread and runlime linking.
* generalize print_lock macro as xlC complain on variadic
  macro arguments number.

See merge request !23
2016-05-30 10:42:40 +00:00
Fabrizio Fabbri
311f34a2d6 Support for aix on 32 and 64 bit.
* add UNIX as *features* on aix to build asdf.
* configure thread and runlime linking.
* generalize print_lock macro as xlC complain on variadic
  macro arguments number.
2016-05-30 06:32:41 -04:00
Daniel Kochmański
545dac9c2f Merge branch 'fix-autotools-netbsd' into develop
Fixes #252.
2016-05-30 11:18:00 +02:00
Daniel Kochmański
da59fc8081 configure: longdouble: check more libm functions
On armv7hf NetBSD libm doesn't provide ldexpl frexpl functions while
provides sinl cosl tanl logl and expl apparently. To sanitize the
autodetection of long double we need to add them to the list.
2016-05-30 10:01:55 +02:00
Daniel Kochmański
8406e1e4fc signal: fix the problem with restart-case and signal
Fixes #247.
2016-05-29 14:17:37 +02:00
Daniel Kochmański
e8234eca4f tests: add regression test for bug #247 2016-05-28 21:11:53 +02:00
Daniel Kochmański
c30dec1880 doc: fix handler_case example
REvelant to #248
2016-05-28 20:30:39 +02:00
Daniel Kochmański
171eaba8d7 doc: fix mistake with construct name 2016-05-27 15:23:09 +02:00