Wiki Diff Roadmap40, revision #55 to tip

= Roadmap to 4.0 =

<<TOC heading=yes>>


== Outstanding tasks: ==
* MultiTaskingRedesign

=== Documentation

# Finish doc tool - [[jeremy]] (generation of alpha and category index are all that's left)
# **Post Beta** [[jeremy]] Document large constant lists found mainly in ##socket.e##.
# **Post Beta** //everyone// Audit documentation (spelling, clarity, parameter definitions, clarity, useful examples)

=== Libraries
# //[[DerekParnell]]// Complete the statistics library.
# //[[DerekParnell]]// Add SHA256, MD5 hash functions
# //everyone// Standard library code audit

=== Testing
# Ensure 100% code coverage for sequence built-ins.
## ReplaceTestCases

=== Optimization (All can be deferred to **Post Beta**)
# [[mattlewis]] Optimize forward reference resolution, especially for pathological cases where many unincluded globals are used.
# OptimizationIdeas
# Translated ##replace()##
# [[VariableScopes|De-initialize]] variables as soon as they go out of scope, //not// at the end of the routine.
# [[jeremy]] Create unit tests for new ##socket.e##

=== Miscellaneous

# //anyone?// Rework config file to define include directories and other command-line-like options.
# [[jeremy]] Update the windows installer for use on next alpha/beta.
# **Post Beta** [[jeremy]] Polish windows installer
# **Post Beta** [[mattlewis]] *nix packages for final distribution
# **Post Beta** [[mattlewis]] Optimize forward reference resolution, especially for pathological cases where many unincluded globals are used.
# **Post Beta** //anyone?// audit examples, update for 4.0 syntax, make examples work on non-DOS environments (those that can, for instance, learn.ex)

== Completed

# Document new keywords (loop/flow).
# There are outstanding issues with using gcc 4.3.0 that should be resolved before 4.0 is released (call c offsets)
# Make all internal functions accessible at all times via the ##eu## namespace
# Add a namespace keyword for library authors?
# Unqualified calls should give priority to built-in's
# Regular Expressions.
# Locale support requires different locale names depending on OS. This should be # resolved some how. - [[jbrown]]
# Add shell type command library (file copy, move, remove, make directory, remove directory)
# Cross platform translate - [[mattlewis]]
# Possibly add a statistics library. Being developed by Derek Parnell.
# Document ifdef - [[jeremy]]
# Document enum - [[jeremy]]
# Document documentation system - [[jeremy]] [[Documenting40]]
# Document defaulted parameters - [[CChris]]
# Remove hard coded paths from translator (e.g., to euphoria.h)
# ##t_flow.e## is commented out - [[CChris]]
# Add ##override## keyword - [[jeremy]]
# Unit testing now isolates each test file, to crashes can be tested. - [[jeremy]]
# Change installer to associate ##.ex## files with ##exwc## -- [[jeremy]]
# ##warning()## function that will allow library authors to issue warnings such as deprecated messages. - [[CChris]]
# Use ##break## instead of ##exit## for jumping out of ##switch## blocks - [[mattlewis]]
# Added ##-lint## command line switch to interpreter which shows all warnings regardless of any setting - [[jeremy]]
# Document new scoping: ##export##, ##export include## and any extra related to it.
# Add finer grain warning selection system - [[CChris]]
# Audit new functions for conformity of name and parameters. For instance, the find_any methods use to pass haystack then needle, however, this was backward from built in ##find()## method of needle then haystack. Other functions must be checked/fixed for this type of inconsistency. [[CChris]]
# Convert standard library to use default parameters and consolidate as many functions as makes sense (##match##, ##match_from##, etc...) - [[jeremy]]
## **Completed:** file.e, filesys.e, search.e. machine.e, map.e. math.e, os.e, regex.e, search.e, sequence.e, sort.e, stack.e get.e
## **Skipped:** database.e, dll.e, graphics.e, image.e, mouse.e, msgbox.e
# Fix ##t_locale.e## to not depend upon existence of ##en_US##
# Unittest ##override## keyword
# Document ##override## keyword and new routine resolution
# Finish document conversion (most everyone)
# ##include_path()## return a sequence of paths that include files are searched for in. - [[CChris]]
# Review all documentation. ##free()## was found to be omitted in the new docs, therefore, we must do an audit to make sure no others were omitted by mistake.
# ##export## symbols no longer can be propagated. The new ##public## is to be used instead.
# Add optional parameters to built-in functions such as ##find()##? Then deprecate ##find_from()##, etc...
# Fix warning system with choosing an internal function over a ##global##/##export## function - [[jeremy]]
# Use a specific keyword for the last branch of an ifdef statement, instead of curently "else".
# Document Cross platform translate - [[mattlewis]]
# Fix ##ed.ex## as shipped with Euphoria to work on DOS, Windows and Linux.
# Adjust all linux demos, as well as langwar, to the new layout of the standard library and to newer scoping rules.
# Rework internal sequence manipulation routines (remove, replace, head, tail, splice) [[derek]]
# Fix name mangling for exported symbols when building a shared/dynamic library with the translator [[mattlewis]]
# [[InliningRoutines|Inlining Routines]] - [[mattlewis]]
# Finish doc tool - [[jeremy]] (generation of alpha and category index are all that's left)
# [[jeremy]] Create unit tests for new ##socket.e##
# [[jeremy]] Update the windows installer for use on next alpha/beta.
# **Post Beta** [[jeremy]] Polish windows installer
# Rework config file to define include directories and other command-line-like options.
# Framework for automatically freeing resources. [[mattlewis]]
# Document large constant lists found mainly in ##socket.e##. [[jeremy]]





Search



Quick Links

User menu

Not signed in.

Misc Menu