Ada 95:修改字典程序的输出

2023-12-08

我找到了这本词典作者:William Whitaker 在互联网上,我喜欢它的解析能力。但输出不适合我。

问题(对我来说是挑战):

给定输入形式(例如“audiam”),程序将返回以下输出(纯文本):

audi.am              V      4 1 PRES ACTIVE  SUB 1 S    
audi.am              V      4 1 FUT  ACTIVE  IND 1 S    
audio, audire, audivi, auditus  V (4th)   [XXXAO]  
hear, listen, accept, agree with; obey; harken, pay attention; be able to hear;

但我只想收到以下文本输出(相同的输入:audiam):

audiam=audio, audire, audivi, auditus

That is:

InputWord=Dictionary_Forms

所以有些信息对我来说是不必要的。

如何通过修改 Ada 代码来改变该程序的输出?

我没有任何 Ada 知识,但我了解 Delphi/Pascal,所以很容易理解代码,不是吗?所以导致文本输出的部分似乎是TEXT_IO.PUT(...)声明,对吧?他们都被叫进来了列表包.adb所以这可能是要查看的源文件。

特别需要改变什么?

该程序的完整 Ada 95 源代码已提供在本页.

我希望你们中的一些人能够理解 Ada 95 代码。预先非常感谢您!

我的编译问题:

为了在 Windows 机器上使用,我下载了MinGW并尝试使用“MinGW Shell”编译源文件。但这是我的输入和 shell 的响应:

MinGW Shell reponse

使用最新的 Cygwin 版本编译:

当我使用最新版本的Cygwin编译程序时,没有错误消息:

enter image description here

甚至还会创建一个 .exe 文件。其大小为 1.6 MB(1,682,616 字节)。但当我打开它时,它立即关闭。出了什么问题?


威廉·惠特克的话是一个方便的工具。您也许可以找到一个version已经为您的平台构建。我没有更改代码,但您可以使用各种方式更改一些内容参数。甚至还举办过online。如果你有 Ada 编译器,我已经包含了最后一个Makefile我用了。它的抽象有点薄弱,但它包括编译程序和实用程序的基本步骤,以及构建字典的步骤。

TARG = words
ARGS = -O

$(TARG): *.ad[bs]
    gnatmake $(TARG) $(ARGS)

all: $(TARG)
    gnatmake makedict $(ARGS)
    gnatmake makeinfl $(ARGS)
    gnatmake makestem $(ARGS)
    gnatmake makeefil $(ARGS)
    @echo Please make the dicitionary
    @echo ./makedict DICTLINE.GEN
    @echo ./makestem STEMLIST.GEN
    @echo ./makeefil EWDSLIST.GEN
    @echo ./makeinfl INFLECTS.GEN

debug:
    gnatmake -g $(TARG)

clean:
    rm -f *.o *.ali b~* core

cleaner: clean
    rm -f *.s makedict makeinfl makestem makeefil

cleanest: cleaner
    rm -f $(TARG)

附录:一种方法是在 Ubuntu 10.04 上使用 gcc 4.4.3 并更新Makefile多于。为了方便起见,我使用了虚拟盒子托管 Linux 实例。



$ gcc --version
gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  

这是使用我第二喜欢的段落标题进行的快速测试卡图利·卡米纳.



$ ./words odi et amo
odi                  V      6 1 PRES ACTIVE  IMP 2 S    
odeo, odire, odivi(ii), -  V TRANS   [EXXCW]    Later
od.i                 V      4 1 PRES ACTIVE  IMP 2 S    
odio, odire, odivi, -  V (4th) TRANS   [FXXCF]    Medieval
hate; dislike; be disinclined/reluctant/adverse to; (usu. PREFDEF);
odi                  N      2 4 GEN S N                   Early   
odium, odi(i)  N (2nd) N   [XXXAO]  
hate/hatred/dislike/antipathy; odium, unpopularity; boredom/impatience;
hatred (manifested by/towards group), hostility; object of hate/odium;
od.i                 V      3 1 PERF ACTIVE  IND 1 S    
odi, odisse, osus  V (3rd) PERFDEF   [XXXBX]  
hate (PERF form, PRES force), dislike; be disinclined/reluctant/adverse to;

