flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
Greg_M 07 Jun 2025, 23:04
What does the term "Assembly-Like" refer to in "CALM"?
Does it refer to fasmg language as "assembly-like"? |
|||
![]() |
|
Greg_M 08 Jun 2025, 03:42
OK, thanks much. I'm studying.
|
|||
![]() |
|
bitRAKE 08 Jun 2025, 05:17
I'm more of a hands on type of learner - I like to solve problems with the language to increase my understanding. Much of that discovery has made it on to this board since the very introduction of fasmg. It's my hope that those examples will spur some insight or inspiration in the learning of others. (Regardless of the ill-conceived notions or errors made along the way.)
|
|||
![]() |
|
Greg_M 08 Jun 2025, 07:48
bitRAKE wrote: I'm more of a hands on type of learner - I like to solve problems with the language to increase my understanding. I understand and agree 100%. I had already installed fasm2/fasmg per the recommendation and was looking at calminstruction and then referred back to the document at that point. E.g. Just as I was referring to document to help understand calminstruction, from the syntax documentation, e.g. name, number, labels, namespaces, I could see that using them in code would clarify. Programming languages are often influenced by other languages. Perhaps calminstruction has some commonality to F# "inline". |
|||
![]() |
|
bitRAKE 08 Jun 2025, 08:46
Oddly enough, I was thinking about this a few days ago - wondering if fasm was influenced by Tcl - just a passing thought, really. There is just so much novelty in fasm[g]. How terse the match directive is - often seems magical. Sure, lots of languages have string matching, but it's often more work. The abstractions are well suited to assembly language construction and use. Complex/strict syntax can be created/enforced - allowing high-level language construction. Can always digress to processing the syntax bytes (a la virtual).
|
|||
![]() |
|
Tomasz Grysztar 08 Jun 2025, 10:22
The main reason for calling them "assembly-like" was the way the control flow is structured in the CALM sub-language. While the classic language of fasmg's macros is structured with nestable control blocks like IF / END IF or REPEAT / END REPEAT, CALM is different. There are only jumps and conditional jumps, and implementing any algorithm this way is going to have a flow that is assembly-like. Also commands like COMPUTE or ARRANGE have syntax intentionally designed to resemble x86 instructions, with destination being the first argument.
|
|||
![]() |
|
Tomasz Grysztar 08 Jun 2025, 12:47
bitRAKE wrote: Oddly enough, I was thinking about this a few days ago - wondering if fasm was influenced by Tcl - just a passing thought, really. |
|||
![]() |
|
Greg_M 08 Jun 2025, 15:30
Tomasz Grysztar wrote: ..."assembly-like" ... control flow ... Thank you. Tomasz Grysztar wrote: ... classic language of fasmg's macros... Are classic macros considered deprecated? |
|||
![]() |
|
Tomasz Grysztar 08 Jun 2025, 16:03
Greg_M wrote: Are classic macros considered deprecated? |
|||
![]() |
|
Greg_M 08 Jun 2025, 16:22
Thank you.
|
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.