You just need to be a bit careful about how you configure the hyperref package: it needs to know how it will be translated to pdf later on: with ghostscript's pdfwrite output device or dvipdfm, otherwise the link hotspot end up in screwey locations.
I recommend dvipdfm. Not obvious to find unless you're lookinf for it, but it does an admirable job.
It was a few months ago I fought with this, but I did succeed in generating and presenting a hyperlinked presentation. I used the hyperlinks for questions that I predicted would be asked but didn't fit into the narrative.
no one would suggest that tex is a well designed language by modern standard. But even so, being forced to work around its flaws and deficiencies will teach you why unhygenic macros are truly a PITA.
The amazing thing is that no-one has sat down and written a better front-end language than latex. I would love a higher-order functional langauge.
But no-one has. There may be a deep reason for it, or maybe latex is one of the first programs to achieve monopoly through popularity.
LaTeX does a really good job of getting stuff looking good. But it does so by disallowing you from micromanaging layout.
those huge oceans of whitespace are there because putting something there would end up with a bigger gap later on, or somen similar.
There are a few knobs you can twist to make tables and figures not end up on a float page:
1) combine two short tables into one larger table. This will still become a float, but at least look better. Similarly, I tend to wrap two single-column figures side-by-side in a two-column figure. This is easier for latex to lay out
2) increase pagefloatfraction (or somen similar). this is the threshold beyond which a figure is kicked off the page onto a float page of its own.
3) play with the badness of orphans and widows. this will influence how hard latex tries (by varying text tightness) to keep paragraphs from splitting across column breaks.
4) move the figure forward in the source. The earliest the figure can be layed out is where it is introduced. Moving it forward gives latex more room to play.
Ok. I know nothing about COBOL, so I can't discuss that. So I'll stick to XML.
Unless you are importing completely trivial, flat, records (in which case using xml seems like overkill), you need a nesting structure... let's say lists. Since you don't know the length of the list when writing your program, you need to dynamically allocate it. That sounds like a pointer. If you allocate it on the stack, read on.
So now you need to make sure that all uses of that pointer (ie, references from one item to another) are well formed, and don't go beyond the end of the list. if they do, and you're on the stack, Bad Things can happen. If it's on the heap, you'll probably just crash.
Of course, you can avoid this by validating the binary structure before using it. But then you're back to the parsing you wanted to avoid.
Additionally, this approach brings in endian ordering issues. I doubt the int representation in a struct is the same accross PPC, x86, and big iron. Likely COBOL mandates a byte ordering.
I'll hazard a guess that the "purposes it was designed for" for Cobol's records and XML are not the same. Notably, the latter is designed for cross-platform data representation and transport. Hence we assume it comes from untrusted sources.
Note that I have at no point said that binary representations are a bad thing. I just doubt very much my salary will be paid by using unvalidated input from untrusted sources. At least for very long.
However, I may go and write a binary-format parser generator, if such a thing doesn't already exist. I imagine it does, which is a shame: it would be fun figuring out how to represent the cross linked indecies in a flexible way. That way the validator can be built into the parser.
I like that idea. Let's map the input directly to a c struct. For complicated items containing lists with interrellationships, you just map it to an array of such structs. The items just store offsets, so you can just add that offset to the base pointer to get the referred item.
... or any other item in your address space.
This idea is perhaps the most braindead idea I have ever heard. Completely throw out security for a bit of efficiency?
Of course you could validate your data structure, but since it is no longer described by a language, YOU HAVE TO WRITE YOUR PARSER YOURSELF. At the bit level, no less. No automatic correctness guarantee, no performance enhancements.
Not only are you addressing the wrong problem (it has already been convincingly suggested that allocation overhead is the likely culprit), you've suggested perhaps the most insecure solution possible, and one whose secure implementation would likely be slower than what it is supposed to fix.
Latex is turing complete. It *is* a bitch and a half to program in, but you can do amazingly complex things behind the scenes. For example, I have a number of macros for laying out type derivation rules that lay out the rules differently depending on the sizes of the things laid out.
The amazing listings package will automagically fontify your listings for pretty presentation.
An experienced latexer doesn't write in latex, he writes in his own dialect of latex. Just like latex is just one dialect of Tex. (but you don't want to go there... 8 years and raw tex still scares me)
Lastly: latex also produces the. best. output. bar none. The automatic kerning and word layout is so good it is immediately clear who used latex and who used Word (bad comparison: word's output was horrible for a long time, and has only recently graduated to acceptable). Framemaker was the only package that came close, and even there, you can tell.
Re:This review needs a Disclaimer
on
The Big Kerplop
·
· Score: 4, Funny
2) Bones heal
3) Pain is Temporary
4) Glory lasts forever.
Google will tell you whoe uttered these four Lemmas of BMX/Skater wisdom.
*sigh* that's what you get for trying to be subtle. Look. The radio FM radio spectrum is from 88 to 108 MHz. Thus, anything cycling at those frequencies WILL give off em radiation.
You've heard of van-eyk phreaking, right? Same idea.
You need a license to transmit at all on many bands.
Hrm. That can't be right, because my PC was transmitting on FM radio bands just a few years ago (which would explain why 101.7 FNX started sucking right after I upgraded to a Duron from my old pentium). And I used to have this killer wireless mike that transmitted on commercial frequencies (imagine the fun to be had with a little sister...)
So maybe there is a threshold of a few milliwatts. anyways, you CANNOT reverse the stream and send DirectTV your homemade porn without someone throwing the book (of FCC regulations -- much heavier than the book of law) at you.
whatever happened to that blade company that was going for MIPS/M^3? They were pushing transmeta, IIRC, because it ran cool enough to be crammed really tightly together. I forget their name. Raq? Maybe it was rebel (the old netwinder guys).
The idea was that rack hosting companies whose main operating costs are cooling and real estate would prefer to pay a slight premium for a boat-load of blades that acted like a much larger room of "real" rack-mounts.
unless they're flying parallel to each other, delta v is going to be a bitch. blink and you missed it. Makes snapping clear pictures from a zooming low-orbit satellite seem easy..
Does anyone know how they manage to avoid motion blur? A 1 meter resolution, taken at 17K mph (~27K kph ~ 7.5k m/s), gives you on the order of 1/7000th second shutter speed. That's one HELL of a camera if it can do that.
At least the double opt in website was consistent with the write up: made no sense whatsoever. If I were a telemarketer, that would do very little to sway me either way.
Get yourself an audrey for the front end. Has an LCD, processor, touch screen. For about $70 on ebay. If you strip the audrey from its casings, you may be able to mod the backlight to get the lumens you need.
Then you can stream commands to whatever jukebox you have in the back to play the mp3s.
Intel is welcome to help improve GCC's x86 code, since I'm sure between GCC and MS-VisC++, they account for at least 90% of the non-embedded x86 instructions executed.
I suspect that embedded market tends to use whatever compiler comes with the development kit, and since cycles matter more there, that would likely be the horse's mouth.
'course, I'm making all this up as I go along. Anyone with knowledge care to comment?
You're applying rational arguments to a psychological study?
Don't get me wrong: I mean to riducule YOU, not the people in the study. Everyone knows and has accepted that people act in irrational ways. Arguing rationally about these results is a waste of time.
how DARE you link to my router for your home page? Stop it at once!
Andrew Morton is officially hired by Diego to work on linux. This I guess was the reason why they needed a decent kernel hacker.
cool. Of course, that's what I meant: not that no-one has done it, but that no-one has managed to unset latex, for all its warts.
I wonder tho, whether you need to give up on using latex packages, just because you target tex. Tex is a subset of latex, I thought.
Perhaps by front-end you meant Tex, rather than targeting the low-level routines that tex invokes (the ones with badness and overflow...)
To quote gallileo: none the less, I do.
You just need to be a bit careful about how you configure the hyperref package: it needs to know how it will be translated to pdf later on: with ghostscript's pdfwrite output device or dvipdfm, otherwise the link hotspot end up in screwey locations.
I recommend dvipdfm. Not obvious to find unless you're lookinf for it, but it does an admirable job.
It was a few months ago I fought with this, but I did succeed in generating and presenting a hyperlinked presentation. I used the hyperlinks for questions that I predicted would be asked but didn't fit into the narrative.
yes.
no one would suggest that tex is a well designed language by modern standard. But even so, being forced to work around its flaws and deficiencies will teach you why unhygenic macros are truly a PITA.
The amazing thing is that no-one has sat down and written a better front-end language than latex. I would love a higher-order functional langauge.
But no-one has. There may be a deep reason for it, or maybe latex is one of the first programs to achieve monopoly through popularity.
IIRC pdflatex hates eps file figures. At least it did a while back. So I get pdf via vanilla latex and dvipdfm.
It is hard because it's hard.
LaTeX does a really good job of getting stuff looking good. But it does so by disallowing you from micromanaging layout.
those huge oceans of whitespace are there because putting something there would end up with a bigger gap later on, or somen similar.
There are a few knobs you can twist to make tables and figures not end up on a float page:
1) combine two short tables into one larger table. This will still become a float, but at least look better. Similarly, I tend to wrap two single-column figures side-by-side in a two-column figure. This is easier for latex to lay out
2) increase pagefloatfraction (or somen similar). this is the threshold beyond which a figure is kicked off the page onto a float page of its own.
3) play with the badness of orphans and widows. this will influence how hard latex tries (by varying text tightness) to keep paragraphs from splitting across column breaks.
4) move the figure forward in the source. The earliest the figure can be layed out is where it is introduced. Moving it forward gives latex more room to play.
Yeah. like those.
So, then.
Why isn't RPC-gen used as a container format?
You've got me thinking, and I'm curious.
Ok. I know nothing about COBOL, so I can't discuss that. So I'll stick to XML.
Unless you are importing completely trivial, flat, records (in which case using xml seems like overkill), you need a nesting structure... let's say lists. Since you don't know the length of the list when writing your program, you need to dynamically allocate it. That sounds like a pointer. If you allocate it on the stack, read on.
So now you need to make sure that all uses of that pointer (ie, references from one item to another) are well formed, and don't go beyond the end of the list. if they do, and you're on the stack, Bad Things can happen. If it's on the heap, you'll probably just crash.
Of course, you can avoid this by validating the binary structure before using it. But then you're back to the parsing you wanted to avoid.
Additionally, this approach brings in endian ordering issues. I doubt the int representation in a struct is the same accross PPC, x86, and big iron. Likely COBOL mandates a byte ordering.
I'll hazard a guess that the "purposes it was designed for" for Cobol's records and XML are not the same. Notably, the latter is designed for cross-platform data representation and transport. Hence we assume it comes from untrusted sources.
Note that I have at no point said that binary representations are a bad thing. I just doubt very much my salary will be paid by using unvalidated input from untrusted sources. At least for very long.
However, I may go and write a binary-format parser generator, if such a thing doesn't already exist. I imagine it does, which is a shame: it would be fun figuring out how to represent the cross linked indecies in a flexible way. That way the validator can be built into the parser.
I take it you are unfamiliar with the buffer overflow problem.
SSH and encryption do nothing against attacks against the machine, only messages in transit.
another problem of wrong problem, wrong solution.
My request stands.
I like that idea. Let's map the input directly to a c struct. For complicated items containing lists with interrellationships, you just map it to an array of such structs. The items just store offsets, so you can just add that offset to the base pointer to get the referred item.
This idea is perhaps the most braindead idea I have ever heard. Completely throw out security for a bit of efficiency?
Of course you could validate your data structure, but since it is no longer described by a language, YOU HAVE TO WRITE YOUR PARSER YOURSELF. At the bit level, no less. No automatic correctness guarantee, no performance enhancements.
Not only are you addressing the wrong problem (it has already been convincingly suggested that allocation overhead is the likely culprit), you've suggested perhaps the most insecure solution possible, and one whose secure implementation would likely be slower than what it is supposed to fix.
Don't program anything I'd use. Please.
To amplify this:
Latex is turing complete. It *is* a bitch and a half to program in, but you can do amazingly complex things behind the scenes. For example, I have a number of macros for laying out type derivation rules that lay out the rules differently depending on the sizes of the things laid out.
The amazing listings package will automagically fontify your listings for pretty presentation.
An experienced latexer doesn't write in latex, he writes in his own dialect of latex. Just like latex is just one dialect of Tex. (but you don't want to go there... 8 years and raw tex still scares me)
Lastly: latex also produces the. best. output. bar none. The automatic kerning and word layout is so good it is immediately clear who used latex and who used Word (bad comparison: word's output was horrible for a long time, and has only recently graduated to acceptable). Framemaker was the only package that came close, and even there, you can tell.
2) Bones heal
3) Pain is Temporary
4) Glory lasts forever.
Google will tell you whoe uttered these four Lemmas of BMX/Skater wisdom.
true enough (sp?). The mic was good for a few meters, no more. Not even across the house.
but it wasn't funny...
*sigh* that's what you get for trying to be subtle. Look. The radio FM radio spectrum is from 88 to 108 MHz. Thus, anything cycling at those frequencies WILL give off em radiation.
You've heard of van-eyk phreaking, right? Same idea.
Now does that sound like a cool job, or what?
It's one of those industries I didn't realize there was a niche for.
You need a license to transmit at all on many bands.
Hrm. That can't be right, because my PC was transmitting on FM radio bands just a few years ago (which would explain why 101.7 FNX started sucking right after I upgraded to a Duron from my old pentium). And I used to have this killer wireless mike that transmitted on commercial frequencies (imagine the fun to be had with a little sister...)
So maybe there is a threshold of a few milliwatts. anyways, you CANNOT reverse the stream and send DirectTV your homemade porn without someone throwing the book (of FCC regulations -- much heavier than the book of law) at you.
whatever happened to that blade company that was going for MIPS/M^3? They were pushing transmeta, IIRC, because it ran cool enough to be crammed really tightly together. I forget their name. Raq? Maybe it was rebel (the old netwinder guys).
The idea was that rack hosting companies whose main operating costs are cooling and real estate would prefer to pay a slight premium for a boat-load of blades that acted like a much larger room of "real" rack-mounts.
It seemed like a decent idea, actually.
because it still isn't slashdotted...
unless they're flying parallel to each other, delta v is going to be a bitch. blink and you missed it. Makes snapping clear pictures from a zooming low-orbit satellite seem easy..
Does anyone know how they manage to avoid motion blur? A 1 meter resolution, taken at 17K mph (~27K kph ~ 7.5k m/s), gives you on the order of 1/7000th second shutter speed. That's one HELL of a camera if it can do that.
huh?
At least the double opt in website was consistent with the write up: made no sense whatsoever. If I were a telemarketer, that would do very little to sway me either way.
My head spins too.
ebay.
Get yourself an audrey for the front end. Has an LCD, processor, touch screen. For about $70 on ebay.
If you strip the audrey from its casings, you may be able to mod the backlight to get the lumens you need.
Then you can stream commands to whatever jukebox you have in the back to play the mp3s.
sooo...
Intel is welcome to help improve GCC's x86 code, since I'm sure between GCC and MS-VisC++, they account for at least 90% of the non-embedded x86 instructions executed.
I suspect that embedded market tends to use whatever compiler comes with the development kit, and since cycles matter more there, that would likely be the horse's mouth.
'course, I'm making all this up as I go along. Anyone with knowledge care to comment?
You're applying rational arguments to a psychological study?
Don't get me wrong: I mean to riducule YOU, not the people in the study. Everyone knows and has accepted that people act in irrational ways. Arguing rationally about these results is a waste of time.