branch: externals/beardbolt
commit 47e9fa1f5945d0f10e7dacbd929936a444bf3459
Author: Jay Kamat <[email protected]>
Commit: Jay Kamat <[email protected]>
Update README
---
README.org | 28 ++++++++++++++++++----------
rmsbolt.el | 4 ++--
starters/rmsbolt.pony | 2 +-
3 files changed, 21 insertions(+), 13 deletions(-)
diff --git a/README.org b/README.org
index b834d2c1b6..ead60725ce 100644
--- a/README.org
+++ b/README.org
@@ -12,7 +12,7 @@ versa. It supports more types of languages than any previous
tool of it's kind.
- Much more flexible and powerful
- Supports dissasembling to bytecode as well as assembly
- Supports many languages that godbolt does not support, such as python,
- common lisp, ocaml, and java.
+ common lisp, ocaml, java, and pony.
- No more sending your code to any server
- Much faster turnaround time from writing code to seeing and interacting with
disassembly
- 100% usable without the mouse.
@@ -54,10 +54,12 @@ though.
#+END_SRC
* Running
- Once installed, use the ~rmsbolt-starter~ command to generate starter files,
or
- enable ~rmsbolt-mode~ in a supported language. Then run ~rmsbolt-compile~ or
- use the default ~C-c C-c~ binding. After the first run, the buffer should
- automatically update.
+Once installed, use the ~rmsbolt-starter~ command to generate starter files, or
+enable ~rmsbolt-mode~ in a supported language. Then run ~rmsbolt-compile~ or
+use the default ~C-c C-c~ binding. After the first run, the buffer should
+automatically update.
+
+Language-specific quirks are listed in the demos section currently.
* Demos
** C/C++
@@ -97,15 +99,21 @@ moment.
[[https://i.imgur.com/KkWEMMj.gif][https://i.imgur.com/KkWEMMj.gif]]
-** Common Lisp
+** Pony
-No support for source->asm matching or filtering.
+Filtering on pony is not as effective as pony asm includes references to
+machine-generated functions. This means the output will be slower to generate,
+similar to disassembly in other languages. The pony file being viewed will be
+copied into it's own directory, making it much harder to view non-toy examples.
-[[https://i.imgur.com/36aNVvf.gif][https://i.imgur.com/36aNVvf.gif]]
+[[https://i.imgur.com/8kd6kkJ.gif][https://i.imgur.com/8kd6kkJ.gif]]
-** Pony
+** Common Lisp
-Parses the output of ~ponyc -r=asm~ without good source->asm matching or
filtering.
+No support for source->asm matching or filtering. Only ~sbcl~ and ~clisp~
+supported at the moment, with ~sbcl~ giving much better results.
+
+[[https://i.imgur.com/36aNVvf.gif][https://i.imgur.com/36aNVvf.gif]]
* Adding a Language
diff --git a/rmsbolt.el b/rmsbolt.el
index eab2e3bd13..4908b9306c 100644
--- a/rmsbolt.el
+++ b/rmsbolt.el
@@ -25,8 +25,8 @@
;; RMSBolt is a package to provide assembly or bytecode output for a source
;; code input file.
;;
-;; It currently supports: C/C++, OCaml, Haskell, Python, Java, and (limited)
-;; Common Lisp and Pony.
+;; It currently supports: C/C++, OCaml, Haskell, Python, Java, Pony, and
+;; (limited) Common Lisp.
;;
;; Adding support for more languages, if they have an easy manual compilation
;; path from source->assembly/bytecode with debug information, should be much
diff --git a/starters/rmsbolt.pony b/starters/rmsbolt.pony
index 088921f9cb..2ce9207a3d 100644
--- a/starters/rmsbolt.pony
+++ b/starters/rmsbolt.pony
@@ -1,6 +1,6 @@
// pony rmsbolt starter file
-// Passing '--debug' is reccomended to pony because without it LOC hints are
optimized out
+// Passing '--debug' is recommended to pony because without it LOC hints are
optimized out
// Local Variables:
// rmsbolt-command: "ponyc --debug"