Not logged in.  Login/Logout/Register | List snippets | | Create snippet | Upload image | Upload data

62
LINES

< > BotCompany Repo | #1004044 // JavaX Goodies

Document

* Download: <a href="http://tinybrain.de/x30.jar">PC</a>, <a href="http://tinybrain.de/javax.apk">Android</a>
* <b>All Java code is also JavaX code.</b> No learning required, only if you want to use our awesome extensions.
* Everything is super-short (if you want that). No boilerplate, ever.
* All code versioned automatically on our server [see <a target="_blank" href="http://snippets.tinybrain.de">code database</a>]
* JavaX works on Windows, Linux, Mac OS X and Android.
* JavaX is FREE and OPEN SOURCE.
* No installation required. Just <a href="http://tinybrain.de/x30.jar">start the jar file</a>.
* Compatible with any Java version
* Every program is downloaded and run when user wants it.
* <b>Stefan just knows what Java programmers want</b> (Java adopter since 1998 and leading member of the Java Operating System Project)
* We are currently building <i>actual A.I.</i> in JavaX
* 1500+ <a href="http://tinybrain.de/761">incredibly useful standard functions with speaking names</a>
* Despite their power, JavaX programs are typically small, baked into a single .java file (<200K) and require no libraries.
* Compiling a JavaX program into Java usually takes ~2 seconds.
* Loading code dynamically from the server is a one-liner
    <pre>Class dynamicallyLoadedClass = hotwire("#1004022");</pre>
* Short syntax for starting threads
    <pre>thread "Think Thread" { think(); }</pre>
* Reflection made REALLY easy
    <pre>call(someObject, "add", someOtherObject);</pre>
    <pre>set(someObject, "variable", 123);</pre>
* <a href="http://tinybrain.de/1003674">Many utility classes</a>
* A proper comparison function
    <pre>if (eq(a, b)) { ... }</pre>
* MultiMap, MultiSet
* JavaX code is PORTABLE between Java and Android (where at all possible)
* Running your code on Android requires NO new app
* Run your own code on Android without paying $25 for Play Store registration!
* ANY Java library can be included & shipped with your program (they're automatically downloaded on demand)
* Ultra-short syntax for list handling (L = List, S = String)
    <pre>L<S> list = litlist("a", "b", "c");</pre>
* Class loaders are now tamed! Everything is transparent (exactly one class loader per program).
* Importing and exporting objects between class loaders is a one-liner
    <pre>quickExport(foreignClass, myObject)</pre>
    <pre>quickImport(foreignObject)</pre>
* Every program automatically gets a graphical console (PRINT statements work everywhere again!)
* You can build your own translator to extend the language. It's easy too.
* Adding keywords to the language can be a one-liner!
    <pre>tok = replaceKeywordBlock(tok, "myNewKeyword", ..., ...);</pre>
* Built-in tokenizer for Java and JavaX
    <pre>L<S> tokens = javaTok("class A {}");</pre>
* Making a web server is a one-liner
    <pre>serveHttp(8080);</pre>
* Your web server will run on your Android phone no problem!
* Shortest code ever for making GUIs
    <pre>showFrame(vgrid(new JTextArea, new JTextArea));</pre>
* Showing a JTable? One line.
    <pre>showTable(ll(litorderedmap("Name", "John", "Last Name", "The Master")));</pre>
* Including a pretty Look&Feel ("Substance") is a one-liner
    <pre>substance();</pre>
* Speech synthesis is a one-liner
    <pre>kevin("This is Kevin, a FreeTTS voice.");  // Desktop</pre>
    <pre>androidSayInGerman("Hallo Android User!"); // Android</pre>
* Communication between virtual machines over TCP/IP is a breeze. You can use simple matching functions for natural language. More one-liners!
    <pre>p { makeBot("Listener."); }
    <pre>answer { if "are you there?" ret "I'm here"; }</pre>
    <pre>/* client side: */ send("Listener", "are you there");</pre>
* Lambdas
    <pre>func(S s) { s + s }</pre>
* Standard list functions: map, collect, filter, ...
* <a href="https://medium.com/@stefanreich/java-can-have-coroutines-e469dc91c15a">Coroutines are possible</a>
* And so much more!!

download  show line numbers   

Travelled to 13 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, gwrvuhgaqvyk, ishqpsrjomds, jtubtzbbkimh, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt

No comments. add comment

Snippet ID: #1004044
Snippet name: JavaX Goodies
Eternal ID of this version: #1004044/2
Text MD5: 9fdbacaad55f67f7e1fa7eaa0f4ee8b0
Author: stefan
Category: javax
Type: Document
Public (visible to everyone): Yes
Archived (hidden from active list): No
Created/modified: 2017-10-01 15:46:37
Source code size: 3966 bytes / 62 lines
Pitched / IR pitched: No / No
Views / Downloads: 381 / 9553
Version history: 1 change(s)
Referenced in: [show references]