Strategies - add #7 and commentary, emphasize options of interest

This commit is contained in:
contrapunctus 2021-12-19 15:05:11 +05:30
parent edb711e727
commit 28855fa891
1 changed files with 12 additions and 8 deletions

View File

@ -8,19 +8,23 @@
* Strategies
1. native Common Lisp library
+ much work, from what I hear
+ From what I hear, it's a lot of work to write an XMPP client library, even if using TLS, XML, and DNS libraries.
+ EQL5-Android client for Android, iOS, and desktop
+ McCLIM for desktop, web (Broadway), Emacs ([[http://twitter.com/lukego/status/1387747747864973312][CLIME]]), and TUI (ncurses backend)
- most of those backends are WIP, and I'm not aware of McCLIM having Windows or Wayland support...
+ McCLIM client for desktop, web (Broadway), Emacs ([[http://twitter.com/lukego/status/1387747747864973312][CLIME]]), and TUI (ncurses backend)
- Most of those backends are WIP, and I'm not aware of McCLIM having Windows or Wayland support...
+ An isomorphic web framework like CLOG may also be an option.
2. [C] CFFI + [[https://github.com/strophe/libstrophe][libstrophe]]
+ libstrophe calls itself "minimalist"...might be about as much work as #1 to write the required features
3. [Python] [[https://github.com/pinterface/burgled-batteries][burgled-batteries]]/[[https://github.com/bendudson/py4cl][py4cl]]/[[https://github.com/metawilm/cl-python][clpython]] + slixmpp/aioxmpp/nbxmpp
+ Will this work on Android and iOS?
4. (C++) Clasp/ECL + Swiften
3. [Python] [[https://github.com/pinterface/burgled-batteries][burgled-batteries]]/[[https://github.com/bendudson/py4cl][py4cl]]/[[https://github.com/metawilm/cl-python][cl-python]] + slixmpp/aioxmpp/nbxmpp
* Will this work on Android and iOS?
+ *cl-python + EQL5-Android* might. cl-python runs Python in Lisp. Might not be performant, but it might work.
4. [C++] [[https://github.com/clasp-developers/clasp][Clasp]]/ECL + Swiften
+ Will this work on Android and iOS?
5. [Java] ABCL + Smack
+ Will this work on Android and iOS? ABCL does not yet have Dalvik/ART support...
6. [JavaScript] Parenscript + strophe.js/xmpp.js + ReactNative
* Will this work on Android and iOS? ABCL does not yet have Dalvik/ART support...
6. *[JavaScript] Parenscript + strophe.js/xmpp.js + ReactNative*
* I haven't heard of anyone using Parenscript + ReactNative to make cross-platform applications...try making a "hello world" cross-platform application?
7. Make separate desktop-only learning project using #3 or #5. Later, take up #1.
* Resources
1. [[https://xmpp.org/rfcs/rfc6120.html][Extensible Messaging and Presence Protocol (XMPP): Core]]