mirror of
https://github.com/soconnor0919/eceg431.git
synced 2025-12-11 06:34:43 -05:00
22 lines
1.5 KiB
Plaintext
22 lines
1.5 KiB
Plaintext
What points were the most clear to you? (List up to 3)
|
||
|
||
- The concept of a VM (I work with Java a ton, this made sense)
|
||
- Two-tiered architecture (translation between code and byte code, and another between byte code to machine language)
|
||
- Push and pop, the stack, eventually a heap (I guess not?)
|
||
Grading comment:
|
||
What points were the muddiest and you'd like to talk more about? (List up to 3)
|
||
|
||
- Why are we using a VM here? Isn’t that inefficient? Shouldn’t we be emulating something C-like instead of Java-like? Java is sloooow.
|
||
- Again, as I read more- why a VM? This is just an extra layer! We’re not going for cross compatibility here, this is a weak machine!
|
||
Grading comment:
|
||
Reflect on what you read.
|
||
Give me a sense about what is connecting to existing knowledge
|
||
-OR-
|
||
Your "ah ha!" moments
|
||
-OR-
|
||
What is hanging off by itself, not connecting.
|
||
|
||
I’m definitely (not) biased here. My software engineering brain has one of those rotating police sirens going off. Why a VM? That’s super inefficient here. We have a low power computer, we’re not optimizing for cross-platform code compatibility, we’re not even using a standard architecture! So why are we using this? To me, this looks like a useless intermediary step that exists just to complicate things.
|
||
|
||
That being said, learning about a VM language is a different story. And that’s how I’m rationalizing this seemingly bad decision. If this VM exists to teach us about programming language design, fine. But that’s better left for CSCI 308.
|