Template talk:Location map skew
From Wikipedia, the free encyclopedia
This is the talk page for: Template:Location map skew.
Contents |
[edit] Created
21-Sep-2007: The template file for Template:Location_map_skew was created on 21-Sep-2007, based on the source code for Template:Location map many, expanded for several days to allow skewing of longitudes but also allow the original multiple markers/labels, beyond the one marker/label allowed by Template:Location_map. The development was very tedious, with hand-editing at 18 levels of nested code, due to a lack of a syntax-checker to find unbalanced parentheses and mismatched "{{...}}" expressions. -Wikid77 06:16, 21 September 2007 (UTC)
[edit] Concept of skewing
21-Sep-2007: The skewing of longitude is an approximation for placing markers/labels on a non-equirectangular map. Also, some maps have latitude lines that curve, but cannot be skewed (yet) by Template:Location_map_skew. Because the curvature of most latitude lines is minimal, the focus has been, instead, on longitude lines, which can be almost twice as close together near the top (as seen in maps of Sweden). Although the skewing formulas have only 10 variables, the work of coding those formulas in MediaWiki language ("{{#if: xx |then |else}}") is truly wretched, outside the use of automated syntax-checker tools. The basic formula has been a linear interpolation of the longitude, delta from map center, where the skewing of longitude increases with larger latitude numbers. The skewed result can re-align a rectangular-coordinate, off by a half-inch, to within a milimeter of the accurate map position, 20 times closer.
[edit] Tedious template coding
21-Sep-2007: The MediaWiki language ("{{#if: xx |then |else}}") is a heavily-nested expression-language, which could be helped by using automated syntax-checker tools. In recent years, templates did not allow internal variables, so each expression had to be recalculated for each reference, or else passed as a calculated expression into a customized sub-template which handled the calculated result as a single parameter. Although internal variables are very simple to implement in general language design, the MediaWiki language did not have them. Kids, don't do this. The handling of nested internal procedures/functions, along with local internal variables, is trivial to implement, even if limited to only one-level deep. Don't ever, ever, ever design a language that doesn't have internal procedures or local variables. (Also, don't ever design a command language that doesn't have macros that define a new command as a string of others.) Some people refer to templates of MediaWiki language as "esoteric" but actually "itsospastic" is a more accurate term. However, don't get angry, the world is full of compu-trash software in all directions. You don't have to dropout of college and become an ignorant billionaire to create trashy, backward software. Everyone is doing it, so don't get angry, get better technology. -Wikid77 06:16, 21 September 2007 (UTC)
[edit] Template resource limits
21-Sep-2007: The processing requirements for Template:Location_map_skew seem to push the limits of available resources in Wikipedia. It is a tedious template, of over 1060 lines; however, the processing of MediaWiki language ("{{#if: xx |then |else}}") seems to have a memory leak. While formatting an article, there is a limit to how many times templates can be used, since each usage subtracts from the total resources allowed for processing templates. Rather than release resources when a template is finished, Wikipedia (or MediaWiki) gunnysacks the prior resource usage (such as number of parameter names in use), subtracting from the total allowed for processing templates. Avoiding some earlier templates within an article might allow later templates to run without issue. Also, it might be possible to invoke a function to flush/release template resources to process more within an article. -Wikid77 06:16, 21 September 2007 (UTC)
[edit] Other issues
-
-
- [ Discuss other, unnamed issues here. -Wikid77 ]
-