et                   CONJ                               
et  CONJ   [XXXAX]  
and, and even; also, even;  (et ... et = both ... and);

am.o                 V      1 1 PRES ACTIVE  IND 1 S    
amo, amare, amavi, amatus  V (1st)   [XXXAO]  
love, like; fall in love with; be fond of; have a tendency to;
  

附录:一旦运行起来,修改它的问题仍然存在。 Agrep for Put_Line\(显示 629 次点击;大部分都在line_stuff and list*。这就是我要开始的地方。当您学习 Ada 时,有一些很好的教程here.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ada 95:修改字典程序的输出 的相关文章

  • 在Python中将大文件(25k条目)加载到dict中很慢?

    我有一个大约有 25000 行的文件 它是 s19 格式的文件 每行就像 S214780010 00802000000010000000000A508CC78C 像这样的事情怎么样 我做了一个测试文件 只有一行S21478001000802
  • 如何随机打乱地图中的值?

    我有一个 std map 其中键和值均为整数 现在我想随机打乱地图 因此键随机指向不同的值 我尝试了 random shuffle 但它无法编译 请注意 我并没有尝试洗牌键 这对于地图来说没有意义 我正在尝试随机化这些值 我可以将这些值推入
  • 将带有两层分隔符的字符串转换为字典 - python

    给定一个字符串 s x t1 ny t2 nz t3 我想转换成字典 sdic x 1 y 2 z 3 我通过这样做让它工作 sdic dict tuple j split t for j in i for i in s split n F
  • Typescript 有序字典

    我需要存储相对大量的按索引排序的数据 类似于可编辑的聊天 按时间排序并随机访问进行编辑 项目数量相对较多 索引 操作的数量与 排序 操作的数量相似 我不会每次都阻止 搜索 或 排序 的计算 并且我会搜索更智能的集合 我试图找到有序字典集合
  • Java重写两个接口,方法名称冲突

    我正在实施Map
  • C++ 通过引用将映射传递给函数

    我怎样才能通过map by reference变成一个函数 Visual Studio 2010 给了我一个unresolved externals错误 目前 我有以下简化代码 void function1 map
  • 使用 ggplot 根据给定变量对状态着色

    我绘制了地图如下 我需要帮助添加一些额外的层 我知道有很多方法可以做到这一点 但作为 ggplot 的新手 我对此真的一无所知 任何帮助将不胜感激 谢谢 I have used the code shp state1 lt readShap
  • 使用 JSON 和字典在 Python 中处理错误

    我目前有一个 Python 2 7 脚本 可以抓取 Facebook 并从每个页面捕获一些 JSON 数据 JSON 数据包含个人信息 JSON 数据的示例如下 id 4 name Mark Zuckerberg first name Ma
  • 将 python 字典翻译为 C++

    我有包含以下代码的 python 代码 d d 0 0 0 d 1 2 1 d 2 1 2 d 2 3 3 d 3 2 4 for i j in d print d i j d j i 不幸的是 对于我的目的来说 循环遍历 python 中
  • 为文件中的每个单词创建字典并计算其后面的单词的频率

    我正在尝试解决一个难题 却迷失了方向 这就是我应该做的 INPUT file OUTPUT dictionary Return a dictionary whose keys are all the words in the file br
  • EXC_BAD_ACCESS 在使用 Swift 字典评估 NSExpression 后更新它时

    我正在使用字典来评估表达式 当表达式有变量并且字典实际上由 NSExpression 使用时 会发生一些事情 并且在尝试更新字典时我得到 EXC BAD ACCESS 这仅在 iPhone6 中调试时发生 而不是在模拟器而不是 iPhone
  • 在Python中将字符串转换为字典或列表?

    在Python中将此字符串转换为列表或字典 u f i r s t n a m e u j o h n u l a s t n a m e u s m i t h u a g e 2 0 u m o b
  • 查找字典中列表的最大值

    我有一个字典 每个键后面都有一个存储的列表 看起来像这样 dict with values u New York u New York u NY datetime datetime 2014 8 13 0 0 10 u New York u
  • 在Android上创建并显示室内地图

    我正在开发一个 Android 应用程序 我想显示一些建筑物的内部 室内 地图 但我不知道从哪里开始 我想创建一个自定义 kml 文件 如何创建它 哪个工具 并将其显示在片段中 我已经让它与外部地图 MapFragment 中的简单 Goo
  • Python:计算字典的重复值

    我有一本字典如下 dictA unit1 test1 alpha unit1 test2 beta unit2 test1 alpha unit2 test2 gamma unit3 test1 delta unit3 test2 gamm
  • 改变字典的哈希函数

    按照此question https stackoverflow com questions 37100390 towards understanding dictionaries 我们知道两个不同的字典 dict 1 and dict 2例
  • Erlang dict的时间复杂度

    我想知道 Erlang OTP 是否dict模块是作为哈希表实现的 在这种情况下它是否能提供这样的性能 平均情况 Search O 1 n k Insert O 1 Delete O 1 n k 最坏的情况下 Search O n Inse
  • 使用反射获取基类的受保护属性值

    I would like to know if it is possible to access the value of the ConfigurationId property which is located in the base
  • 如何在 C# 中对 csv 文件进行分组并从中创建嵌套字典?

    我有一个 csv 文件 我想用它制作一个嵌套字典 该文件如下所示 FilmMaker MovieTitle EndDate FunnyM F1 20191210 FunnyM F2 20191211 FunnyM F3 20191212 F
  • Swift 字典映射 - 闭包中的 init

    我有 Swift 字典 private var params String AnyObject 这包含查询项目 例如 lat 40 lon 100 我想将这本词典映射到NSURLQueryItem大批 我想让它 迅速 params map

随机推荐

  • 动态生成多个 from() Apache Camel RouteBuilder

    我使用的是camel core 2 24 1并且能够执行以下操作 from sources toArray new String 0 其中 sources 是我从配置设置中获取的 URI 列表 我正在尝试更新代码以使用 Camel 3 ca
  • 如何从 XML 反序列化 Java 对象?

    我确信这可能已经被详细讨论过或之前得到过回答 但是我需要更多关于适合我的情况的最佳方法的信息 Problem 我们有一些大型 XML 数据 从 100k 到 5MB 不等 需要将其膨胀为 Java 对象 问题是数据实际上根本不能很好地映射到
  • QSqlDatabase:如何避免“qt_sql_default_connection”仍在使用和重复连接相关警告?

    抱歉 如果这是一个微不足道的问题 但我一直在尝试构建一个使用的小型 uiQSQLITE作为数据库并使用QTableView以显示默认数据库文件的 4 列为例 我调试了各个方面的问题 改变了逻辑运算SQL并以更简单的方式重构构造函数 但错误仍
  • 解析分析不跟踪自定义事件[重复]

    这个问题在这里已经有答案了 我正在使用 Parse 来跟踪我的项目的一些自定义事件 在我的第一个版本中 我只是使用 PFAnalytics trackEvent Some event string This works 但后来我决定跟踪更多
  • 删除 C++ STL 中包含向量的动态分配对象

    我有课 class ChartLine protected vector
  • 将系统(文件)命令的输出存储为 C 中的字符串

    要获取文件的类型 我们可以执行命令 system file mime type b filename 输出显示在终端中 但无法使用该命令存储文件类型 char file type 40 system file mime type b fil
  • 可以使用自闭合 DIV 标签吗? [复制]

    这个问题在这里已经有答案了 可能的重复 自关闭标签在 HTML5 中有效吗 例如 div div 然后将使用 Javascript 来填充此 div 这是有效的 HTML 吗 不 HTML 4 x 没有任何自闭合标签的概念 它在 XHTML
  • 翻转滚动条 WPF

    你好 我正在构建一个显示从 0 到最大值的标尺的控件 0 值位于底部 最大值位于高于 0 的 y 值 最大值在我们滚动到它之前不可见 问题是 当0向下时 最大值向上 滚动条的0值向上 最大值向下 我希望滚动条能够翻转 我怎样才能做到这一点
  • 如何在 AngularFire 0.5.0 中从 .$on('loaded') 访问加载的数据

    我在 AngularFire 0 5 0 中使用 on 方法访问从 firebase 加载的数据时遇到问题 在回调中 当我注销范围的内容时 数据就在那里 但是当我尝试使用更深层次的数据时 我得到了undefined 也许我误解了您如何用这种
  • Bokeh 中的日期时间轴

    对于我的图 我想在散景中使用 日期时间 选项 如下所示 top figure width 900 height 500 x axis type datetime 我的 x 轴数据采用 datetime time 格式 x time date
  • Python Tkinter 可滚动框架类?

    我想做一个Tkinter class 基于答案在这里 这是一个Frame自动显示 隐藏Scrollbar根据需要围绕内容 我上面链接的答案非常适合我的需求 但需要注意的是 因为它不包含在class 它不可重复使用 我认为这会非常快速和简单
  • 在今天的特定小时和分钟创建 NSDate

    我怎样才能创建一个NSDate今天的日期和小时 分钟和秒分别为 5 0 和 0 IE 日期将为 07 02 2010 05 00 00 Gives us the current date NSCalendar gregorian NSCal
  • jplayer在一页中显示多个mp3文件链接

    我在页面中使用 jplayer 当单击链接时我想播放单击的链接 但是每次播放 test1 mp3 时 我该如何解决 代码如下 如果需要的话页面如下 http www dilyurdu com audio htm function liste
  • desc 附近的 SQL 语法错误 [重复]

    这个问题在这里已经有答案了 我得到的错误是 com mysql jdbc exceptions jdbc4 MySQLSyntaxErrorException 您的 SQL 语法有错误 检查与您的 MySQL 服务器版本相对应的手册 了解使
  • Codeigniter 中的选择框验证

    我是 Codeigniter 的新手 在选择框验证方面遇到一些问题 我想要在开始时默认选择值
  • 由于规范中的日期格式,gemspec 无效

    当我在 Gemfile 中包含我制作的 gem 时 感谢 Bundler 版本 1 0 12 然后我尝试像这样捆绑或 rake rake 我收到此错误消息 Invalid gemspec in Users zagzag rvm gems r
  • 顺利地将对象移动到目的地 Unity3D

    我一整天都在尝试从point A to point B顺利 所以我尝试了Lerp 朝着去 and 平滑阻尼但每次物体都会从A点消失并立即出现在B点 我尝试了在互联网上找到的所有解决方案 但得到了相同的结果 你能救我一命并帮我解决这个问题吗
  • 您的 Ruby 版本是 2.1.0,但您的 Gemfile 指定为 2.0.0

    在我的 Gemfile 中 我指定了 ruby 版本 2 0 0 ruby 2 0 0 但我的控制台告诉我我有 2 1 0dev ruby v ruby 2 1 0dev 2013 09 16 trunk 42951 x86 64 darw
  • 如何存储具有数十亿个节点和顶点的大型有向未加权图

    图的大小为数十亿个节点和数百亿个顶点 它将存储网页 URL 以及网页之间的链接 并将用于测试排名算法 任何语言都可以 但java是首选 到目前为止我找到的解决方案 neo4j 存储在排序的平面文件中 是的 我已经读过存储 访问有向图的最佳方
  • Ada 95:修改字典程序的输出

    我找到了这本词典作者 William Whitaker 在互联网上 我喜欢它的解析能力 但输出不适合我 问题 对我来说是挑战 给定输入形式 例如 audiam 程序将返回以下输出 纯文本 audi am V 4 1 PRES ACTIVE