C BSFN is Faster than NER BSFN

samiri85

Member
Hi,

Could any one please explain me the reason the faster execution of C BSFN as compared to NER??
 
If the NER and the C BSFN do pretty much the same thing the same way, then there probably isn't any appreciable difference in performance.

Having said that, C BSFNs give you the tools to solve a problem using different techniques and design patterns that can make a huge difference in performance. Additionally, C BSFNs allow you to write tighter more organized, manageable and maintainable and reusable code than an NER. And you get to debug the code you write not some mangled, virtually unreadable spaghetti code vomited out by the NER build process.
 
Depends on what you are trying? If you are trying to write a simple if condition or assignments. I see no difference. Some of the cases i can think C-code gives better performance are

1) Using of Switch condition: C will be lot quicker, NER goes with if, else condition
2) use of API's: you can not use API's directly from NER. but you achieve same with limited API's available using system functions. C gets larger scope around API use.
3) Cache function can be done with C- code. you need to call API's


And also at the end NER also converts to C code. It is just easier way of coding. If your function is too complex, then I recommend to go with C-BSFN

Thanks,
 
If the NER and the C BSFN do pretty much the same thing the same way, then there probably isn't any appreciable difference in performance.

... not some mangled, virtually unreadable spaghetti code vomited out by the NER build process.

How do you REALLY feel about NERs Boster? :cool:
 
How do you REALLY feel about NERs Boster? :cool:

LOL. If I have to read/debug spaghetti code I want it to be MY spaghetti code. IMO NERs are nice in theory, but in practice they start to break down. How would you like to be the developer at Oracle tasked with fixing a bug or making a mod to the AddressBook MBF or the customer master MBF?

They do have their place. I use them quite a bit as client only interpreted NERs when calling another application and I need to do some pre/post APPL interconnect logic that can be re-usable. In that situation I don't have to worry about debugging because there is no way to debug them even if I wanted to. :)
 
Samiri85,

It comes down to two things
- Bloat
- Syntax

NERs are filled with bloated code - the ER of the NER gets translated (or, mangled) into native C. This could cause 'many' lines of C code to be created, for something that could be completed in a couple statements within a C-Function.

That said, if a NER translated (mangled) the ER into a dozen hoops and gets the same results as a streamlined and 'syntax readable' C function, that bloat is going to cost you.

(db)
 
Back
Top