AL-IV (ALFOUR) v5.0.7 AL-IV.zip - all the sources of AL-IV (read: ALFOUR) compiler to C#, C++, Java and Delphi. An original compiler written manually in C# is only for compiling a compiler (in the root directory, AL4.sln). Use secondary compiler (in a sub-folder Compiled) to compile your projects to C# and a compiler to Delphi code from AL-IV to C# (in Delphi_build - made by C# version, and in By_Delphi_build - made already by the version in the Delphi_bild folder). Sub-folder Library\Visual contains components wrappers to create visual forms application. Read also a documentation and other materials on site: http://kolmck.ru/AL4/ To contact, mailto: v1kladov#mail.ru (# -> @) or other e-mail specified on the Source Forge project page or other author's sites. With regards, Vladimir Kladov. 2016, November, 25. The last update date for this "readme" see below. --------------------------------------------------------- v0.3: 2016, December. v0.4: Java-awt support (except {Listview} support). v0.41: {File_stream}, {Stream} were added. 2017, Jan, 3. v0.42: {Mathematics}, {Random}, {Date_time} were added. 2017, Jan, 5. v0.43: Str and Format for {Date_time} added, Rome for {Mathematics}. 2017, Jan, 8. --------------------------------------------------------- v0.5: AL4 to C++ compiler added (w/o Visual yet, but other Library funation are supported). 2017, Jan, 31. v0.51: wxWidgets almost ready for C++ version. Some other progress. 2017, Feb, 26. v0.52: Full cycle has done (compilers compiled by compilers are identical and working). 2017, March, 8. v0.53: AL4 to C++ compiler developing has big progress. 2017, March, 16. v0.54: {Listbox} added. 2017, March, 19. v0.55: {OpenGL} started (for all platforms: C#,C++,Java,Delphi). 2017, March, 25. v0.56: {OpenGL} - rotating cube for all four platforms. 2017, March, 29. v0.57: {Bitmap_direct}, OpenGL: texturing, call lists, TODO:.... 2017, April, 4. v0.58: {Font2D}, DEBUG: ... ; 2017, April, 9. v0.59: /op +/-/flags, Tools\Test_report 2017, April, 25. --------------------------------------------------------- v0.60: sequentional CASE? 2017, April, 27. v0.61: Localization support added. 2017, May, 09. v0.62: Delphi/KOL support added (non-visual only yet). 2017, May, 18. v0.63a: Delphi/KOL visual controls support added (including OpenGL). 2017, June, 09. --------------------------------------------------------- v0.70: Generic functions, {Sorting}, {Tray_icon}. 2017, July, 28. v0.71: {Configuration}, {Clipboard}, {Erros}, {DB}, {MDB}, POP/STORE/FORGET. 2017, August, 13. v0.72: TABLE, db << INSERT/DELETE/UPDATE/SELECT, LIKE. 2017, August, 25. v0.73: WHERE, WAIT(fn1, fn2, ...), {DB} for C++ via OTLv4. 2017. August, 28. v0.74: UNSUPPORTED('text), Generic fun(...) ==> {?}, insert BLOB (C#). 2017, September, 3. v0.75: optimization of array parameters, Doc_sources. 2017, September, 12. v0.75a: better docs on classes, functions, etc. 2017, September, 14. v0.76: NATIVE: "///copy ...", {Icon}, {Alien_windows}. 2017, September, 23. v0.77: {Dialog}, SETTER FOR, REVERT, CASE ... ? - in separate line for long condition, lines concatenation extended rule. 2017, October, 1. v0.78: METHOD for methods, FUN for static functions, ':' in separate line for long function header, localization of a compiler messages (Russian_RU.lng ready, any other can be added). 2017, October, 7. v0.79: PUSH method, REVERT fixes, New_memo(..., Flags), New_read_only_edit. 2017, October, 10. --------------------------------------------------------- v0.80: ==> type [RESULT|comment], {Bitmap}.Draw, {Listview}.Column_width, fixes. 2017, October, 14. v0.81: ['RU']CLASS, {Tray_icon} for Java, RECORD for C++ via struct + fixes. 2017, October, 19. v0.82: ['RU']CLASS {...}, TRANSLATION {...}. Fixes in {Configuration}. 2017, October, 22. v0.83: some fixes, optimize size for Delphi/KOL. 2017, October, 25. v0.84: some fixes, optimizations for C++. 2017, October, 31. --------------------------------------------------------- v0.85.0: {Paintbox}, {Paint_lines}. 2017, November, 5. v0.85.1: {Paint_tabs}, {Canvas}.System_color, {Control}.animate, mouse|_move|_down|_up|_wheel. 2017, November, 9. v0.85.2: {Paintbox}.{cursor}, Cursor, Set_cursor + bug fixes. 2017, November, 12. v0.85.3: {Control}.Location + bug fixes. 2017, November, 15. v0.85.4: Str = S, block statements from the start of a line + bug fixes. 2017, November, 22. v0.85.4.a: small fix (compiling to C#). 2017, November, 23. v0.85.4.b: small fix (fixed arrays of records on base of dynamic arrays in C#). 2017, November, 24. v0.85.5: {File_path}.File_info, {Edit}.Set_selection_range..., @@ + bug fixes. 2017, November, 27. v0.85.6: ==, != are disabled for REAL, improve Java forms (no flicks, only vertical scrolls), {Sorting}.Data_sort(Count) + bug fixes. 2017, December, 2. v0.85.7: FRIENDS: {class1}, ... . disabled/checked menu, #ESC + fixes. 2017, December, 7. v0.85.8: friends can call methods of familiar class + fixes. 2017, December, 11. v0.85.9: List_fonts + C++ optimizations, /$NOOPTIMIZE. 2017, December, 17. --------------------------------------------------------- v0.86.0: C++ optimizations: SStrings, WIN_GDI for wxWidgets. 1st publication of IDEAL4. 2017, December, 29. v0.86.1: {Form}.Set_column_auto_arrange(BOOL), Compiler_messages.html. 2018, Jan, 4. v0.86.2: IDE AL4: errors/warnings window. 2018, Jan, 7. v0.86.3: IDE AL4 improved/fixed, + other fixes. 2018, Jan, 12. v0.86.4: IDE AL4 some changes, {Long_operation} (C#, C++). 2018, Jan, 19. v0.86.5: {Long_operation} (Delphi/KOL, Delphi/VCL, Java(not finished)). 2018, Jan, 21. v0.86.6: IDE AL4: localization, translate to Russian + other improvements. {OpenGL} fixed. 2018, Jan, 23. v0.86.7: {Paint_turtle}, Tools\Image_turtle. 2018, Jan, 24. v0.86.8: IDE AL4: improvements + fixes. Tips on function parameters (nesting), on class/record constructors. 2018, Jan, 26. v0.86.9: environment var %AL4% allows to install AL-IV on any disk + fixes (modal {Dialog}). 2018, Jan, 29. --------------------------------------------------------- v0.87.0: a lot of fixes; DATA[] accessible from FUNCTIONs; speed up reading UTF-8. IDE now is compiled and working from all the platforms supported (C#,Delphi/VCL,KOL,Java,C++/wx). 2018, Feb, 4. v0.87.1: no repeat test if there were no changes; auto-sizing buttons, check boxes, etc.; {Screen}.Default_font_size. 2018, Feb, 7. v0.87.2: tests for {Form}; fixes in compiler. 2018, Feb, 12. v0.87.3: IDE AL4 - localized errors + localized code editing. 2018, Feb, 14. v0.87.4: C++, Delphi: prevent output messages on test satge to Compiler_messages; better scrolling (all visual environments). 2018, Feb, 18. --------------------------------------------------------- v0.88.0: C++: compiling with GCC (for Windows, TDM-GCC-64 was used). 2018, Feb, 26. --------------------------------------------------------- v0.89.0: C++: compiling with GCC for Linux (console appls only). 2018, Mar, 5. v0.89.1: C++: compiling with GCC for Linux (both conosole and visual apps). 2018, Mar, 10. v0.89.1a: fixes. 2018, Mar, 11. v0.89.2: C++ for Linux can be compiled in Linux. 2018, Mar, 16. v0.89.3: TESTED(nn), '"..."', debug statement removed, DEBUG only left. 2018, Mar, 21. --------------------------------------------------------- v0.90.0: Python (console app Hello_world). Other languages syntax highlighting in IDE (Python, Fox Pro). 2018, Apr, 8. v0.90.1: -$SSTRINGS; highlighting Pascal syntax in IDE; {Stream}: faster text load in ANSI. 2018, Apr, 12. v0.90.2: Python is on progress (console apps in Windows/Linux); disabled: REAL IN/!IN REAL[], ++/-- together with &&/||. 2018, Apr, 22. v0.90.3: Python in progress (empty GUI form application); +fixes (C++, C#). 2018, May, 7. v0.90.4: Python GUI in progress. 2018, May, 20. v0.90.5: Python GUI in progress. 2018, May, 26. v0.90.6: Python GUI in progress. 2018, June, 7. v0.90.7: Operation '..' . 2018, June, 29. v0.90.8: recursion deep control for all OVERRIDE, /$ICON, ''...''. 2018, July, 20. v0.90.9: compiling to c++/java/python abandoned, to FPC - started. Smaller code, especially for Delphi/KOL. 2018, July, 30. ---------------------------------------------------------- v0.91.0: FPC (Windows) is OK (console, GUI, OpenGL). 36K minimum GUI app (Delphi/KOL). 2018, August, 7. v0.91.1: Trace_nnn functions to access stack, TRAP(methods) for class fields. 2018, August, 10. v0.91.2: {Paint_turtle}: FN; {Canvas}.{quality}; HISTORY; UNCOOKED; C# true struct always for RECORD. 2018, August, 30. v0.91.3: Tools\Diagram_draw. 2018, September, 4. v0.91.4: FreePascal+Linux(console apps + Empty form test app; -MDelphi ==> -MObjFPC). 2018, September, 14. v0.91.5: FPC + Linux (visual apps) including {OpenGL}, {Tray_icon}. 2018, Sep, 21. v0.91.6: FPC + Linux -> compiling & running IDE AL4 in Linux. 2018, Sep, 28. v0.91.7: Demo projects added: Lupa and Clock. 2018, Oct, 9. v0.91.8: Tools\Pascal2AL4Class. 2018, Oct, 12. v0.91.9: BYTE->INT; C# struct->class; {Form}.scrolled, Set_column_width; fixes. 2018, Oct, 28. ---------------------------------------------------------- v0.92.0: Modifiers CLAMP & INLINE. Delphi: arrays[] reworked. 2018, Nov, 18. v0.92.1: Delphi: cacheing temp fixed arrays; optimization V5 (uniting local vars). 2018, Nov, 24. v0.92.2: Modifier UNROLL for FOR stmt, options /!autoinline, /!unroll. 2018, Dec, 2. v0.92.3: LIKE .... EXCEPT; C#: /$FRAMEWORK=3.5/4.0; {Form}.reason_closing. 2018, Dec, 8. v0.92.4: BREAK k, BREAK j, CONTINUE i. {Form}.Closed, READ. Fixed arrays fixes. 2018, Dec, 16. v0.92.5: {Form}.command, {Form}.accept, {Single_instance}. C#: AssemblyInfo.cs. 2018, Dec, 22. v0.92.6: a lot of fixes. 2018, Dec, 30. v0.92.7: IDE: + Form Designer (BETA). 2019, Jan, 8. v0.92.8: generics removed from the language; {Sorting} -> LIKE; + A[].Swap; DEBUG IMPORT -> IMPORT, DEBUG.2019, Jan, 13. v0.92.9: Delphi/VCL: Incremental compiling. 2019, Jan, 19. ----------------------------------------------------------- v0.93.0: Incremental compiling improved; Form designer mostly ready to use. 2019, Jan, 21. v0.93.1: Form designer: Menu Edit added, support unknown controls, work from scratch; IDE focus after CTRL+F/R fixed; {Form}.Save_bounds; C#: message hiding bihind form fixed. 2019, Jan, 27. v0.93.2: {Checkbox}.Radiogroup; {Report}, {Printers}, {NATIVE_printers}. 2019, Feb, 1. v0.93.3: {RTTI} added. LIKE........'aaa' BUT IN 'zzz': ... ; 2019, Feb, 6. v0.93.4: {Report}: wrapping, scaling, aligning, clipping, pages, events - work now (C#&VCL). 2019, Feb, 14. v0.93.5: {Report}: 'JUSTIFY', some fixes, Report editor: fixes. Works now for KOL&FPC. 2019, Feb, 16. v0.93.6: {Thread}, {Slice}, support for //[diagram:......] in IDE. 2019, Mar, 3. v0.93.7: OPERATOR, {Complex}. 2019, Mar, 5. v0.93.8: METHOD .[i,j]==>..., {Vector}, {Matrix}. 2019, Mar, 7. v0.93.9: FOR x IN M[a TO b]: ... FOR x IN M[b DOWNTO a]: ...; /$REAL=Extended; DEMO: CCalc. 2019, Mar, 12. ------------------------------------------------------------ v0.94.0: {Cvector}, {Cmatrix} -> use in CCalc demo. 2019, Mar, 13. v0.94.1: CCalc: polynomials, triangle solve. 2019, Mar, 14. [355/113 day] v0.94.2: WebMaket/only changed files/, Fixes(C#: FOR, /op R2). 2019, Mar, 15. v0.94.3: fixes in compiler, in IDE Designer. 2019, Mar, 17. v0.94.4: X = {Class}, >> local[] is an error except X is temp; {Random_soft}. 2019, Mar, 20. v0.94.5: FOR e IN {enumeration} : ...; 'ENUM'.Int 2019, Mar, 24. v0.94.6: {enum}.'Item'.Next, ...Prev|ious, ...First, ...Last; 2019, Mar, 26. v0.94.7: C# /$INCREMENTAL, -warn:0; fixes: C# hidden, IDE: can_hide[]<<name|name2. 2019, Mar, 28. v0.94.8: 7 fixes + 1 change. 2019, Mar, 30. v0.94.9: {Font}.Face, Size, Style can be assigned; IDE: bottom pop up menu on -------- 'labels'. 2019, Apr, 5 ------------------------------------------------------------ v0.95.0: {Paint_tabs}.Select_tab moves tab into view; IDE: pop up menu on tab: lists all tabs; local fixed arrays[{enum}]. 2019, Apr, 8. v0.95.1: IDE Designed (CTRL-click, Dbl-Click ==> to event handlers). 2019, Apr, 12. v0.95.2: OBJECT added. 2019, Apr, 21. v0.95.3: fixes (C#). 2019, May, 11. v0.95.4: SCENARIO, WAIT, GOTO, CALL. 2019, May, 23. v0.95.5: {Form}.menu_item, menu - deprecated. 2019, June, 2. v0.95.6: {Form}.Cleint_width, Client_height, Set_client_size. Compiling by $By_Delphi_build. 2019, June, 6. v0.95.7: fixes, compiling in Linux (of non-visual projects) fixed. 2019, June, 09. v0.95.8: compiling in Linux with Free Pascal/LCL fixed. 2019, June, 10. v0.95.9: fixes (FPC/Linux). 2019, June, 11. ------------------------------------------------------------ v0.96.0: improve: Anchor_bottom=TRUE. Fixes in compiler (OBJECT, ...). 2019, June, 19. v0.96.1: Delphi X (RadStudio, BDS) supported for multi-target projects on base of FMX. 2019, July, 5. v0.96.2: Fixes (memory leak, OBJECT compiling); Demo project "100". 2019, July, 12. v0.96.3: Fixes. 2019, July, 17. v0.96.4: Partial working on Android. 2019, July, 24. v0.96.5: Android way: long tap --> RMB click, swiping columns. Calc demo on Android. 2019, Aug, 1. v0.96.6: Android way: multiple forms applications. 2019, Aug, 9. v0.96.7: Disable ambiguous ==>, enable Field = value for R/O fields with a setter, disable x = {Class}(... x ...), etc. 2019, Aug, 27. v0.96.8: Disable passing R/O arrays, fixed arrays A[{enum}], passing RECORD to/return from a NATIVE function, IN/!IN priority made higher then for == / !=. Demo Worm added. 2019, Sep, 06. v0.96.9: Disable standalone ++/-- & NATIVE METHODs, Allow INIT for OBJECT fields, Add /$INTERPRETE (C#, only some non-visual apps). 2019, Sep, 19. v0.96.9a: fixes for the Interpreter, DATA[] in Delphi/FPC, RTTI in FPC. 2019, Sep, 20. ------------------------------------------------------------ v0.97.0: Fixes. Some internal refactoring. 2019, Sep, 27. v0.97.1: Warning if continuened lines are not separated. A lot of fixes. 2019, Oct, 6. v0.97.2: Interpreter/C# - visual apps. 2019, Oct, 19. v0.97.3: Interpreter /$TEST; Demo "15" game. 2019, Oct, 26. v0.97.4: Fixes in compiler; Demo "Lines" game. 2019, Oct, 29. v0.97.4a: Fixes. 2019, Oct, 30. v0.97.4b: Fixes. 2019, Nov, 1. v0.97.5: --/++ disabled for fields. Interpreters: visual apps work now. 2019, Nov, 8. v0.97.6: --/++ removed at all. Names|_multi|ple_parts_and||N|ames_synonims. 2019, Nov, 23. v0.97.7: Compiler AL-IV -> Java/Android, can run empty form android app. 2019, Nov, 29. v0.97.8: Some apps can work on Android, with simple visual components. 2019, Dec, 7. v0.97.9: Android: panning, layout, touch events. 2019, Dec, 15. --------------------------------------------------------------- v0.98.0: Android: input in {Paint_lines}, events value_change, selection_change. 2019, Dec, 21. v0.98.1: Android: console applications, Free Pascal: Linux 32/64 + Windows 32/64. 2020, Jan, 02. v0.98.2: some fixes. 2020, Jan, 4. v0.98.3: Android: Lines work. 2020, Jan, 7. v0.98.4: Android: OpenGL works (partially). 2020, Jan, 15. v0.98.5: Android: OpenGL works. 2020, Jan, 18. v0.98.6: A lot of fixes. Android: events in background thread. 2020, Jan, 30. v0.98.7: Android: better "console" apps, /$NOTHREADS option added. 2020, Feb, 02. v0.98.8: New edit/memo options Suggestions/Numbers/Phone/Caret. Fixed {Dialog}. 2020, Feb, 03. v0.98.9: Interpreter/C#: fixed. 2020, Feb, 04. --------------------------------------------------------------- v0.99.0: STRUCTURE added. 2020, Feb, 08. v0.99.1: STRUCTUREs have replaced RECORDs and OBJECTs in all the projects. 2020, Feb, 12. v0.99.2: RECORDs & OBJECTs removed and do not supported from now. 2020, Feb, 15. v0.99.3: -SCENARIO, re-execute only necessary tests + /$ALLTESTS. FRIENDS... --> IMPORT, FRIENDS... Fixed: leaks in Delphi + other fixes. 2020, Feb, 19. v0.99.4: STRUCTURE via records in Delphi/FPC. 2020, Feb, 21. v0.99.5: real modal {Dialog}, {Dialog_file}/#Android, {Ex_ class with IDE, ... 2020, Feb, 25. v0.99.6: Designer: multi-select, drag-drop with mouse; FPC/Linux - restored. 2020, Feb, 27. v0.99.7: Fixes, IDEAL4 made smaller. 2020, Mar, 1. v0.99.8: {Form}.new_column ...Nested. 2020, Mar, 3. v0.99.9: Compiling to GCC (MinGW/Windows, console appls only). 2020, Mar, 18. --------------------------------------------------------------- v1.0.0: Disable: side-effect functions on a single expression level. 2020, Mar, 20. v1.0.1: Compile to GCC (g++) under Linux (console apps only). 2020, Mar, 29. v1.0.2: Compile with CodeTyphon for Linux (Free Pascal). Draft Notes sub-project added. 2020, April, 3. v1.0.3: {Zlib} (C# & Delphi/KOL now only). 2020, April, 15. v1.0.4: Bitmap_from_clipboard, {Scene|2D}, Java/Android building fix. 2020, April, 21. v1.0.5: {Scene|2D| finished. Some fixes with STRUCTUREs. 2020, April, 22. v1.0.6: /[section] option, 'enum-items-with-hyphens', foo(), some fixes/improvements. 2020, May, 7. v1.0.7: {Console}, {Hardware}, executable size optimizations (mainly KOL, Delphi). 2020, May, 16. v1.0.8: {String_functions|_common}, + optiomizations, + fixes. 2020, May, 20. v1.0.9: Lesson1 (Windows, C#/Delphi/Android), Lesson2 (Linux). 2020, May, 22. v1.0.10: Lesson3 (Writing console application). 2020, May, 24. v1.0.11: Lesson4 (Writing GUI application - Hex view). 2020, May, 31. --------------------------------------------------------------- v1.1.0: FUN foo({INT,REAL...}... (type overloading functions); CASE ? {{1}}: ... {{2,3}}: ... ; (type depending code compiling); Any amount of parameters w/o BAD modifier (but at least from 4th in form Name=value); C#: gif load fix. 2020, June, 4. v1.1.1: {Socket}; Android: /$permission.NNNNNNNN; Gcc: /$L=libNNNNNNNN. 2020, June, 10. --------------------------------------------------------------- v1.2.0: FOR in array of STRUCTURE - disabled; memory leaks in Delphi - fixed; Syntax of CASE ? {{... - entire signature must be used: {{1/INT/INT}}; --------------------------------------------------------------- v1.3.0: [SYNTAX="PASCAL"], 2020, July, 3. v1.3.1: Glazomer (Pascal -> AL-IV). 2020, July, 15. v1.3.2: better Pascal synta[ converion. 2020, July, 19. v1.3.3: {Paint_table}, {Paint_tree}, COUNT(A[]), DELETE(A[], N), etc. 2020, July, 28. v1.3.4: Gcc fixes (STRUCTURE); etc. 2020, Aug, 4. v1.3.5: improvements: {Paint_turtle} nC, nA; {Console}.Fg/Bg, ... 2020, Aug, 14. v1.3.6: Help on classes; generating doks on sources++. 2020, Sep, 3. v1.3.7: {Array}, {Array_int}. 2020, Sep, 19. v1.3.8: Demo_projects\AL4View. 2020, Oct, 2. v1.3.9: {Gif}. 2020, Oct, 11. --------------------------------------------------------------- v1.4.0: {Gif}++, 1.ShiftL(n), 4th level CASE, (&|^)(+-*/%), LIKE...,BUT(x==>y)[*N][,...]. 2020, Oct, 21. v1.4.1: Visual apps w\Linux+FPC/Lazarus, IDE AL4 in Linux. 2020, Oct, 25. v1.4.2: Delphi objects leaks fix. FPC: BGRABitmap. 2020, Oct, 28. v1.4.3: {Bmp},{Jpeg},{Png},{Pcx},{Psd},{Tga},{Tiff},{Pcd},{WebP},{Xpm} VCL:/$RXGIF Delphi+FPC:/#DEFINE=... KOL/$ICON->form +fixes 2020, Nov, 4. v1.4.4: {Form}.Set_state, ...Set_o_frame, Linux:{Thread} + other fixes. 2020, Nov, 6. v1.4.5: fixes (STRUCTURE[]); IDE/Designer:{Paint_table}. 2020, Nov, 12. v1.4.6: fixes, /!platform. 2020, Nov, 21. v1.4.7: fixes, /warn80, {Paintbox}.Handle_tab, IDE/Designer, Class wizard improves. 2020, Nov, 29. v1.4.8: fixes, IDE fixes, {Paint_...}-fixes. CASE ? [ ]? ; - no warning. 2020, Dec, 8. v1.4.9: fixes (<< to r/only, C#:{Thread}, Dismiss Delphi:fixed arrays, {Paintbox}:s/bars visibility), Files_from_clipboard, Files_to_clipboard. 2020, Dec, 20. --------------------------------------------------------------- v1.5.0: fixes (compiling under Linux, {Thread} in FPC, ...) + DEBUG "abc"; == DEBUG: << "abc"; 2020, Dec, 27. v1.5.1: Apps Gallery: + Color Commander 2021, Jan, 7. v1.5.2: a lot of fixes ({Thread}, ...) + Color Commander 0.29. 2021, Jan, 12. v1.5.3: Color Commander 0.30 (+Find, +Previews), improves in AL-IV, IDE, etc. 2021, Jan, 17. v1.5.4: Color Commander 0.31 (+Preview zip/7z/rar/tar), {Form}: 1 key_down, Anchor in 'TOP'/'BOTTOM' column's controls like {Edit}/{Combo}... + others fixes/improves. 2021, Jan, 24. v1.5.5: CC 0.32, {Form}: {controls_layout}, IDE/Designer +events generationg CASEs +more, << autocomplete.Str. 2021, Jan, 28. v1.5.6: IDE: Ctrl+LMB=Ctrl+Enter; {Form}: nested columns changes + IDE/Designer. 2021, Feb, 8. v1.5.7a: IDE/Designer: multi-CONSTRUCT; compatibility with Lazarus 2.0.10 + FPC 3.2.0 + BGRABitmap 11.3.1. 2021, Feb, 16. --------------------------------------------------------------- v1.6.0: /$CCC (cache compiled code), FPC: BGRABITMAP_CANVAS. 2021, Mar, 6. v1.6.1: /$CCC fixes + IDE AL4 update + ColorCommander update. 2021, Mar, 15. v1.6.2: IDE imporoves: classes.index, resizable hints panel. top bookmarks,... 2021, Mar, 18. v1.6.3: IDE imporoves: Instant code, better hints on symbols typing. 2021, Mar, 21. v1.6.4: IDE imporoves: selection marks at right side. Sugar added (a.b, .c). 2021, Mar, 22. v1.6.5: Delphi/FPC: ==>/CONTINUE/BREAK jumping over PUSH problem fixed. Improves in IDE AL4, Draw Diagram, Zoomer 6. 2021, Mar, 24. v1.6.6: [FOREVER --> FOR, INFINITE], RotateL/RotateR(value,mantis), G++ compiling fixed. 2021, Mar, 26. v1.6.7: C#/Delphi/FPC. 2021, Mar, 28. v1.6.8: += Profiler. 2021, Mar, 31. v1.6.9: += {MSSQL}, {Postgre}, {MySQL}; C#: + /$x64. 2021, Apr, 2. ------------------------------------------------------------- v1.7.0: += s1 LIKE "A?b%"; Profiler_save_reset; 2021, Apr, 4. v1.7.1: FPC: Str (speed up on utf8 strings); 2021, Apr, 7. v1.7.1a: FPC+optimizations(INLINE) fixed; 2021, Apr, 8. v1.7.2: {Gif}+{Lzw} optimized; fixes: Delphi/FPC:UNROLL, C#:/$PROFILER; 2021, Apr, 11. v1.7.3: += {Long_int}.{long}; (A.x, .y+1); [ENCODING='ASCII']; +fixes; 2021, Apr, 15. v1.7.4: fixes in IDE/Designer, in Optimizations (INLINE); 2021, Apr, 16. v1.7.5: fixes in compiler, + splitter column; 2021, Apr, 18. v1.7.6: fixes in Delphi+IDE-Designer/{Form}, {Separator}, +=Set_default_font; 2021, Apr, 19. v1.7.7: connect MSSQL from Linux; {Form}.{controls_layout} += 'CONTROLS_TOP_TO_BOTTOM', 'CONTROLS_VERTICAL_2|_COLUMNS'; 2021, Apr, 23. v1.7.8: {DB}/SQL: nested SELECT + nocase + rec << db + fixes ; 2021, Apr, 27 v1.7.9: {DB}/SQL: struc << Db, BY TABLE T; {Paint_tree} speed up; {Control} Anchor not only last ; 2021, May, 2 ------------------------------------------------------------- v1.8.0: fixes; 2021, May, 13 v1.8.1: fixes; 2021, May, 19 v1.8.2: fixes; sql: { x.y.z[i] }; foo(x) << ...; {Paint_table}.Resize_columns; ... 2021, May, 26 v1.8.3: fixes. 2021, June, 16 v1.8.4: +Compatibility with Delphi5, Delphi6. 2021, June, 29 v1.8.5: +Compatibility with Delphi3. 2021, July, 21 v1.8.6: Interpreter (C#) restored (partially). 2021, July, 22 v1.8.7: Fixes with optimizations + overloaded functions. 2021, August, 27 v1.8.8: Fixes (Delphi/KOL, Android, {Form} columns margins). 2021, September, 9 v1.8.9: Fixes (optimizations/overloaded, {Form}, x << y). 2021, September, 13 v1.8.9a: Fixes (overloaded functions). 2021, September, 14 v1.8.9b: Fixes ({Memory_stream}.Write_byte). 2021, September, 15 v1.8.9c: Fixes: IDE/Designer: {Date_picker}, C#/{Form}.shown --> resized. 2021, September, 16. --------------------------------------------------------------- v1.9.0: Small changes in IDE, {Label}, {Button} auto-size. 2021, September, 21. v1.9.1: C#/{File}.Exists, C#/{Process} changes. 2021, September, 23. v1.9.2: SQL INSERT/UPDATE ---------- 'text' in set list; Delphi/VCL: bool = INT field, not AUTOSCROLL_FORMS by default; fixes in {Date_picker} and (Delphi/FPC) buttons AutoSize. 2021, September, 26. v1.9.3: Fixes in {Paint_table} (header) + {DB}.Remove_after, N'national symbols' in SQL. 2021, September, 28. v1.9.4: SQL: SELECT (...) FROM ...; x BETWEEN y, AND z; --- 'text' in select list + JOINs. 2021, September, 30. v1.9.5: fixes in horizontal scroll ({Paint_table}, IDE/Designer). 2021, October, 2. v1.9.6: fixes ({DB}, {Date_picker}, {Process}, IDE). 2021, October, 7. v1.9.7: fixes ({DB}, C#[x TO y], y >= Count). 2021, October, 14. v1.9.8: fixes (Compiler, {Paint_table}, {Paintbox}, ...). 2021, October, 22. ---------------------------------------------------------------- v2.0.0: FOR x ENUM fun, DONE, SILENT: ... ; x < y < z, a <> b, i INDEXING (types). 2021, October, 31. v2.0.1: ORDER BY one_field, {Paint_table}.Hidden_col, {Form}: lock nested clicks, {Edit} only numbers, IDE/Designer improvements; + fixes (Delphi/FPC). 2021, November, 7. v2.0.2: {Paint_tree}++, {Paint_turtle}++, DELETE ALL, fixes: Android/{AL4_form}, Delphi/{Paintbox}, SQL/----'text', a+b<c_d<e+f. 2021, November, 14. v2.0.3: IDE/Designer: {Form}:Min_width, Min_height,{Paint_table}:Multi_select, Columns, {Form}: 'LEFT'/'RIGHT' only columns ==> width/N. +fixes. 2021, November, 21. v2.0.4: IDE/Designer: multi-select controls + edit all selected props, fixed duplicating groups; new_column + align labels right; FPC: default/cancel buttons fix; other fixes. 2021, November, 27. v2.0.5: {DB}.{id}, {DB}.Transaction; Nulls==>STR; INSERT ... BY structure, BUT ignore_fields[]; IDE/Designer: draw menus. 2021, December, 3. v2.0.6: {Form_common}, {Dialog_common}, /max_desc, Designer+=add menu items on Events\menu_item menu. +fixes. 2021, December, 12. ---------------------------------------------------------------- v2.1: fixes: Delphi BYTE[].Insert STR[].Find, .Contains, << "X=" X (if X.Str not applicable), FPC: compile in Linux; {Form}.timer : t.Set_active(false) allows click; {Control}.Click; {Form}.enter, .leave etc. ... 2021, December, 18. v2.1.1: fixes: {Paint_tree}, {Table}, {Form}, Ide/Designer, {DB}; add: {Separator}.Set_separator_column_target, ... + restore compiling for Android. 2021, December, 26. v2.1.2: fixed: printing (Delphi KOL/VCL, FPC, C#). 2021, December, 29. ---------------------------------------------------------------- v2.2: {Date_time}: DT -> dt, {Stream}: REAL -> {Long_int}.{long}, DB: += EXISTS/NOT EXISTS, STRUCTURE {x} LIKE {y} ..., dstruc, BUT(...) = sstruc, ... 2022, Jan, 3. v2.2.1: {Report} += Cell_r/Cell_d; IDE/AL4 -> {Date_time}/{Stream}; C#/{DB} ok; 2022, Jan, 9. v2.2.2: {DB}: += [field], Transaction_dummy, Row_count; fix Remove_not_allowed*N, ---'cond?' in set list of UPDATE; fix C#/{Form}.message. 2022, Jan, 20. v2.2.3: C#/FPC += WebP; FPC: linux fixed; updated apps Zoomer, ColorCommander. 2022, Jan, 30. v2.2.4: {OpenGL}.Width, Height; {Paint_tab}: mouse_down, mouse_up. 2022, Feb, 7. v2.2.5: fixed: negative CONST. 2022, Feb, 20. v2.2.6: fix: nested events handling (visual library). 2022, Mar, 7. v2.2.7: C#fix: {Dialog}; {Paint_table}:select by drag; IDE/Designer:Events|menu_item += CASE+menu aliases. 2022, Mar, 13. v2.2.8: fix pressing arrow keys in {Paint_lines}++, SPACE/ENTER on buttons. 2022, Mar, 22. v2.2.8a:{Form_common}+=highight focused controls/labels before. 2022, Mar, 23. v2.2.9: fixes in SQL, Delphi/FPC/KOL, C#, {Form}, {Paint_table}. 2022, Apr, 7. -------------------------------------------------------------------- v2.3.0: {DB}.Commit==>BOOL, _=.Commit_anyway; /warn -index, -style; +fixes. 2022, Apr, 21. v2.3.1: fixes: C#/{NATIVE_Stream_on_C_Stream}, {Icon}.Load, {Form}.sender restore after event handle. 2022, Apr, 30. v2.3.2: improvements in apps: Draw_diagram, Clock. Fix in {Paint_turtle}. 2022, May, 10. v2.3.3: small improvements and fixes. 2022, May, 18. v2.3.4: fix: clicks after timer.Set_active(FALSE) in the timer event handler. 2022, June, 2. v2.3.5: fixes: {DB}.Count_fields, .Field(i) on empty result set, checking of recursion of a function, etc. 2022, June, 7. v2.3.6: FOR loop on arrays of STRUCTUREs implemented, +small changes with {DB} << UPDATE ... + side effects checks. 2022, June, 17. v2.3.7: {Progress}.Can_anchor_bottom; C#/{Dialog} resize on second show; IDE/AL4 improves. 2022, June, 24. v2.3.8: IDE/AL4 improvements; ColorCommander improvements. 2022, July, 12. v2.3.9: {Form}.Label_width < -2 support; C#: prevent Windows shutdown fixed; Delphi/KOL + $ICON=; C#: incorrect if( on complex conditions in CASEs. 2022, July, 21. -------------------------------------------------------------------- v2.4.0: fixes: C#-prevent system shutdown because of 'closing'==>'DECLINE'; FPC: modal forms/messages problems; IDE: speed up. 2022, July, 28. v2.4.1: FOR a IN struct[]: a.Field = ...; A[].Delete(.Count-1); fixes: Linux+{Form}.Show(focus), C#: beeping on text fields, FPC + {Form}.Width + .Height, .Bounds, FPC: AV (key_press, form column font set). 2022, August, 8. v2.4.2: IDE AL4: fixes and improves (editing html-files), +Tools\Html_tools app. 2022, August, 19. -------------------------------------------------------------------- v2.4.3: IDE AL4, Color Commander, Zoomer 6, Clock: improves. 2022, August, 30. v2.4.4: Fixes: {File_path}.Rename, C#.NONE, FP/{Form}.Set_size, Delphi/FOR+op. 2022, September, 6. v2.4.5: Fixes: C#/Delphi - assignment the resulting object of a function; KOL - code generating. Doks updates. 2022, September, 14. v2.4.6: DelphiVCL...(.. += {DB} via kolodbc.pas; ..All_classes.pas-=lines (fix debugger); +fixes: ..{Dialog}.ready; ..{Canvas}.Offset/Rotate/Scale); + Delphi/C#: control STRUCTUREs lifetime changed. 2022, September, 20. v2.4.6a: C#/Delphi fix: Struc[i] = A_structure. 2022, September, 21. v2.4.7: {Printer}+{Report}: Landscape fixed++; Delphi:s=struc_array[i] fix. 2022, September, 30. v2.4.8: Fixes(compiler- C#/Delphi); IDE:hints on {type}(...). 2022, October, 12. v2.4.9: Fix: {Report}.Generate (if Canvas==NONE); Report Editor optimizations. 2022, October, 19. v2.4.9a: Fixes in {Report}, Report editor (Scale_down, Resize, Resize_to_fit). Improves in IDE/Report editor, Form designer. 2022, October, 20. -------------------------------------------------------------------- v2.5.0: Fixes in {Report}+{Printer}; Compiler: checking imported classes for exact names matching. 2022, November, 1. v2.5.1: Small fixes in code compiling (short version of function, LIKE in structures, etc.). 2022, November, 11. v2.5.2: Fixes: short function+CLONE; constant arrays + FOR IN const array[]. 2022, November, 24. v2.5.3: + section [Common] in options; fixes: Report leaks, named constants in expressions, {Paint_table}.Mouse_double_click logical mouse release. 2022, November, 20. -------------------------------------------------------------------- v2.6.0: C#, Delphi: all INT values are int64 by default + /int32 option to revert all back. 2022, December, 3. v2.6.0a: C#: some fixes for INT64. 2022, December, 4. v2.6.0b: Documentation updated + small fixes. 2022, December, 5. v2.6.1: +single line CASE ... ELSE ... ; Better skip {{ }}; Allow spaces between {{. 2022, December, 11. -------------------------------------------------------------------- v2.7.0: += LIMIT TIME/LOOPS/FUN (n) [MSEC/SEC/MIN/HOURS/DAYS] : ... ; 2022, December, 28. v2.7.1: C# += fix Red-x, KOL. 2022, December, 29. v2.7.2: Fixes: {Paint_lines}, C#+{NATIVE_DB|_ODBC...}, Delphi/KOL+/$NOEXCEPTIONS. 2023, Jan, 13. v2.7.3: Fixes: C#/{AL4_form}(events), Delphi/FPC+Applicaion_name, FPC/Win:utf8=cp65002. 2023, Jan, 20. v2.7.4: Fixes: {Bitmap}.Stretch_draw + {Printer} + {Report}. 2023, Feb, 15. v2.7.5: {DB} errors output in debug mode + Level_trace_stack; {System_functions}.Trace_blocks. 2023, Mar, 26. v2.7.6: Fix working keys in modal dialogs (C#/Delphi). 2023, Apr, 23. v2.7.7: Fixes: FPC+Bgrabitmap...+{Bitmap_direct}.Lock/.Unlock, ...+{Bitmap}.To_clipboard. 2023, May, 1. v2.7.8: Fixes: C# code generation (possible objects leak!). 2023, May, 2. v2.7.9: Fixes: Delphi/FPC (Oem_to_string, Rename/dirs, {Form}.DESTRUCT: Any_change called, ambig. call to Clone generated); IDE/Designer: quotations in text value, drawing ({Memo}, control fonts). IDE: faster drawing. "Quoted lines">80chars - only warnings. 2023, May, 16. -------------------------------------------------------------------- v2.8.0: " " .AAA now != " ".AAA; Color Commander 0.75. 2023, Jun, 13. v2.8.1: Delphi/FPC compiling speed improved a bit, +some fixes. 2023, Jun, 26. v2.8.2: allow break lines before '.foo...'; /src path\*; --IMPORT {ancestors}; +{Screen_caller}. 2023, Jul, 11. v2.8.3: fixes: C# Show_modal, Delphi/FPC {Process}.Ended, .Terminate, {Dialog}.Show. /src ...\* ignore "compiled" dirs. 2023, Jul, 19. v2.8.4: fixed: Delphi/FPC {Text_file}.Load. 2023, Jul, 21. v2.8.5: compiler += search similar names for error messages; IDE += jump to {classes} from view //[diagram:...]; {Form_common}: modal dialog small fix; AltGr=Alt+Ctrl --> Alt only in key_press. 2023, Jul, 31. v2.8.6: {Screen}.Custom_messages, fixes, improvements. 2023, Aug, 4. -------------------------------------------------------------------- v2.9: New syntax: STR.[index]; C#+=/AL4FRAMEWORK=x.y.z; +{Calendar}. 2023, Aug, 25. v2.9.1: C#: BIG FIX (GetDC); ... 2023, Sep, 13. v2.9.2: C#fix: Stretch_draw; Diagram-draw+IDE: jumps by //xxx.dia. ... 2023, Sep, 22. v2.9.3: METHOD/OVERRIDE += ,OPTIONAL; {Form}/Designer += Auto_height. 2023, Oct, 1. v2.9.4: Delphi/C#+{Form},{Button} = some improvements/fixes. 2023, Oct, 22. --------------------------------------------------------- v3.0.0: IMPORT += {{nnnn}} via nnnn.import. 2023, Nov, 1. v3.0.1: FPC+{Form} += 3Dborders around columns by default. 2023, Nov, 6. v3.0.2: IDE/Designer: CONSTRUCT += PUSH in_construct=TRUE:...; 2023, Nov, 11. v3.0.3: fixes: C#/Oem_to_string, {Stream}.Get_line, {Form}: align in 2-columns mode; 2023, Nov, 20. --------------------------------------------------------------------- v3.1.0: IDE += button Run/F8, += window to browse Compiler errors/warnings. 2023, Nov, 30. v3.2.a : IDE += Debugger (Shift-F5...F10) + Delphi/FPC (/$DEBUG) = step-by-step debugging in IDEAL4. 2023, Dec, 14. v3.2.1: IDE/Debugger += many ipmrovements/fixes; {Form}.Adjust_controls: fix labels pos/size. 2023, Dec, 21. v3.2.2: IDE/Debugger (Ctrl-F8 or [>>] - run w/o debug); {Form}.Adjust_controls + {AL4_form}.Get_label_desired_width ==> better placing labels; ColorCat, DraftNotes, Clock updated. 2023, Dec, 30. v3.2.3: IDE: searching open/close tag (edit html); ColorCat. 2024, Jan, 8. v3.2.4: FIX:FPC+Linux, IDE/Show errors localized; Compiler+=%AL4lang% (EN/RU) += [SYNTAX=SEAL]; 2024, Jan, 17. v3.2.5: IDE+=SEAL; fixes in FPC+Win, C+{File_stream}+{File_path}.Exists for \\server\file. 2024, Jan, 24. v3.2.6: fixes: Linux+Text_to_clipboard, C#+Exists,Dir_exists for \\sever\file. 2024, Jan, 28. --------------------------------------------------------- v3.3: += _; Fix: FPC+{String_functions}.Starting (UTF8); 2024, Feb, 5. v3.3.1: Platform_info += Win10; fix Show_application_button, resized/moved for frameless windows. 2024, Feb, 11. v3.3.2: += embedded Byte(INT)==>BYTE, fixes: C#+{Alien_windows},{OpenGL}; FPC+{OpenAL}; {String_functions}.From_hex; Delphi/FPC+Array[x TO y]+FOR loops. 2024, Feb, 18. v3.3.3: Default framwork 3.5-->4.8; C#: += /$FRAMEEWORK=x.y. 2024, Feb, 25. v3.3.4: {Form|+=.Set_form_progress; {Paint_table}.!Multiselect did not work on mouse drag over; 2024, Mar, 4. v3.3.5: empty branch in CASE == error; space + . in expressions does not change anchor object; {Sound} += Play_sound; {System_functions} += Play_audiofile. 2024, Mar, 16. v3.3.6: {Form}+=inner events queue; Delphi/FPC: fix assigning rreult of a function to an object variable. 2024-Mar-19. v3.3.7: {Paint_tabs}: better draw+clicks; {Dir_dialog}.Select_dir fix sender_; Delphi+{File_path}.Recycle_file fix; Delphi+{System_functions}.Allocate_bytes fix. 2024-Mar-31. v.3.3.8: Fixes: KOL {Form}.Close; {Canvas}.Erase; FPC+Linux: compiling, {Form}.mouse_double_click. 2024-Apr-8. --------------------------------------------------------- v3.4: Recompiling time shortened a lot (C#, Delphi/FPC). 2024, Apr, 17. v3.4.1. += /op L (local optimizations only). 2024, Apr, 21. v3.4.2. 1 empty line after long line of code. -= fixes on warnings, MS VS, {Dialog_file}--> sender_ changed after call to Select_file. 2024, May, 1. v3.4.3. C# += /diag[nostics] [{class1},code1,...] options to log suppressed problems in diagnostics.log. 2024, August, 5. --------------------------------------------------------- v4.0.0: += block brackets { }, <-- -->, BEGIN END, begin end. All keywords are in UPPERCASE and lowercose, too. &&==AND, ||==OR, !IN==not in. 2024, Sep, 7. v4.1.0: += z \fun\ y , += ([[...[ ... ]...]]). 2024, Sep, 16. v4.1.1: <------ ------> fixed; Linux+FPC compile fixed. 2024, Oct, 4. (🛰️)≡ [1957] --------------------------------------------------------- v4.2.0: -= SEAL, -= translation; += PRIORITY [LIKE] (n), += A.!Equal(B), A \!Equal\ B etc. 2024, Oct, 16. --------------------------------------------------------- v4.3.0: -= BOOL (--> ENUM {bool}), -= BYTE (--> ENUM {byte}); += {Basic_types} (auto-imported). 2024, Oct, 20. v4.3.1: -=CLASS ...,BYTES; fixes: {bool}.Name; CASE BYTE ? ['01'...; INDEXING + array[x|y]; {Form}+{Label}+adjust.;... . 2024, Oct, 30. v4.3.2: fix: Delphi + Array[] of {enum}/{byte}; 2024, Nov, 1. v4.3.3: C# += %CSC_PATH%, {Form}.Bring_to_front != activate, fix: compiling CASE ... { ... ==> }, INLINE optimization (RESULT was not initialized), 2024, Nov, 11. --------------------------------------------------------- v4.4.0: +=LIKE CLASS {...}, BUT...; +=BUT ( )*?; +=C#/{OpenAL} fixes; C#+{Form}.Ask:fix buttons. 2024, Nov, 17. v4.4.1: += A.!Field_B; fixed: IDE/Designer: duplicating controls, recognizing controls. 2024, Nov, 27. v4.4.2: += {Form}.Set_icon({Bitmap}), +=init {enum} fileds; fix: Delphi(loop on fixed Array[*]), KOL:Get_canvas. 2024, Dec, 8. v4.4.3: += $==>; += {Form}.menu_sender_alias; += field,PUBLIC; {Dialog_file} += Multiselect; {Form_common} += Set_all_forms_foreground. 2024, Dec, 22. v4.4.4: -= bugs [fun().arr[i]=...; C#: [].Remove(obj), {File_dialog}/save; FPC: RESULT.[i]="x"; wrong error several .. in statement]; {Form}.{controls_layout} += 'CONTROLS_MANUAL'; 2025, Jan, 12. --------------------------------------------------------- v4.5: Protection of THIS changed (Delphi/C#). Changes in {Form}.ask, message (colors), Set_position (monitor selection), +=Set_popup_point, -=column borders (Delphi); ... 2025, Jan, 26. v4.5.1: Delphi: += /$NOJMP, += use asm jmp in all_classes.pas. 2025, Feb, 9. --------------------------------------------------------- v5.0: += LOCAL: ... ; += NEXT i += expr; += {Memory_mapping}; += {File_stream}.Anyway_read_write_file_stream(...). 2025, Feb, 20. v5.0.1: +- {Memory_stream|_fast}, old one renamed to {Memory_stream_contig}; += {Scan_cat}; += {List_str}. 2025, Mar, 16. v5.0.2: fixed: compiling for linux (FPC). 2025, Mar, 19. v5.0.3: fixed: Lzw, Gif, linux compiling. 2025, May, 1. v5.0.4: fixed: C#/FOR a IN A[]: ... NEXT a.INDEX += n ; 2025, May 14. v5.0.5: added: {In_file_config} class. 2025, May 23. v5.0.6: fixed: {In_file_config}, Clovk+=lang indic, by ScrollLock. 2025, June 23. v5.0.7: small fixes, +{Form}.Restore_bounds if w,h,l,t - restore as is. 2025, July 11.
AL-IV Files
ALFOUR Programming language. Simple, safe, power, multi-platform.
Brought to you by:
vl-kladov