flat assembler
Message board for the users of flat assembler.
![]() Goto page Previous 1, 2, 3 Next |
Fasm Support for High-Level Constructs? | ||||||||||||||
|
||||||||||||||
Total Votes : 20 |
Author |
|
Tommy 29 Nov 2003, 13:16
In my opinion, FASM is FASM! I like it the way it is... Pure and simple, but though extremely powerful! Keep it up Tomasz!
![]() |
|||
![]() |
|
art_sands 29 Nov 2003, 13:30
I love FASM! But you are thinking only about yourself, isn't it? Only because you like it the way it is. If you want a revolution in assembly, FASM is THE tool to do it, and excellent support for potential users is the most fundamental requirement. I only said this because I wanted opinions and the another main reason was:
"I want people to shift from C/C++ and other languages to FASM and assembly." It's a tough ask, and probably overstretched to say so. But it becomes only more difficult if you don't let things evolve. So, this should not be taken as a destructive suggestion, but a constructive one. If you now have 10 people using your program, catering to the needs of a thousand may increase your user base enormously to ten thousand and then millions. Word of mouth has it's powers! The point you don't understand is YOU are free to choose to do what YOU want to. Even if constructs are supported, you choose whether you use them or not. As simple as that. Keep up the good work Privalov. Remember I will never force you to incorporate anything. You decide yourself, whether you want FASM to evolve quickly or slowly. YOUR CHOICE. Regards, Art |
|||
![]() |
|
silkodyssey 29 Nov 2003, 13:35
Tommy,
You're right. Fasm is what it is and we use it because we like what it is. There are a lot of assemblers out there and thats good because no single assembler is right for everyone. So if an assembler lacks a feature we want we may find it in another assembler. If we can't find it in another assembler and can't implement it with macros we would have to do with Randy did and create our own assembler ![]() Code: .if eax == 0 && edx == 1 .endif instead of Code: .if, eax, e , 0 .endif _________________ silkodyssey |
|||
![]() |
|
Tommy 29 Nov 2003, 13:37
I just shared my opinions...
![]() ![]() [edit]I wrote this while you were posting, silkodyssey... Thanks... I do agree with you... Extending FASM's macro system may solve our requests...?[/edit] Best regards, Tommy |
|||
![]() |
|
silkodyssey 29 Nov 2003, 13:42
I like your idea tommy but what I had in mind was using fasm as a starting point and extending it, with a new name of course. I don't know anything about compiler / assembler design so I don't know if it would be better to extend fasm or start from scratch. Anyway its a nice idea
![]() _________________ silkodyssey |
|||
![]() |
|
Tomasz Grysztar 29 Nov 2003, 13:51
silkodyssey: if you really would like to use such constructs, you should actually consider using some compiler with fasm as a back-end (or write your own one
![]() Also those arguments are the ones I had to deal with continuosly during the last three years of the fasm developement, and it always was hard to explain why it can't be done for the fasm. Well, this time I also fail, as I failed to finish the internals documentation - i really should finish it one day, to let you see on what I was concentrating all my time dedicated to the fasm's development. |
|||
![]() |
|
art_sands 29 Nov 2003, 14:00
If developing a new assembler would help, I'd have started long back. The problem with developing a new system is waste of effort. Do you know why people prefer C/C++. It saves development time. And time is the MOST precious thing in the world. You lose time, you lose life.
If you live up to be 81, you'll have spent 27 yrs sleeping! Calculate how much you've slept until now. ![]() Time is money, and time is everything. the problem with macros is that users will ask questions about non-functional code to the developers of the assembler! There will be a zillion user-customized versions and so many bugs that you'll spend more time debugging than being creative. Instead, if there is a single developer source, you can report bugs to one entity. So let the world contribute to FASM. Don't waste time on only debugging. Debugging MUST be done to learn assembly though. Instead, be creative, lure others into using FASM, and add more features to FASM itself. I don't want me or anybody to waste effort on redesigning and rewriting everything. Microsoft is already several years ahead of us. They had a 64-bit version of Windows when they released Windows NT. NASA used 64-bit technologies long time back. We are using old discarded stuff. Realize, where our revolution is. You don't want Billy G's prediction of assembly dying to come true, do you? I don't. Regards, Art |
|||
![]() |
|
silkodyssey 29 Nov 2003, 14:08
Privalov wrote:
I actually use HLA sometimes. It's great for console programs but not so much for windows programs though. If it were as fast as fasm I wouldn't have any problem. ![]() ![]() Privalov wrote:
I think I understand you now. The way fasm was designed makes it not feasible to implement these structures or it doesn't fit the purpose for which fasm was designed. Privalov wrote:
Hopefully you'll finish it one day. Anyway I like what you've done with fasm. Low level but with a powerful macro system. Any plans for making it even more powerful? ![]() _________________ silkodyssey |
|||
![]() |
|
Tomasz Grysztar 29 Nov 2003, 14:08
art_sands: I did not mean developing a new assembler. As the assembler fasm already does almost all it would ever need to (and the lacks it has are not the ones you've pointed to). I mean writing a additional compiler - that is a "preprocessor", as you might call it. If you don't want to use two separate programs, you could always link it with fasm into one executable - as you've got all the sources. And using fasm as a back-end really saves you a lots of work while making such compiler - during the multi-pass assembly it resolves all the labels for you, generates the shortest possible instruction codes, generates the relocations if needes, etc. etc.
|
|||
![]() |
|
Tomasz Grysztar 29 Nov 2003, 14:12
silkodyssey wrote: Hopefully you'll finish it one day. Anyway I like what you've done with fasm. Low level but with a powerful macro system. Any plans for making it even more powerful? Maybe gather in one place all the macro tricks that has been designed for fasm yet and then document them with detailed comments etc.? That would really help people in making their own macros to the specialized purposes of their own projects, and also making more general-use macros that could be made available as a kind of "standard macro library" for fasm. |
|||
![]() |
|
art_sands 29 Nov 2003, 14:19
Privalov, you're somewhat right. However, consider working in a team. I already said this about macros, but i'm saying it again. In a production code team, you CANNOT use your own nittygritty stuff anywhere you want to. You have to work according to design considerations and specifications. Flexibility in programming from one source is what makes a company or a team benefit real time.
FASM may be usable as a compiler backend, but if you want users to develop front-ends, there will be several and thus increasing code vulnerability. Instead, if all of them concentrate on one thing and one thing only, the quality of production code improves enormously. FASM is perhaps becoming the most powerful assembler ever to be made. We could write stuff with FASM as back-end, but it would still mean reinventing the wheel. And in case you're worried about HLL constructs, I don't use them as much. But beginners cannot live without it. If you want MORE people to use FASM, do what THEY would want. You are the service provider, they are the wish-makers. If you cannot grant wishes, they will surely turn to something else. Regards, Art |
|||
![]() |
|
silkodyssey 29 Nov 2003, 14:33
Privalov wrote:
Yes please do. I hate thinking that there's untapped power in the macro system. ![]() Privalov wrote:
The macros provided with fasm seem like a standard to me because I haven't seen too many fasm sources for windows programs that don't use these macros art_sands, Right now there are a lot of assemblers to choose from. Each with its weaknesses and strengths. Each assembler author designed his assembler with a purpose in mind. It seems like Privalov designed fasm with the intention of it being used as a compiler back end. This is fasm's purpose and I don't really think we need to change that. Where fasm falls short something else will fill that gap. What you want fasm to be already exists. Its called HLA. ![]() ![]() _________________ silkodyssey |
|||
![]() |
|
Tommy 29 Nov 2003, 14:34
Talking of 64-bit systems, Privalov: have you started the development of FASM64?
|
|||
![]() |
|
art_sands 29 Nov 2003, 16:17
I agree. I won't push it any further with logic. Privalov, you can provide us with a "standard" macro library until you decide to make some implementations. But keep in mind, I've got a feeling the number of people using other assemblers might exceed those using yours for some time. Time lost will never come back.
However, you haven't lost us. I still prefer FASM over MASM, but sometimes I simply cant resist it and write stuff in MASM. Yet, FASM is the best! I will never let your efforts go to waste. Cheers all and thanks for taking the time. Regards, Art |
|||
![]() |
|
fasm9 30 Nov 2003, 01:36
Glad, nice talk.
BTW, IMHO, low level doesn't mean systemmatical OR flexibility directly. Of course, at least, low level (self supply) is needed to do it, but still, not all. i am sure there is kingdom of 'systemmatical'. (if low level means everything, we don't need C# AND something that unknown, unexplained.) ... i hope that art_sands and admin have more conversation(a lot of). -- most of time also important, But, student(age:7~18) time is diamond. Dear student, never trust people, Fight For Your Time. Time is LIFE |
|||
![]() |
|
dickhead 30 Nov 2003, 11:35
me
im a nuB and i come from c, so i want if.else.if in tha compiler. i dont like macros. too bad i cannot vote a million times gudday fellas ![]() bla bla didyouknowthatmy...issolong? _________________ teach me or i'll dick ya. |
|||
![]() |
|
silkodyssey 30 Nov 2003, 11:41
dickhead wrote:
What do you have against macros? IMO macros are an important feature of an assembler. One of the reasons I like fasm is because of its powerful macro system and I am not too interested in GoAsm because I hear it lacks in the macros department ![]() _________________ silkodyssey |
|||
![]() |
|
dickhead 30 Nov 2003, 11:47
i dunno i read somewhere that macros are dangerous
so i started not liking them, and voilllaaaaa. here iam not liking them. before what mr. art said above about macros itis partly correctly when in team developers. ![]() bla bla _________________ teach me or i'll dick ya. |
|||
![]() |
|
dickhead 30 Nov 2003, 11:57
tha if marcos in macros with fasm i don't like anybody with a real if macros or somehin.
WHAT is IMO, IMHO and all this. I don't knwo. post in new thread in macroinstructions. ![]() ![]() ![]() blablabla _________________ teach me or i'll dick ya. |
|||
![]() |
|
Goto page Previous 1, 2, 3 Next < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2023, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.