* BUG: Don't optimize the "_operators" interface when using anonymous
objects!
git-svn-id: svn://localhost/gambas/trunk@4944 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Put every '_operators' interface related methods in the same source
file.
[GB.GSL]
* NEW: Polynomial _call() special method now is a synonymous of its Eval()
method. That way, you can write 'P(X)' to get the value of P(X).
git-svn-id: svn://localhost/gambas/trunk@4933 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Implement the ^ operator in the '_operators' interface.
[GB.COMPLEX]
* NEW: Implement the ^ operator.
[GB.GSL]
* NEW: Implement the ^ operator in the Complex class.
git-svn-id: svn://localhost/gambas/trunk@4931 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly raise an error when trying to use NULL on classes
implementing the _operators interface.
* NEW: The _convert interface now must handle conversions from any
datatype.
[GB.GSL]
* NEW: Automatic conversion from numbers to Complex.
* NEW: Start implementating the Vector class.
git-svn-id: svn://localhost/gambas/trunk@4913 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Abs() and the negation operator on a null object implementing the
'_operators' interface does not crash anymore, and correctly raises an
error now.
git-svn-id: svn://localhost/gambas/trunk@4912 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: "_operators" is a new interface that allows any native class to be
used with most of arithmetic operators: +, -, *, /, Abs, =, <> at the
moment.
* NEW: The "_convert" interface now allows a class to be converted to any
datatype, not just other classes.
* NEW: Str() and Print uses the "_convert" interface to print a localized
string conversion of any object.
[GB.GSL]
* NEW: Use the new "_operators" interface so that complex numbers can be
handled by standard arithmetic operators.
* NEW: The Complex class now implements the "_convert" interface.
git-svn-id: svn://localhost/gambas/trunk@4908 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: "Extern" functions should now work hopefully, but callbacks are still not yet implemented.
* BUG: Fix conversion Class -> Variant for non-virtual classes.
* BUG: Some minor bug fixes.
[INTERPRETER]
* BUG: Load classes from JIT should work better now.
git-svn-id: svn://localhost/gambas/trunk@4831 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not crash when compiling a program again.
[INTERPRETER]
* OPT: Make API arrays constant.
* OPT: Comparison methods return back to gbx_exec_loop.c
git-svn-id: svn://localhost/gambas/trunk@4768 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Switch to JIT compiler if available, and make it able to talk to gb.jit.
* BUG: GP must be NULL for new void stack frames.
[COMPILER]
* NEW: 'Fast' keyword means the class should be JIT-compiled.
[GB.JIT]
* NEW: JIT Compiler.
git-svn-id: svn://localhost/gambas/trunk@4759 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Ignore non-significant decimal digits when converting a String to a
Float. In other words, now 2.0 = 2.
git-svn-id: svn://localhost/gambas/trunk@4685 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The exp10() function is temporarily removed
from gbx on FreeBSD because of the BSD libc that
doesn't have this one.
[GB.V4L]
* NEW: compile with success on FreeBSD
git-svn-id: svn://localhost/gambas/trunk@4555 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The Val() and IsXXX() functions algorithm has been fixed. Now the
string is trimmed before being converted. Thousand separators are really
valid only to separate thousands. Extra non-space characters at the end
of the string make the conversion fail.
git-svn-id: svn://localhost/gambas/trunk@3382 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly handle all compiler error messages.
[INTERPRETER]
* NEW: Full management of the Single datatype.
* BUG: VarPtr() now works on Single local variables.
* BUG: Remove useless Tag property. It is defined in the Stream class now.
* BUG: Correctly free the Tag property in the Stream class.
[GB.GTK]
* BUG: Rich-text string management has been fixed. The ampersand character,
the "&", ">" and "<" entites are correctly interpreted now.
[GB.NET.CURL]
* BUG: Remove useless Tag property. It is defined in the Stream class now.
[EXAMPLES]
* NEW: The WebBrowser example has a download manager now.
git-svn-id: svn://localhost/gambas/trunk@3296 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly deals with unknown components in the project property
dialog.
[INTERPRETER]
* NEW: Error backtrace is now always printed.
* OPT: Some optimizations in mathematical routines.
[GB.IMAGE]
* NEW: Image.FillRect() is a new method that fills a rectangle with a
specified color.
git-svn-id: svn://localhost/gambas/trunk@3007 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Many optimizations. One is big (gcc is not really clever sometimes!),
and now Gambas is about 30% faster than interpreted Python when running
stupid benchmarks.
git-svn-id: svn://localhost/gambas/trunk@3005 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Many optimizations again.
* BUG: Fix an unitialized variable in string to float conversion routine.
* BUG: Handle extern functions that return a pointer.
git-svn-id: svn://localhost/gambas/trunk@3003 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Some optimizations again in memory allocator, object releasing
routine, arithmetic operators, class variable reader, line-by-line stream
reader, class symbol sort routine.
* BUG: Using constant strings inside variant, like database drivers, works
correctly again and does not crash the interpreter anymore.
git-svn-id: svn://localhost/gambas/trunk@2996 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Breakpoints are correctly reset when opening a new project.
[INTERPRETER]
* BUG: The GB.NewString(), GB.NewZeroString() and GB.TempString() API
signature has changed. All components have been updated accordingly.
* OPT: Many optimizations to speed up the interpreter.
[GB.EVAL]
* NEW: During syntax highlighting, the first character of class names is
automatically converted to uppercase.
git-svn-id: svn://localhost/gambas/trunk@2992 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Do not use "boolean" anymore. Use "bool" instead.
[COMPILER]
* NEW: Do not use "boolean" anymore. Use "bool" instead.
git-svn-id: svn://localhost/gambas/trunk@2091 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the arithmetic operations on Boolean, Byte and Short, so that
everything is correctly truncated.
git-svn-id: svn://localhost/gambas/trunk@1836 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Some little fixes in the hall of fame animations.
* BUG: Fix the layout of the property sheet text edit dialog.
* NEW: A new highlighting theme, named 'Quick'.
* NEW: The '(Scaled)' virtual property has been renamed as 'Scaled'.
* BUG: Fix the "quit" icon in the quit dialog.
* BUG: Correctly raise an error when making an executable fails for any
reason.
* BUG: Extract the property help better.
[WIKI CGI SCRIPT]
* BUG: Auto link now really makes one identical link between two titles.
[INTERPRETER]
* OPT: Optimization of additions of small integers.
* BUG: INC and DEC now toggle boolean values.
* NEW: Use the new '.startup' file to run a project. The old '.project'
file can be used for older projects. But its support will be removed in
the final version.
[COMPILER]
* NEW: A '.startup' file is now created at each compilation. It contains an
extract of the '.project' file with just what the interpreter needs to
run the application.
[GB.GTK]
* BUG: Void items are correctly handled by ComboBox without crashing now.
[GB.EVAL]
* BUG: Quoted symbols, i.e. symbols between braces, are now correctly
colorized by using the identifier colors.
[GB.FORM]
* BUG: Removed the useless Tag property from the DatePicker control.
* BUG: Fix the height of the DateChooser toolbar.
* NEW: Wizard.ShowIndex is a new property that makes the wizard control
automatically display the index of the current step. This index takes
into account if some steps are disabled.
[GB.FORM.DIALOG]
* NEW: Dialog.SelectDate() is a new method that allows the user to select a
date in a dialog box having a date chooser.
[GB.QT]
* BUG: You can now resize a non resizable window without having to change
its Border property first.
[GB.QT.EXT]
* BUG: Editor correctly goes to the end of file when pressing CTRL+END.
Consequently, SelectAll() works correctly too now.
* NEW: Comments just before a procedure are now never folded.
git-svn-id: svn://localhost/gambas/trunk@1317 867c0c6c-44f3-4631-809d-bfa615b0a4ec
[CONFIGURATION]
* NEW: 64 bits port.
[EXAMPLES]
* BUG: Fixed the AnalogWatch example.
[WIKI CGI SCRIPT]
* NEW: Some little cosmetic changes.
[INTERPRETER]
* NEW: The extern function implementation has been redesigned and is now
based on libffi, so that it works on 64 bits system. Because of a flaw in
the compiler design, projects that use the Pointer datatype must be
recompiled to be used on a 64 bits system. This flaw will be fixed in
Gambas 3.
* OPT: Put some tables into read-only memory. About 1000 bytes are saved
for each running interpreter, except the first one.
* BUG: Does not crash anymore if a component cannot be loaded.
* NEW: Spanish translation updated.
* NEW: A new interpreter API for returning a pointer.
[COMPILER]
* BUG: Correctly compiles LONG constants inside code.
[GB.DEBUG]
* BUG: Compiles and links the gb.debug components with the thread
libraries.
[GB.DB.SQLITE3]
* BUG: Getting the primary index of a table without primary index is safe
now.
[GB.GTK]
* BUG: Modified the GLib priority of watched descriptors, as the main loop
could enter in a loop in which user interface events were not managed.
* BUG: Message boxes use application title without crashing now.
[GB.OPENGL]
* BUG: Disable dead code.
[GB.QT.EXT]
* BUG: TextEdit.TextWidth and TextEdit.TextHeight were not declared as
read-only properties.
[GB.XML.XSLT]
* BUG: XSLT class is now declared as being not creatable.
git-svn-id: svn://localhost/gambas/trunk@1006 867c0c6c-44f3-4631-809d-bfa615b0a4ec